Форум » Обработка целых чисел » Задание 25, №86. Не сходится ответ » Ответить

Задание 25, №86. Не сходится ответ

tansu: Решили так:[pre2] count = 0 for i in range(4986, 32599 + 1): k = [] for d in range(2, round(i ** 0.5)): if i % d == 0: k = k + [d, i // d] if len(k) > 2: break if len(k) == 2: count += i print(count)[/pre2]Выводит 124521820, но в ответах 124478618, где ошибкa?

Ответов - 4

Поляков: tansu пишет: Выводит 124521820, но в ответах 124478618, где ошибкa Думаю, что вы неверно обрабатываете числа, которые являются полными квадратами. Их квадратный корень учитывается как два делителя.

tansu: Проверил. Не учитывается. В этом цикле в питоне. for d in range(2, round(i ** 0.5)): round(i ** 0.5) не считается. Ошибка где-то в другом месте.

Поляков: tansu пишет: Не учитывается. Вы правы. А для чисел, которые являются полными квадратами, его нужно учитывать.


tansu: Спасибо. Всё получилось.



полная версия страницы