Предмет: Информатика, автор: mvnovikova05

Требовалось написать программу, которая определяет, имеется ли среди введенных с клавиатуры положительных целых чисел а и Ь хотя бы одно четное. Была написана следующая программа: var a, b: integer; begin readln(a, b); a := a mod 2; if a > 0 then b := b mod 2; if b > 0 then writeln ('четных чисел нет') else writeln ('четное число есть'); end. Известно, что программа написана с ошибками. а) приведите пример таких чисел а, b, при которых программа неверно решает поставленную задачу;

Ответы

Автор ответа: valgrisa
1

Ответ:

а) пример чисел, при которых программа неверно решает поставленную задач:

a = 2
b = 4

или

a = 4
b = 3

Объяснение:

условие составлено таким образом, что если в первую переменную a введено число чётное, то чётность второго числа не находится, следовательно переменная b всегда остаётся больше 0 (вводим положительные числа) и происходит вывод на экран сообщения "четных чисел нет"

пример:

a = 2
b = 4

a = a mod 2 = 2 mod 2 = 0

если a > 0

то b = b mod 2 (условие ложное: 0 не больше 0, поэтому действие b = b mod 2 не выполняется, b = 4)

если b > 0

то вывод на экран "четных чисел нет" (условие истинное: 4 больше 0, поэтому действие вывод на экран "четных чисел нет" выполняется)

иначе вывод на экран "четное число есть" (условие истинное: 4 больше 0, поэтому действие вывод на экран "четное число есть" не выполняется)

Похожие вопросы
Предмет: Окружающий мир, автор: незнакомец1112
Предмет: Физика, автор: captn3mo