Отображение всех простых чисел в диапазоне от 1 до 100

Переберите числа от 2 до 100 и проверяйте делители до целого квадратного корня. Если ни один не делит число без остатка, оно простое. Число 1 простым не считается.

Короткий ответ

Что ответить на собеседовании

Переберите числа от 2 до 100 и проверяйте делители до целого квадратного корня. Если ни один не делит число без остатка, оно простое. Число 1 простым не считается.

Подробный разбор

Ответ с пояснениями

Условие

Составьте программу, которая выводит в консоль каждое простое число, находящееся в интервале от 1 до 100 включительно.

Ответ

Переберите числа от 2 до 100 и проверяйте делители до целого квадратного корня. Если ни один не делит число без остатка, оно простое. Число 1 простым не считается.

Достаточно проверить делители до √n: у составного числа хотя бы один множитель не больше этой границы.

from math import isqrt

for number in range(2, 101):
    if all(number % divisor != 0
           for divisor in range(2, isqrt(number) + 1)):
        print(number)

Для 2 и 3 диапазон проверок пуст, а all возвращает True — это правильный результат. Программа выведет 25 простых чисел, последнее из них 97. Для существенно большего диапазона эффективнее решето Эратосфена.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее