damon
Уже сам решил for z in range(0,100):
is_prime(z)
if is_prime(z) == True:
print(z ,“Prostoe”)
else:
print(z, “ne prostoe”)
строчка лишняя
+1 - лишняя операция деления на каждой проверке, а 3 простое
вместо: int (a/2) достаточно a // 2
все эти манипуляции с излишней переменной ни к чему + совершается куча лишних циклов, когда можно вернуть False уже при нахождении первого делителя
это что касается мелких недочетов и питона, а теперь то что касается теории:
поиск делителя в range(a//2) добавляет кучу лишних проверок:
12/2 = 6, то есть будут проверен диапазон хотя было бы достаточно диапазона
поэтому оптимально находить значение квадратного корня из a
и вообще на диапазоне искать простые числа лучше с помощью решета Эратосфена
и тут я нашел
эту тему и понял, что все я написал бесполезно)