Дан ряд четырехзначных натуральных чисел. Из него вычеркивают числа, в которых сумма двух первых цифр равна сумме двух последних. Составить алгоритм и описать его на Паскале, позволяющий по заданному номеру N вывести соответствующее ему число в новой последовательности.
Инициализируем переменную counter = 0 и переменную number = 1000.
Пока counter < N, выполняем следующие шаги:
2.1. Увеличиваем number на 1. 2.2. Вычисляем сумму первых двух цифр числа (sum1) и сумму последних двух цифр числа (sum2). 2.3. Если sum1 = sum2, увеличиваем counter на 1.
Выводим число number.
Пример алгоритма на Паскале:
program FindNumber; var N, counter, number, sum1, sum2, num: integer; begin counter := 0; number := 1000; write('Введите номер N: '); readln(N); while counter < N do begin number := number + 1; num := number; sum1 := (num div 1000) + ((num div 100) mod 10); sum2 := ((num div 10) mod 100) div 10 + (num mod 10); if sum1 = sum2 then begin counter := counter + 1; end; end; writeln('Число на позиции ', N, ' в новой последовательности: ', number); end.
Алгоритм:
Инициализируем переменную counter = 0 и переменную number = 1000.
Пока counter < N, выполняем следующие шаги:
2.1. Увеличиваем number на 1.
2.2. Вычисляем сумму первых двух цифр числа (sum1) и сумму последних двух цифр числа (sum2).
2.3. Если sum1 = sum2, увеличиваем counter на 1.
Выводим число number.
Пример алгоритма на Паскале:
program FindNumber;var
N, counter, number, sum1, sum2, num: integer;
begin
counter := 0;
number := 1000;
write('Введите номер N: ');
readln(N);
while counter < N do
begin
number := number + 1;
num := number;
sum1 := (num div 1000) + ((num div 100) mod 10);
sum2 := ((num div 10) mod 100) div 10 + (num mod 10);
if sum1 = sum2 then
begin
counter := counter + 1;
end;
end;
writeln('Число на позиции ', N, ' в новой последовательности: ', number);
end.