Внедрить рекурсивный алгоритм в имеющуюся программу - C (СИ)
Формулировка задачи:
Здравствуйте. есть такая программка
нужно как то переделать, что бы в ней использовалась рекурсия
#include <stdio.h>
#include <conio.h>
#include <locale.h>
#include <math.h>
int main(void)
{
float n;
float i;
float pr;
pr = 1;
i = 1;
printf("vvedite n -> ");
scanf("%f", &n);
for ( i; i <= n; ++i )
{
pr=pr*((i*2-1)/(i*2));
}
printf("%f",pr);
_getch();
}Решение задачи: «Внедрить рекурсивный алгоритм в имеющуюся программу»
textual
Листинг программы
#include <stdio.h>
#include <conio.h>
#include <locale.h>
#include <math.h>
float func(float n){
return (n>0?func(--n)*(((n+1)*2-1)/((n+1)*2)):1);
}
int main(void)
{
float n;
float pr;
pr = 1;
printf("vvedite n -> ");
scanf("%f", &n);
pr=func(n);
printf("%f",pr);
_getch();
}