


Как работает метод isPrime для поиска простых чисел на python 3?
def isPrime(n):
if n % 2 == 0:
return n == 2
d = 3
while d * d <= n and n % d != 0:
d += 2
return d * d > n
вот сам метод, но мне не понятно что куда вставить, чтобы мне выдавало простое входное число или нет. Это просто система проверки, как её впихнуть в программу??
это функция, возвращающая True если ей на вход передано простое число, и False если нет
https://ideone.com/Ir0wHv
работает просто. сразу отметает все четные числа: двойка - простое число, остальные четные заведомо непростые.
далее проверяет, делится ли число на нечетные числа 3,5,7...sqrt(n) дальше проверять нет смысла, потому, что если n и делится на такое число, то оно так же обязано делиться и на число < sqrt(n), но все такие делители к этому моменту уже проверены.
если n не делится ни на одно из таких чисел - оно простое
стоит также отметить, что функция будет неправильно работать в случае n < 2, но это и не требуется - числа меньше 2 по определению не простые и не составные
Я в этой программе не вижу определение простых чисел. Могу предложить такую
