Является ли число 6-значным и выполняется ли следующие условие? - Pascal ABC
Формулировка задачи:
Является ли число 6-значтным и выполняется ли следующие условие: сумма первой и четвертой цифр равна сумме второй и пятой и равна сумме третей и шестой
Решение задачи: «Является ли число 6-значным и выполняется ли следующие условие?»
textual
Листинг программы
const
VARANS: Array[Boolean] Of String[6] = (' не ', ' ');
var
n: LongInt;
i: Byte;
a: Array [0..2] Of 0..18;
begin
Write('n = '); ReadLn(n);
n := Abs(n);
if (n > 99999) and (n < 1000000)
then
begin
for i := 0 to 2 do
a[i] := 0;
for i := 0 to 5 do
begin
Inc(a[i mod 3], n mod 10);
n := n div 10;
end;
Write('Условие', VARANS[(a[0] = a[1]) And (a[0] = a[2])], 'выполнено.');
end
else
Write('Число не шестизначное.')
end.
Объяснение кода листинга программы
- В начале кода объявляются необходимые переменные: n, i, a.
- Затем происходит чтение значения переменной n с помощью функции ReadLn.
- Значение n преобразуется в абсолютное значение с помощью функции Abs.
- Далее проверяется условие: если n больше 99999 и меньше 1000000, то выполняется определенный блок кода.
- Внутри этого блока происходит инициализация массива a нулями.
- Затем происходит увеличение каждого элемента массива a на n mod 10.
- После этого значение n делится на 10.
- В конце проверяется, выполняется ли условие a[0] = a[1] And a[0] = a[2].
- Если условие выполняется, то выводится сообщение
Условие выполнено.. - Если условие не выполняется, то выводится сообщение
Число не шестизначное..