Число Армстронга — это такое натуральное число, которое равно сумме своих цифр, возведённых в степень, равную количеству его цифр. Найти все такие числа от 1 до n.
Решение:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | program functions_7; uses crt; var n, i, y: integer; function Armstrong(ai: integer): integer; var j, a, b, c, f, d: integer; begin a:=0; b:=0; f:=ai; d:=ai; while ai>0 do begin ai:=ai div 10; b:=b+1; end; ai:=f; f:=0; while ai>0 do begin a:=ai mod 10; ai:=ai div 10; c:=a; for j:=2 to b do a:=a*c; f:=f+a; end; if f=d then Armstrong:=f else Armstrong:=0; end; begin clrscr; write(‘N > ‘); read(n); writeln(‘Числа Армстронга:’); for i:=1 to n do begin y:=Armstrong(i); if y<>0 then write(y, ‘ ‘); end; readkey; end. |
Я уже 3 года торгую фьючерсами на Bybit и приглашаю тебя присоединиться и получить до $30 000 бонусами плюс скидки на комиссии:
Зарегистрироваться на Bybit
Чем больше депозит – тем больше бонусов. Также моим рефералам доступны торговые боты для трейдинга по самым выгодным тарифам. 
