Напишите программу, которая перебирает целые числа, бо́льшие 700 000, в порядке возрастания и ищет среди них такие, у которых есть натуральный делитель, оканчивающийся на цифру 7 и не равный ни самому числу, ни числу 7. В ответе запишите в первом столбце таблицы первые пять найденных чисел в порядке возрастания, а во втором столбце — соответствующий минимальный делитель для каждого числа, оканчивающийся цифрой 7, не равный ни самому числу, ни числу 7. Количество строк в таблице для ответа избыточно.
Решение:
Решение на Python:
def d(x):
dels = []
for i in range(2, int(x**0.5)+1):
if x % i == 0:
dels.append(i)
dels.append(x//i)
return dels
for x in range(700001, 100000000):
dels = d(x)
dx = [i for i in dels if i % 10 == 7 and i != 7 and i != x]
if len(dx) > 0:
print(x, min(dx))
Ответ:
| 700002 | 27 |
| 700003 | 37 |
| 700005 | 6087 |
| 700007 | 77 |
| 700008 | 29167 |
Ответ: