попробуйте решить численно:
Да, такие вещи только численно и решать

Всегда в первую очередь старайтесь подойти со стороны численного подхода.
Хм, а разве не наоборот, следует как раз таки стараться аналитически проанализировать, что мы имеем? Чтобы кучу лишних действий не делать?
В коде надо еще int i ввести, i++... и почему только по неотрицательным целым? Да и равенство == может быть иногда не выполнено, но числа равны. Я даже не знаю, насколько вообще это обоснованно начинать численно что-то делать, пока в аналитике не будет ясно, с чем имеем дело. В каждом конкретном случае -- по-своему. Иначе, это набор каких-то лишних действий и напряжений.