25 за ответ. добрый день, прошу исправить мой код. его суть заключается в нахождении чисел армстронга в интервале от 100 до 9999 ,но глюк сего кода заключается в том что он находит числа только в интервале от 100 до 999. прошу . var a,b,c,d,a2: integer; begin for a: =100 to 9999 do begin d: =0; a2: =a; while (a2 < > 0) do begin b: = a2 mod 10; a2: = a2 div 10; c: = (b*b*b); d: = d+c; end; if (a = d) then writeln('число армстронга ==> ', a); end; end.
202
441
Ответы на вопрос:
Более изящное решение : ) проблема в строке c: = (b*b*b); ты ищешь сумму кубов, а для 4-значных чисел нужно искать сумму 4-х степеней. нужно проверять число а: если от 100 до 999, то выполняем c: = (b*b*b); а если от 1000 до 9999, то выполняем c: = (b*b*b*b); код ниже работает и выдаёт результат: число армстронга ==> 153 число армстронга ==> 370 число армстронга ==> 371 число армстронга ==> 407 число армстронга ==> 1634 число армстронга ==> 8208 число армстронга ==> 9474 **************************************************************** var a,b,c,d,a2: integer; begin for a: = 100 to 9999 do begin d: =0; a2: =a; while (a2 < > 0) do begin b: = a2 mod 10; a2: = a2 div 10; if a< 1000 then c: = (b*b*b) else c: = (b*b*b*b); d: = d+c; end; if (a = d) then writeln('число армстронга ==> ', a); end; end.
a = input()
b = a.split()
print(len(b))
Объяснение:
1) Создаём переменную A и пользователь вводит туда значение
2) Создаём переменную B которая разделяет текст в массив (Пример: Было "a b c" стало "a","b,"c")
3) Выводим len(b) (len от слова length - длинна/количество)
Результат:
>>> a b c
3
Буду рад если отметите данный ответ как лучший
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
Книжнаябабочка12.04.2022 10:25
-
ellaandharley3015.12.2022 04:04
-
serega22800208.03.2023 06:02
-
clydeofficial03.02.2020 12:04
-
кузя21609.11.2021 07:37
-
coolmaVIP30.08.2022 04:46
-
JHope2318.06.2020 15:56
-
Анамтасия72707.08.2021 15:49
-
Dinkaakissa2003.02.2020 19:00
-
voldemarsoybzwx06.04.2021 08:55
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.