Здравствуйте, форумчане. Пишу калькулятор, но никак не могу правильно организовать двойное суммирование. Есть указание к формуле: вычисление до того значения индекса суммирования GAMMA, при котором выражение в квадратных скобках впервые удовлетворяет неравенству [] <= 10*10^(-7). Не пойму, как связать правильно две суммы. Вероятно выражение $gamma <= $l; здесь не соответствует, но как я только не крутил туда сюда - не получается. Code: <?php function factorial($number) { if($number <= 1) { return 1; } else return ($number * factorial($number - 1)); } //Входные в функцию данные $initialdata['post_betai0'] = 65; $initialdata['post_ti0'] = 8000; $ai['a_i'] = 14.4; $D0 = 0.051293294387551; $summ = 0; $expression = 1; //для входа в цикл $R_i = 1000000; //для входа в цикл for ($n=0; $R_i >= $D0; $n++) { //п.10.1.2.4 //$l = 1; for ($l = 1; $expression >= 0.0000001; $l++){ for($gamma = $l * ($n + 1); $gamma <= $l; $gamma++){ $summ += pow($ai['a_i'], $gamma) / factorial($gamma); $expression = exp(-$ai['a_i']) * $summ; //print_r("Выражение из внутренней суммы".$expression."\r\n"); //print_r("Внутренняя сумма".$summ."\r\n"); } $expression = exp(-$ai['a_i']) * $summ; //print_r("Выражение из внешней суммы".$expression."\r\n"); //print_r("Внешняя сумма".$summ."\r\n"); if($l >= 100) break; //защита от зацикливания } $R_i = -log( 1 - ( ($initialdata['post_betai0']/$initialdata['post_ti0']) * $expression ) ); } print_r("\r\n\r\n".$R_i); for ($n=0; $R_i >= $D0; $n++) - это тоже условие выражения, но интересует именно двойное суммирование.