Математика Python: распечатайте первые n счастливых чисел

Python Math: Упражнение 17 с решением

Напишите программу Python, которая выводит первые n счастливых чисел.

Счастливые числа определяются через решето следующим образом.
Начните со списка целых чисел, начинающегося с 1:
1, 2, 3,4, 5, 6 , 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,. . . .
Теперь удалите каждое второе число:
1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, …
Второе оставшееся число — 3, поэтому удалите каждое третье число:
1, 3, 7, 9, 13, 15, 19, 21, 25, …
Следующее оставшееся число — 7, поэтому удалите каждое 7-е число:
1, 3, 7, 9, 13, 15, 21, 25, …
Затем удалите каждое 9-е число и так далее.
Наконец, результирующая последовательность — это счастливые числа.

Следующая анимация демонстрирует решето счастливых чисел. Красные числа — счастливые числа.

Авторы анимации: кельтский менестрель

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

Код Python:

   n = int (input ("Введите число:")) List = range (-1, n * n + 9,2) i = 2 пока List [i:]: List = sorted (set (List  ) -set (List [List [i] :: List [i]])); i + = 1print (List [1: n + 1])  

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

 Введите число: 10 [1, 3, 7, 9, 13, 15, 21, 25, 31, 33] 

Блок-схема:

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

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

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

Оцените статью
nanomode.ru
Добавить комментарий