Вообщем мне нужно найти наилучший делитель: Код: n = int(input()) t = [] for i in...

+634 голосов
2.8m просмотров

Вообщем мне нужно найти наилучший делитель: Код: n = int(input()) t = [] for i in range(1, n+1): if n % i == 0: i = str(i) t += i print(t) print(max(t)) Если ввести 239 то выйдет ['1', '2', '3', '9'] 9 Хотя должно вывести 239 Как можно изменить код ?


Информатика Начинающий (335 баллов)
оставил комментарий БОГ (678k баллов)
+123

В смысле наилучший? Наибольший простой?

оставил комментарий Начинающий (335 баллов)
+186

Python

Дан 1 ответ
+100 голосов
БОГ (157k баллов)

Код показывающий все возможные делители(ваш исправленный):

n = int(input())

t = []

for i in range(1, n+1):

   if n % i == 0:

       t.append(i)

print(t)

print(max(t))

Если у вас стоит задача вывести максимальный делитель числа, то вот решение в одну строчку:

print(int(input()))

оставил комментарий Начинающий (335 баллов)
+74

Нее мне не нужно.Я сама должна научиться

оставил комментарий
+110

А что там нужно? У меня в архивах полно кодов, может окажутся полезными.

оставил комментарий Начинающий (335 баллов)
+158

нет не максимальный просто я не доработала код

...