Если второе число равно первому и оба нечетные, то вывести второе число - PascalABC.NET
Формулировка задачи:
Написать программу, которая требует ввести первое и второе число оба целые, больше нуля, далее если второе число больше первого программа выдает ошибку и просит ввести заново, если второе число меньше первого и нечетное программа выводит его, если второе число меньше первого четное программа выводит второе число плюс 1. Если второе число равно первому и оба нечетные программа выводит второе число, если второе равно первому и оба четный программа выводит второе число минус 1
Решение задачи: «Если второе число равно первому и оба нечетные, то вывести второе число»
textual
Листинг программы
var
a, b: integer;
begin
write('Введите два ЦЕЛЫХ числа, которые БОЛЬШЕ нуля: ');
readln(a, b);
if b > a then writeln('ОШИБКА!!! ОШИБКА!!! Пожалуйста, подумайте и введите числа заново!!!');
if (b < a) and (b mod 2 <> 0) then writeln(b);
if (b < a) and (b mod 2 = 0) then writeln(b + 1);
if (b = a) and (b mod 2 <> 0) and (a mod 2 <> 0) then writeln(b);
if (b = a) and (b mod 2 = 0) and (a mod 2 = 0) then writeln(b - 1);
end.
Объяснение кода листинга программы
- Объявлены две переменные a и b типа integer.
- Выводится сообщение с просьбой ввести два целых числа больше нуля.
- С помощью функции readln введенные числа сохраняются в переменных a и b.
- Если второе число больше первого, выводится сообщение об ошибке и просят ввести числа заново.
- Если второе число меньше первого и нечетное, выводится второе число.
- Если второе число меньше первого и четное, выводится второе число уменьшенное на единицу.
- Если второе число равно первому и нечетное, выводится второе число.
- Если второе число равно первому и четное, выводится второе число уменьшенное на единицу.