Код просто выводит результат возведения 2 в различные степени (от 0 до 9). Внутри цикла For происходит возведение поочередно в разные степени - при i=0 возведение в 0 степерь, при i=9 - в 9 степень. Внутри вложенного цикла while просходит сама операция возведения в степень. Для того чтобы возвести 2 в степень X нужно умножить число 2 само на себя X раз (например 2^3 = 2*2*2). Поэтому и нужен счетчик "e". Внутри цикла while отсчет идет от i до 0 - для этого и нужен декремент "e". Чтобы умножить двойку саму на себя i раз.
Если какая-то строчка непонятна, убирай её из кода и смотри результат, в данном случае, если убрать декремент из цикла while, то программа попадёт в бесконечную петлю, из которой нет выхода, и зависнет.
( знаки не ставил потому что на скорую руку пишу сорян )
В этом уточнении больше символов, чем потребовалось бы для расстановки всех знаков препинания. Отмазка не прокатила. Сорян.
Если не декрементировать е, то цикл будет бесконечным, т.к. е всегда будет больше 0
но ведь когда i станет = 3 то е тоже будет 3 и декрементруя его будет 2 и цикл становится бесконечным или я тупанул ?
Код просто выводит результат возведения 2 в различные степени (от 0 до 9). Внутри цикла For происходит возведение поочередно в разные степени - при i=0 возведение в 0 степерь, при i=9 - в 9 степень. Внутри вложенного цикла while просходит сама операция возведения в степень. Для того чтобы возвести 2 в степень X нужно умножить число 2 само на себя X раз (например 2^3 = 2*2*2). Поэтому и нужен счетчик "e". Внутри цикла while отсчет идет от i до 0 - для этого и нужен декремент "e". Чтобы умножить двойку саму на себя i раз.
Спасибо
Если какая-то строчка непонятна, убирай её из кода и смотри результат, в данном случае, если убрать декремент из цикла while, то программа попадёт в бесконечную петлю, из которой нет выхода, и зависнет.
да я понял это увидел потом еще раз прочитал как работает цикл while и еще прочитал комменты и доперло
Спасибо