Составьте программу, печатающую на экране все счастливые билетики с шестизначным номером - Free Pascal
Формулировка задачи:
Составьте программу, печатающую на экране все счастливые билетики с шестизначным номером. (Билетик считается счастливым, если сумма первых трех цифр равна сумме последних цифр и при этом не равна 13).
Решение задачи: «Составьте программу, печатающую на экране все счастливые билетики с шестизначным номером»
textual
Листинг программы
{$mode objfpc}
uses sysutils;
function sum(n : integer) : Integer;
begin
result := 0;
while n <> 0 do
begin
result := result + (n mod 10);
n := n div 10;
end;
end;
var
left, right : integer;
s : integer;
begin
for left := 0 to 999 do
begin
s := sum(left);
if s <> 13 then
for right := 0 to 999 do
if s = sum(right) then writeln(Format('%.03d%.03d', [left, right]));
end;
readln;
end.
Объяснение кода листинга программы
- Программа на языке Free Pascal.
- Функция sum(n: Integer): Integer; вычисляет сумму цифр числа n.
- Переменные left, right: Integer; используются для перебора чисел в диапазоне от 0 до 999.
- Переменная s: Integer; используется для хранения результата вычисления функции sum.
- Переменная i: Integer; используется для перебора чисел в диапазоне от 0 до 999.
- Вычисляется сумма цифр числа left.
- Если s не равно 13, то выполняется цикл, который перебирает числа от 0 до 999 и проверяет совпадает ли сумма цифр с s.
- Если суммы совпадают, то выводится на экран число left и число right, разделенные двумя нулями.
- Программа завершается после нажатия клавиши Enter.