Fonction recursive
Perkins Arindal
Messages postés
10
Date d'inscription
Statut
Membre
Dernière intervention
-
KX Messages postés 19031 Statut Modérateur -
KX Messages postés 19031 Statut Modérateur -
Bonjour,j'ai besoin votre aide sur cette exercice.
ecrire une fonction recursive qui fait la somme des inverses des n premiers
entiers positifs
voici mon travail:
#include<stdio.h>
#include<conio.h>
int x,res;
float somme(int n)
{
int b=1
if(n==1){
return b;
}
else{
return somme(n--,b+1/n)
}
}
void main()
{ scanf(''%d,&x);
res=somme(x);
printf("\n la somme est egale a %d", res);
}
ecrire une fonction recursive qui fait la somme des inverses des n premiers
entiers positifs
voici mon travail:
#include<stdio.h>
#include<conio.h>
int x,res;
float somme(int n)
{
int b=1
if(n==1){
return b;
}
else{
return somme(n--,b+1/n)
}
}
void main()
{ scanf(''%d,&x);
res=somme(x);
printf("\n la somme est egale a %d", res);
}
2 réponses
-
Bonjour,
Je ne pense pas que tu aies essayer de compiler ton code dans un premier temps:
float somme(int n)
Voici le prototype de ta fonction somme, alors comment fais tu pour faire un appel a somme avec 2 arguments.
Il faudrait donc (tu l'auras compris), bouger ton resultat temporaire (avec le b), en 2eme argument.
Comme ca au fur et a mesure de tes appels tu auras un resultat temporaire, que tu renverras quand n == 1
Enfin, que je crois que quelqu'un t'avais deja repondu en te donnant la solution, dans ton ancien post. -
bonjour
je ne connais pas le C mais quelque chose comme ça devrait aller
if(n==1){
return 1
}
else{
return 1/n+somme(n--)
}
bonne suite