Вычислить значение выражения, используя рекурсию - 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 выводится на экран, после чего программа завершается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д