У меня есть два кода.
первый -
x = 600851475143
a = 2
max = 0
while a < x:
for i in range (2, int(a**0.5)+1):
if a % i == 0:
break
else:
if x % a == 0 : max = a
a += 1
print(max)
второй -
x = 600851475143
a = 2
max = 0
while a < x:
for i in range (2, int(a**0.5)+1):
if a % i == 0:
break
else:
if x % a == 0 : print(a)
a += 1
Оба написаны на Python
Как вы, ребята, можете видеть только различие в том, помещаю ли я конечное значение в переменную 'max' и печатаю его позже, или просто распечатываю его в операторе if. Но есть большая разница в скорости выполнения этих двух. Кто-нибудь может объяснить почему?