Внедрить рекурсивный алгоритм в имеющуюся программу - C (СИ)

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

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

Здравствуйте. есть такая программка
Листинг программы
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <locale.h>
  4. #include <math.h>
  5. int main(void)
  6. {
  7. float n;
  8. float i;
  9. float pr;
  10. pr = 1;
  11. i = 1;
  12. printf("vvedite n -> ");
  13. scanf("%f", &n);
  14. for ( i; i <= n; ++i )
  15. {
  16. pr=pr*((i*2-1)/(i*2));
  17. }
  18. printf("%f",pr);
  19. _getch();
  20. }
нужно как то переделать, что бы в ней использовалась рекурсия

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

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <locale.h>
  4. #include <math.h>
  5.  
  6.  float func(float n){
  7.     return (n>0?func(--n)*(((n+1)*2-1)/((n+1)*2)):1);
  8.  }
  9.  
  10. int main(void)
  11. {
  12.     float n;
  13.     float pr;
  14.     pr = 1;
  15.     printf("vvedite n -> ");
  16.     scanf("%f", &n);
  17.      pr=func(n);
  18.     printf("%f",pr);
  19.     _getch();
  20. }

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


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

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

12   голосов , оценка 3.917 из 5

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

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

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