Форум сайта python.su
0
Здравствуйте! Написал код по поиску простого числа, на сайте, для которого он написан, не проходит по времени и прерывается. Как мне отредактировать данный код, чтобы не было данной проблемы?
import math import random def is_prime(n): if n % 2 == 0 and n > 2: return False return all(n % i for i in range(3, int(math.sqrt(n)) + 1, 2)) k = int(input()) number = 2 i = 0 while True: if is_prime(number): i += 1 if i == k: break number += 1 print(number)
Офлайн
294
э-э-э а вы уверены что ваш код вообще работает правильно? Я вот запустил его, ввел 4 а мне ваша программа выдала 7. WTF?
по теме есть туева хуча статей, почитайте например вот эту https://habr.com/ru/post/122538/
[code python][/code]
Офлайн
73
а что вообще вы делаете?
k = int(input()) number = 2 i = 0 while True: if is_prime(number): i += 1 if i == k: break number += 1 print(number)
Офлайн