Вопрос по циклу while C#
Возникли некоторые вопросы относительно работы цикла while на C# . Как я понимаю ,он продолжается пока условие верно .Написал код ,в котором есть значение 5 и в цикле оно умножается сначала на 3 потом на 4 и выводит в косоль.
Вроде все работает , но в консоли почему то выводится также отрицательное значение.Разве он не должен перестать работать после вывода значения 179159040? Вывод отрицательного числа в данном случае связан с тем , что при таком умножении возникает 2.14990848е9?
Ответы (1 шт):
Вывод отрицательного числа вызван логикой вашего цикла - умножение и вывод производится после проверки на отрицательность. Или по-другому - сначала умножили и напечатали, только потом проверили...
А то, что вообще получается отрицательное число - обусловлено форматом целых знаковых 32-разрядных чисел, положительный диапазон которых ограничен значением 2^31-1