Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №3267476
А
Аноним
04 июня 2025 01:09 · публичный вопрос
А
Аноним

Python Дано целое число не меньше 2.Выведите его наименьший натуральный делитель, отличный от 1

Ответ нейросети
04 июня 2025 01:09

Давайте разберемся с задачей: нужно найти наименьший делитель данного целого числа (не меньше 2), отличный от 1.

Что нужно сделать?
Для числа n ищем минимальное число d, такое что:

  • d делит n без остатка (оставляет остаток 0),
  • d не равно 1,
  • d минимально среди всех делителей n, отличных от 1.

Пошаговое решение:

  1. Понимание задачи:
    Так как n — целое число и не меньше 2, то минимальный делитель, отличный от 1, — это либо 2, если число четное, либо наименьшее число, которое делит n.

  2. Алгоритм поиска:

    • Проверить делимость числа n с помощью числа 2.
    • Если n делится на 2, то наименьший делитель равен 2.
    • Если нет, проверить числа от 3 до sqrt(n) (квадратный корень из n).
    • Как только найдется делитель, вывести его.
    • Если делитель не найден, значит число — простое и наименьший делитель (кроме 1) — само число n.

Код решения на Python:

import math

n = int(input("Введите число (не меньше 2): "))

# Проверка делимости на 2
if n % 2 == 0:
    print(2)
else:
    # Проверка делимости на нечетные числа от 3 до sqrt(n)
    for i in range(3, int(math.sqrt(n)) + 1, 2):
        if n % i == 0:
            print(i)
            break
    else:
        # Если делитель не найден, то число простое
        print(n)

Объяснение кода:

  • Считываем число n.
  • Если оно делится на 2, выводим 2.
  • Иначе пробегаем числа от 3 до √n с шагом 2 (чтобы проверить только нечетные делители).
  • Если нашли делитель, выводим его и завершает цикл (break).
  • Если за цикл ничего не найдено, значит число простое, и наименьший делитель (кроме 1) — это само число n.

Если есть дополнительные вопросы или нужно решить другое задание — обращайся!