
Вопрос задан 24.01.2019 в 22:55.
Предмет Информатика.
Спрашивает Султанова Регина.
Паскаль! Натуральное число называется числом Армстронга, если сумма цифр числа, возведенных в K -ю
степень (где K – количество цифр в числе) равна самому числу. Например, 153 = 1^ 3 + 5^ 3 + 3^ 3 . Напишите программу, которая находит все числа Армстронга на отрезке [ a , b ] . Входные данные Входная строка содержит два натуральных числа – значения a и b , разделённых пробелами. Гарантируется, что a ≤ b . Выходные данные Программа должна вывести в одну строчку все числа Армстронга на отрезке [ a , b ] , разделив их пробелами. Если таких чисел нет, программа должна вывести число -1. У меня программа написана, но она просто выводит все числа Армстронга, помогите учесть промежуток от a до b и если таких чисел нет то вывести -1 var i,l,k,a,b,c,s,e,g,f,x,h,j:integer; begin for i:=100 to 9999 do begin l:=i; while l<>0 do begin l:=l div 10; k:=k+1; end; if k=3 then begin a:=i mod 10; b:=i div 100; c:=i div 10 mod 10; s:=a*a*a+b*b*b+c*c*c; if i=s then write(i,' '); end else begin e:=i mod 10; g:=i div 10 mod 10; f:=i div 100 mod 10; x:=i div 1000; h:=f*f*f*f+g*g*g*g+e*e*e*e+x*x*x*x; if i=h then write(i,' '); end; k:=0; end; end.

Ответы на вопрос

Отвечает Суфьянов Азим.
Program Project1;
var
a,b: integer;
i,j,k,
ci,
si,mi,
errkod: integer;
sti: string;
flag: Boolean;
begin
Readln(a,b);
flag:=false;
for i:=a to b do
begin
str(i, sti);
si:=0;
for j:=1 to Length(sti) do
begin
val(sti[j],mi,errkod);
ci:=1;
for k:=1 to Length(sti) do
ci:=ci*mi;
si:=si+ci;
end;
if si=i then
begin
write(si,' ');
flag:=true
end;
end;
if not flag then write(-1);
Readln;
end.
var
a,b: integer;
i,j,k,
ci,
si,mi,
errkod: integer;
sti: string;
flag: Boolean;
begin
Readln(a,b);
flag:=false;
for i:=a to b do
begin
str(i, sti);
si:=0;
for j:=1 to Length(sti) do
begin
val(sti[j],mi,errkod);
ci:=1;
for k:=1 to Length(sti) do
ci:=ci*mi;
si:=si+ci;
end;
if si=i then
begin
write(si,' ');
flag:=true
end;
end;
if not flag then write(-1);
Readln;
end.


Топ вопросов за вчера в категории Информатика

Информатика 562

Информатика 404

Информатика 31

Информатика 76

Информатика 16

Информатика 41

Информатика 31
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili