Каждое число делится на 1 и само по себе .Простое число - это натуральное число, которое не имеет положительных делителей , отличных от , кроме 1 и самого себя.Поэтому, если вы начнете свой цикл for с 1, каждый номер x
передаст условие x % 1 == 0
в первой итерации, возвращая False
.
Чтобы исправить это, вам нужно начать цикл с 2 вместо 1. Кроме того, в качестве дополнительного примечания, вам просто нужно сделать цикл от 2 до sqrt(x)
, поскольку, если существует число q > sqrt(x)
которая делит x
, тогда также должно быть число p = x / q
, которое также делит x
и p < sqrt(x)
.