Помощь - Поиск - Пользователи - Календарь
Полная версия: Число Армстронга
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
-=BR@BUS=-
Надо найти все числа армстронга (пример: 153=1^3+5^3+3^3) в диапазоне N1 N2

Program arms;
var s:real;
f,k,p,n,n1,n2:Longint;
begin
 Writeln ('Введите диапазон');
 readln (n1,n2);
 for f:=n1 to n2 do begin
 s:=0;
 k:=f;
 n:=0;
 While k<>0 do begin
 k:=k div 10;
 n:=n+1
 end;
 k:=f;
 While k<>0 do begin
 p:=k mod 10;
 k:=k div 10;
 if p<>0 then
 s:=round(s+Exp(n*Ln(p)))
 end;
 if s=f then writeln(f)
 end;
 Writeln ('Done');
 readln;
 end.



программу нужно оптимизировать (решать через циклы), помогите кто знает...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.