кодесурса
«Python

Python Math: вывести все простые числа (сита Эратосфена), меньшие или равные указанному числу

script1adsense2code
script1adsense3code

Python Math: упражнение 21 с решением

Напишите программу на Python для печати всех простых чисел (Sieve of Eratosthenes), меньших или равных указанному числу.

В математике сито Эратосфена, одно из множества сит с простыми числами, является простым древним алгоритмом для нахождения всех простых чисел вплоть до любого заданного предела. Это делается путем итеративной маркировки как составных (т. Е. Не простых) кратных каждого простого числа, начиная с кратных 2.

Наглядная презентация:

Кредиты на анимацию: Информация об авторе здесь

Пример решения : -

Код Python:


def sieve_of_Eratosthenes(num):
    limitn = num+1
    not_prime_num = set()
    prime_nums = []
    for i in range(2, limitn):
        if i in not_prime_num:
            continue
        for f in range(i*2, limitn, i):
            not_prime_num.add(f)
        prime_nums.append(i)
    return prime_nums
print(sieve_of_Eratosthenes(100));

Пример вывода:

 [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97 ]

Блок - схема:

«Блок-схема:

Визуализируйте выполнение кода Python:

Следующий инструмент визуализирует, что компьютер делает шаг за шагом при выполнении указанной программы:

Редактор кода Python:

Есть другой способ решить это решение? Внесите свой код (и комментарии) через Disqus.

Предыдущий: Напишите программу на Python для расчета магического квадрата.
Далее: Напишите программу на Python, чтобы найти следующий наименьший палиндром указанного числа.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code