В
Все
Х
Химия
В
Видео-ответы
А
Алгебра
Г
Геометрия
О
ОБЖ
Д
Другие предметы
У
Українська література
Р
Русский язык
Б
Беларуская мова
У
Українська мова
Э
Экономика
Ф
Физика
М
Математика
Ф
Французский язык
Г
География
И
Информатика
М
МХК
О
Окружающий мир
П
Психология
Н
Немецкий язык
О
Обществознание
П
Право
И
История
М
Музыка
Л
Литература
Қ
Қазақ тiлi
Б
Биология
А
Английский язык
valera242
valera242
07.06.2022 13:41 •  Информатика

Учительница начальных классов мария александровна готовит примеры по для своих учеников. ей надо приготовить много примеров, и она осваивает информационные технологии, а именно, функцию random. при этой функции она случайно выбирает 2 числа в интервале от 0 до 1000 включительно иодну из четырёх арифметических операций : сложение, вычитание, умножение, деление. но возникло одно затруднение - её дети уже знают, что такое ноль и умеют с ним работать, но пока не ни отрицательных, ни дробных чисел, поэтому, некоторые примеры могут показать я некорректными. напишите программу, которая определит, является ли пример корректными и найдите ответ к этому примеру.

на вход поступают 2 числа и символ арифметической операции. каждое число и символ записаны в отдельной строке. числа принадлежат интервал от 0 до 1000 включительно. возможно один из 4 символов операций: (+, -, *, /).

если пример корректен, то вывести в первой строке слово yes, а во второй - ответ к примеру. если пример некорректен, то вывести только слово no. обращайте внимание на регистр, например, вывод no no будет расцениваться как ошибка.

Ответ:
впнекккккк
впнекккккк
09.10.2020 04:53

const

 AOper: array [0..3] of string = ('+', '-', '*', '/');

var

 a, b, Oper: Integer;

 r: Real;

begin

 Randomize;    // инициализация датчика случайных чисел

 a := Random (1001);

 b := Random (1001);

 Oper := Random (4);

 case Oper of

 0: r := a + b;

 1: r := a - b;

 2: r := a * b;

 3:if b <> 0 then begin

     r := a / b;

   end else begin

     WriteLn ('Произошла ошибка при делении на ноль');

     Exit;

   end

 else r := -1;

 end;

 WriteLn (a);

 WriteLn (b);

 WriteLn (Aoper [Oper]);

 if (r >= 0) and (r - Trunc (r) = 0) then begin   // если в результате получилось положительное целое число

   WriteLn ('yes');

   WriteLn (r :6 :0);

 end else

   WriteLn (' no');

 ReadLn;

end.

Объяснение:

r - Trunc (r) // это выделение дробной части числа

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?