Вопрос задан 20.06.2023 в 08:37. Предмет Информатика. Спрашивает Сентялёва Валерия.

В линейном массиве найдите и выведите все числа Армстронга. Укажите сколько чисел вывели. Pascal

ABC ​
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Селяков Матвей.

Ответ:

Pascal ABC

Объяснение:

function Armstrong(isarm: longint): boolean;

var m, p, s: integer;

   a, b: array[1..100] of integer;

 begin

   s := 0;

   m := isarm;

   p := 0;

   while m <> 0 do begin

     inc(p);

     a[p] := m mod 10;

     m := m div 10

   end;

   for var i := 1 to p do begin

     b[i] := 1;

     for var j := 1 to p do

       b[i] *= a[i];

       s += b[i];

    end;

   if s = isarm then Armstrong := true else Armstrong := false;

 end;

var kol: integer;

begin

 WriteLn('Введите размер массива: '); var n := ReadInteger;

 WriteLn('Введите элементы массива по одному: '); var a := ReadArrInteger(n);

 WriteLn('Числа Армстронга: ');

 for var i := 0 to n - 1 do

   if Armstrong(a[i]) then begin

     Write(a[i], ', '); inc(kol);

   end;

 WriteLn();

 WriteLn('Количество чисел Армстронга в массиве равно ', kol);

end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

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

Для поиска чисел Армстронга в линейном массиве вам нужно:

1. Сначала определить, какое максимальное число в массиве может быть числом Армстронга. Например, если у вас есть массив чисел с тремя цифрами, то максимальное число будет 999.

2. Пройти по всем числам от 1 до максимального числа и проверять, является ли каждое из них числом Армстронга.

3. Если число является числом Армстронга, выведите его.

Пример на Pascal ABC:

```pascal program ArmstrongNumbers;

function IsArmstrongNumber(num: integer): boolean; var originalNum, remainder, result: integer; n: integer; begin originalNum := num; result := 0; n := Trunc(Log10(num)) + 1;

while originalNum <> 0 do begin remainder := originalNum mod 10; result := result + Round(Power(remainder, n)); originalNum := originalNum div 10; end;

IsArmstrongNumber := result = num; end;

var maxNumber, i, count: integer;

begin // Указываете максимальное число в массиве maxNumber := 1000; // Например, если массив чисел трехзначный

count := 0;

for i := 1 to maxNumber do begin if IsArmstrongNumber(i) then begin writeln(i); Inc(count); end; end;

writeln('Всего чисел Армстронга: ', count); end. ```

Этот код проверяет все числа от 1 до 1000 и выводит числа Армстронга, а затем выводит общее количество найденных чисел Армстронга. Вы можете изменить `maxNumber` в соответствии с вашими требованиями.

0 0

Похожие вопросы

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

Последние заданные вопросы в категории Информатика

Задать вопрос