Не по теме:
не люблю я бреаки в циклах хоть тресни.
Гораздо точнее и понятнее будет включить проверку счетчика в условия цикла. По мне так бреак это заплатка создана для тех случаев, когда слишком затратно или алгоритмически программисту сложно написать код без их использования.
Для проверки на граничные условия длинная арифметика не нужна.
Если взять число в строчном формате, то достаточно просто сравнивать строки

учитывая конечно признак отрицательного числа