Не могу понять, что не так в цикле, почему ничего не выводит?

Мне нужно вывести все простые делители числа 13195
вначале я сделал функцию , что определяет простое ли число:
def setPrime(n):
    d = 2
    while n % d != 0:
        d = d + 1
    if n == d:
        print(str(n) +" Простое")
    else:
        print(str(n) +" Число не простое ")

Функция работает нормально , потом хочу аналогичное вписасть , и вроде как должно работать все , но ничего не выводит:
d = 2
x = 1
while x < 13195:
    if 13195 % x == 0:
        while x % d != 0:
            d = d + 1
        if x == d:
            print(x)
Помогите разобраться , что не правильно сделал.
  • Вопрос задан
  • 77 просмотров
Пригласить эксперта
Ответы на вопрос 1
ZIK1337
@ZIK1337
У вас x всегда = 1 и не изменяется, а d = 2 изначально и увеличивается на 1
Они никогда не станут равны
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
25 апр. 2024, в 12:20
15000 руб./за проект
25 апр. 2024, в 12:08
300 руб./за проект
25 апр. 2024, в 11:49
25000 руб./за проект