Присоединиться

11 класс·средний уровень

Пусть M — максимальный простой натуральный делитель целого числа, не

Условие

Пусть M — максимальный простой натуральный делитель целого числа, не считая самого числа. Если таких делителей у числа нет, то считаем значение M равным нулю.

Напишите программу, которая перебирает целые числа, большие 1 825 000, в порядке возрастания и ищет среди них такие, для которых M не больше 25 000 и оканчивается на 3. В ответе запишите первые пять найденных чисел в порядке возрастания.

Например, для числа 105 M = 7.Ответ:

Ответ

Ответ и полный разбор откроются после входа

Посмотреть ответ

Решение по шагам

  1. Как рассуждать

    Решение. Приведем решение на языке Python.def div(x): d = set() for i in range(2, int(x0.5)+1): if x%i==0: d.add(i) d.add(x//i) return sorted(d) def p(x): for i in range(2, int(x0.5)+1): if x%i==0: return 0 return x > 1k = 0for x in range(1_825_001, 1_850_000): d = [i for i in div(x) if p(i)] if len(d)>0: m = max(d) if m <= 25_000 and m%10==3: if k == 5: break print(x); k += 1 В результате работы программа должна вывести следующее:18250011825002182501018250251825028

Осталось ещё 3 шага

  1. Приведём решение Сергея Донец на…

  2. and (pd[0] = n)) then M := pd.Max;result:= (M…

  3. end).Take(5).PrintLines;end…

Получить полное решение

Бесплатно · займёт минуту

Другие задачи по теме «Обработка целочисленной информации»