Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

ПОЖАЛУЙСТА, ПОМОГИТЕ, С ЭТОЙ ЗАДАЧЕЙ. ПИТОН.

Абра Кадабра Ученик (73), закрыт 3 года назад
Задача 7. Наибольшая сумма цифр
Вводится N чисел. Среди натуральных чисел, которые были введены, найдите наибольшее по сумме цифр. Выведите на экран это число и сумму его цифр.
Лучший ответ
Молот Шотландцев Высший разум (301444) 3 года назад
Абра КадабраУченик (73) 3 года назад
Спасибо вам большое.
Молот Шотландцев Высший разум (301444) Пожалуйста, но дополню полным решением, айн момент
Иван ИвановУченик (153) 4 месяца назад
ne pabotaet
Остальные ответы
Victor Surozhtsev Просветленный (35616) 3 года назад
#Для массива натуральных чисел, в котором может быть какое угодно количество элементов с максимальной суммой цифр:
def f(n): return sum([int(j) for j in str(n)])
a=[int(x) for x in input('>> ').split() ]
b,max=[],0
for x in a:
~~fn=f(n)
~~if fn>max: max=fn; b=[fn]
~~elif fn==max: b.append(fn)
print(*b)
#Выведутся все необходимые элементы, даже повторяющиеся! А если вводятся необязательно натуральные целые, то в конце генератора ввода надо будет поставить if int(x)>0
Ришат Знаток (357) 2 года назад
seqNum = int(input('Введите количество чисел: '))
max_m = 0
max_sum =0
summ = 0
for i in range(seqNum):
print('Введите число: ', end = ' ')
number = int(input())
this_num = number
while number > 0:
summ += number %10
number //= 10
if summ > max_sum:
max_sum = summ
max_num = this_num
summ = 0
print('Число',max_num,'имеет максимальную сумму цифр:', max_sum)
klianikУченик (186) 2 года назад
Скажите для чего задана переменная max_m = 0 ?
klianik, Это очевидно лишняя переменная. В ней нет никакой необходимости.
klianikУченик (186) 2 года назад
и при выполнении данного кода, почему-то всегда последнее введённое число выводится на экран как наибольшее число...
klianik, Обнуление счётчика должно происходить в блоке цикла while. Судя по всему вы не правильно расставили отступы.
Валя Карачёва Знаток (273) 2 года назад
total_number = int(input("Введите кол-во цифр: "))
sum_rem = 0
amount = 0
this_number = 0
this_number_two = 0
for num in range (1, total_number + 1) :
~~print("Введите", num, "число")
~~number = int(input())
~~this_number = number
~~while number > 0 :
~~ ~~sum_rem += number % 10
~~~~number //= 10
~~if sum_rem > amount :
~~~~amount = sum_rem
~~~~this_number_two = this_number
~~~~sum_rem = 0
~~else:
~~~~sum_rem = 0
print("Наибольшее по сумме цифр число", this_number_two, 'сумма', amount )
Давид АгаевУченик (101) 1 месяц назад
неверное решение задачи
Константин Андреевич Знаток (349) 5 месяцев назад
 n = int(input('Введите количество чисел: ')) 
big = 0
summ = 0

for i in range (n):
numbers = int(input('Ввелите число: '))
while numbers > big:
big = numbers
summ = (big // 10) + (big %10)
print('Самое большое число:', big, ', а сумма цифр:', summ)
Манка Ученик (134) 4 месяца назад
при таких вводных не работет
Похожие вопросы