Условие задачи : Написать программу, которая печатает TRUE или FALSE в зависимости от того, выполняются или нет указанные условия. Определить, являются ли все цифры пятизначного числа четными.
(Язык Pascal)
Сложность: легкая.
Решение задачи :
Для начала продумаем наше решение. Тут всё супер просто, разобьём число на пять цифр и проверим все ли они четные.
Для того чтобы решить задачу нам понадобятся следующие переменные:
1. Переменная number — для нашего числа, которое мы будем разбивать на цифры.
2. Переменные n1, n2, n3, n4, n5 — для нашим цифр.
3. Переменная res — для результата True или False
Начнем мы с каркаса нашей программы :
var
number, n1, n2, n3, n4, n5 : integer; // объявляем
res :boolean; // переменные
begin
write('Введите пятизначное число : ');readln(number); // просим пользователя ввести число
readln; // чтобы программа не закрывалась
end.
Тут мы объявили все переменные и попросили пользователя ввести число. Дальше нам надо разбить число на цифры делать это мы будем с помощью операций mod и div.
Если вы не понимаете как они работают ОБЯЗАТЕЛЬНО читайте про них (тут).
// допустим есть число 13578
n1 := number div 10000; // будет цифра 1
n2 := number div 1000 mod 10; // будет цифра 3
n3 := number div 100 mod 10; // будет цифра 5
n4 := number div 10 mod 10; // будет цифра 7
n5 := number mod 10; // будет цифра 8
Ну а теперь надо проверить все ли цифры у нас четные, чтобы определить четное число или нет нужно воспользоваться операцией mod, которая ищет остаток от деления, подробнее можете прочитать (тут)
Пишем :
res := ((n1 mod 2 = 0) and (n2 mod 2 = 0) and (n3 mod 2 = 0) and (n4 mod 2 = 0) and (n5 mod 2 = 0)); // проверяем все ли цифры четные
Т.е. у нас будет ответ True, если все цифры четные.
Всё решение задачи Pascal :
var
number, n1, n2, n3, n4, n5 : integer; // объявляем
res :boolean; // переменные
begin
write('Введите пятизначное число : ');readln(number); // просим пользователя ввести число
// допустим есть число 13578
n1 := number div 10000; // будет цифра 1
n2 := number div 1000 mod 10; // будет цифра 3
n3 := number div 100 mod 10; // будет цифра 5
n4 := number div 10 mod 10; // будет цифра 7
n5 := number mod 10; // будет цифра 8
res := ((n1 mod 2 = 0) and (n2 mod 2 = 0) and (n3 mod 2 = 0) and (n4 mod 2 = 0) and (n5 mod 2 = 0)); // проверяем все ли цифры четные
writeln(res); // выводим результат
readln; // чтобы программа не закрывалась
end.
