Почему надо задавать переменную перед циклом а не в начале кода? | Sololearn: Learn to code for FREE!
New course! Every coder should learn Generative AI!
Try a free lesson
0

Почему надо задавать переменную перед циклом а не в начале кода?

n = int(input()) a = 0 sum = 0 while n>9: sum=0 while n: a=n%10 sum+=a n=n//10 n=sum print(n)

3rd Jan 2022, 1:50 AM
Илья
Илья - avatar
8 Answers
+ 1
Какую переменную? Главное чтобы цикл её "видел", а где уж её объявлять решайте сами. В данном коде первое присваивание sum = 0 лишнее
3rd Jan 2022, 2:25 AM
Alexey Kopyshev
Alexey Kopyshev - avatar
+ 1
Ты же хочешь после каждого внутреннего цикла обнулять сумму, иначе вполне можешь получить бесконечный цикл
3rd Jan 2022, 6:56 AM
Alexey Kopyshev
Alexey Kopyshev - avatar
0
А без переменной sum не работает
3rd Jan 2022, 2:40 AM
Илья
Илья - avatar
0
Всё работает: n = int(input()) a = 0 while n>9: sum=0 while n: a=n%10 sum+=a n=n//10 n=sum print(n) Ps. Плохая идея переменную называть sum - уже есть встроенная функция
3rd Jan 2022, 2:45 AM
Alexey Kopyshev
Alexey Kopyshev - avatar
0
Если после while убрать, а в начале оставить
3rd Jan 2022, 3:15 AM
Илья
Илья - avatar
0
Точно. Не додумался. Спасибо большое
3rd Jan 2022, 9:32 AM
Илья
Илья - avatar
0
Всем привет я тут недавно кто может мне помочь в изучении?
3rd Jan 2022, 8:22 PM
Уларбек Асангазиев
0
Нечиго не знаю не спрашивайте
4th Jan 2022, 7:15 PM
Khasan Mikeev
Khasan Mikeev - avatar