Составить программу для вычисления цепной дроби, через рекурсию - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Здравствуйте! Требуется составить программу для вычисления цепной дроби, через рекурсию. Сколько ни пытался, ничего вразумительного написать не удалось. Может кто-нибудь чем-либо помочь?

Решение задачи: «Составить программу для вычисления цепной дроби, через рекурсию»

textual
Листинг программы
  1. #include <stdio.h>
  2.  
  3. double cont_recurse(int cur, int n)
  4. {
  5.     if (cur >= n)
  6.         return n;
  7.     return cur + 1.0/cont_recurse(cur+1, n);
  8. }
  9.  
  10. double continued(int n)
  11. {
  12.     return 1.0/cont_recurse(1, n);
  13. }
  14.  
  15. int main(void)
  16. {
  17.     int n;
  18.     printf("Input n: ");
  19.     scanf("%d", &n);
  20.     printf("Continued fraction: %f", continued(n));
  21.     return 0;
  22. }

Объяснение кода листинга программы

  1. Включаем библиотеку stdio.h, чтобы использовать функции ввода-вывода
  2. Создаём функцию cont_recurse(int cur, int n), которая будет вычислять цепную дробь с помощью рекурсии
  3. Внутри функции, если значение переменной cur больше или равно n, то возвращаем n
  4. Внутри функции, если значение переменной cur меньше n, то возвращаем сумму cur и 1/cont_recurse(cur+1, n)
  5. Создаём функцию continued(int n), которая будет вызывать функцию cont_recurse(1, n) для вычисления цепной дроби
  6. В функции main, считываем значение переменной n с помощью функции scanf
  7. Вызываем функцию continued(n), чтобы вычислить цепную дробь
  8. Выводим результат на экран с помощью функции printf

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4.429 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы