Предмет: Информатика, автор: Ivan19074

Напишите программу, которая пишет все числа, не делящиеся на 10, у которых сумма цифр и число знаков равно заданному.

Пример:

Ввод: 4 4

Вывод:

1003

1012

1021

1102

1111

1201

2002

2011

2101

3001

Ответы

Автор ответа: pb1036
1

## uses School;

var (p, s) := ReadInteger2;                           // количество разрядов и сумма цифр

var smax := 9 * p;                                    // максимальная возможная сумма цифр

if (smax < s) or (s < 1) then

begin

 Print('Невозможно получить такую сумму цифр');

 exit

end;

if p = 1 then                                         // если одноразрядное число

begin

 Print(s);

 exit

end;

for var n := Trunc(10 ** (p - 1)) to Trunc(10 ** p - 1) do

 if (n mod 10 <> 0) and (n.Digits.Sum = s) then Println(n);

Приложения:

pb1036: С каким вопросом?
pb1036: А причем тут геометрия?
pb1036: А с чего Вы решили, что я решаю задания по геометрии?
pb1036: Я программист, а не школьник и занимаюсь только программами.
Похожие вопросы
Предмет: Биология, автор: zalesskaaalena536