Доброе время суток. Помогите пожалуста с разборкой формулы по строкам ход ришения.

Цель задачи:
Вычислить бесконечную сумму с точностью

(

). Считать, что точность достигнута, если следующее слагаемое окажется по модулю меньше, чем заданное

, — его и следующие слагаемые можно не учитывать.
Пожалуйста, помогите по строчкам разобрать фурмулу.
что я делаю:
g = 1;
x = 0.1;
n = 1;
ffor (int i = 0; i < 2 * n; i++)
{
x *= x;
}
x = x - ((x * x * x) / 3) + ((x * x * x * x * x) / 5) + g * x / 2 * n + 1;
Повторяю все время в цыкле. Резутьтат только увеличивается. Меншым по модулу он не стает.