program raf105;
var abc,ab,bc:integer;
begin
write('Введите трёхзначное число: ');
readln(abc);
ab:= abc mod 100;
bc:= abc div 10;
if ab = bc
then writeln('Число состоит из одинаковых цифр')
else writeln('Число не состоит из одинаковых цифр');
end.
ОбъяснениеДля выполнения задачи достаточно найти первые 2 цифры и последние 2 цифры если они равны, то число состоит из одинаковых цифр
abc mod 100 Убирает все сотни из числа.
Например было число 123, стало 23.
482 стало 82
abc div 10 Считает сколько в числе целых десяток, но не считает остаток.
Например было число 123, стало 12
482 стало 48
Сравнивание 2 первых и 2 последних цифр
253 25 и 53 не равны, значит число не состоит из одинаковых цифр
121 12 и 21 не равны, значит число не состоит из одинаковых цифр
111 11 и 11 равны, значит число состоит из одинаковых цифр
оператор присваивания :=
оператор ввода read(x1,x2,...,xn) или readln(x1,x2,...,xn)
оператор вывода write(x1,x2,...,xn) или writeln(x1,x2,...,xn)
условный оператор if условие then оператор 1 else оператор 2
оператор варианта case управляющая переменная of
набор значений1: оператор1;
набор значений2: оператор2;
...
набор значенийn: операторN
else
альтернативный оператор
end;
оператор цикла с предусловиями while ... do
оператор цикла с постусловием repeat ... until
оператор цикла for ... do
оператор break осуществляет немедленный выход из циклов repeat, while, for.
оператор continue начинает новую итерацию цикла, даже если предыдущая не была завершина.
оператор exit осуществляет выход из подпрограммы.
оператор halt прекращает выполнение программы и возвращает код завершения в операционную систему.