Вычислить значение выражения, используя рекурсию - C (СИ)
Формулировка задачи:
НУжно вот это задание в рекурсию переделать...сам пробовал такого понаделал))) С помощью цикла сделал...В рекурсию надеюсь на вашу помощь)))(ЯЗЫК СИ БЕЗ ++)
int _tmain(int argc, _TCHAR* argv[]) { double y0 = 1, y1; int n = 0; double e; printf("\nEnter Е: "); scanf("%lg", &e); do { y1 = (y0 + 1) / (y0 + 2); y0 = y1; n++; }while( (y1 - y0) > e); printf("\nyn = %lg\n", y1); system("pause"); return 0; }
Решение задачи: «Вычислить значение выражения, используя рекурсию»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> int main(int argc, const char* argv[]) { double y0, y1 = 1; double e; printf("Enter E: "); scanf("%lg", &e); do { y0 = y1; y1 = (y0 + 1) / (y0 + 2); } while ((y0 - y1) > e); printf("\nyn = %g\n", y1); system("pause"); return 0; }
Объяснение кода листинга программы
В этом коде выполняется вычисление числа y, которое является итеративным решением уравнения y1 = (y0 + 1) / (y0 + 2), где y0 - начальное приближение, а y1 - итерация. В цикле do-while выполняется итеративный процесс до тех пор, пока разница между текущим и предыдущим значением y не станет меньше заданной точности e. Значение y выводится на экран, после чего программа завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д