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

Числа армстронга. натуральное число называется числом арм., если сумма цифр числа, возведенных в n-ую степень, где n- кол-во цифр в числе, равна самому себе ( 153=1^3+5^3+3^3). найдите все трехзначные и четырехзначные числа арм. (pascal)

Ответ:
azim20071
azim20071
06.10.2020 22:10
// PascalABC.NET 3.3, сборка 1542 от 05.10.2017
// Внимание! Если программа не работает, обновите версию!

function IsArmstrong(n:integer):boolean;
// Является ли n числом Армстронга?
begin
  var a:=n.ToString.Select(c->c.ToDigit).ToArray;
  Result := n=(a.Select(d->Round(Power(d,a.Length))).Sum);
end;

begin
  Range(100,9999).Where(i->IsArmstrong(i)).Println
end.

Результат
153 370 371 407 1634 8208 9474
0,0(0 оценок)
Ответ:
batovvano
batovvano
06.10.2020 22:10
Var a,a_2,n,j: integer;
var  i: array [0..10] of real;
var sum: real;
begin
write('Числа Амстронга: ');
for a:=100 to 9999 do
begin
n:=0;
sum:=0;
a_2:=a;
while a_2<>0 do
begin
i[n]:=a_2 mod 10;
n+=1;
a_2:=a_2 div 10;
end;
for j:=0 to n-1 do
sum:=power(i[j],n)+sum;
if (sum = a) then
write(a,' ');
end;
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?