Форум » Обработка целых чисел » Тема 25 задача 4116 » Ответить

Тема 25 задача 4116

ganilova: Обозначим через S сумму простых делителей целого числа, не считая самого числа. Если таких делителей у числа нет, то считаем значение S равным нулю. Напишите программу, которая перебирает целые числа, большие 250000 в порядке возрастания и ищет среди них такие, для которых значение S не равно нулю и кратно 17. Программа должна найти первые 5 таких чисел. Для каждого из них в отдельной строке сначала выводится само число, затем значение S. Строки выводятся в порядке возрастания найденных чисел. В ответе 250003 19244 250015 1649 250028 62509 250059 170 250062 663 У меня получилось (вывела 6 чисел, для наглядности результата работы программы) 250003 19244 250010 26095 250015 1649 250028 62509 250059 170 250062 663 [pre2]#список простых чисел p = [2,3,5,7,11,13,17,19,29,31] x = 37 while x < 250000: i = 0 f = True while f and p[ i] * p[ i] <= x: if x % p[ i] == 0: f = False i += 1 if f: p.append(x) x += 1 k = 0 a = 250000 while k < 6: a += 1 s = 0 d = 2 while d * d <= a: if a % d == 0: if d in p: s += d x = a // d if x * x > a and x in p: s += x d += 1 if s > 0 and s % 17 == 0: k += 1 print(a, s)[/pre2]

Ответов - 3

cabanov.alexey: 250010 = 2⋅5⋅23⋅1087 Сумма простых делителей 1117

ganilova: У этого числа есть ещё один простой делитель 25001 250010 26095 [2, 5, 25001, 1087] но Ваш ответ правильный, так как у меня "потерялся" делитель 23 и тогда сумма делителей не разделиться на 17. Судя по Вашему ответу число надо разложить на простые делители, а в условии задачи надо найти сумму простых делителей, как видим по числу 250010 , это не одно и то же. Думаю надо уточнить условие задачи.

988013@mail.ru: def p(n): prost=True for i in range(2,(n//2)+1): if n%i==0: prost=False return prost for i in range(250000,250100): s=0 for n in range(1,(i//2)+1): if i%n==0: if p(n): s+=n if s%17==0 : print(i,s) получается первые 5 s 250002 85 250005 2397 250042 238 250048 3910 250067 8653 может что-то не учел в условии задачи?




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