Somme des factorielles des n premiers nombres pairs
Fermé
little_0607
Messages postés
5
Date d'inscription
dimanche 17 février 2019
Statut
Membre
Dernière intervention
18 février 2019
-
Modifié le 18 févr. 2019 à 10:27
little_0607 Messages postés 5 Date d'inscription dimanche 17 février 2019 Statut Membre Dernière intervention 18 février 2019 - 18 févr. 2019 à 14:15
little_0607 Messages postés 5 Date d'inscription dimanche 17 février 2019 Statut Membre Dernière intervention 18 février 2019 - 18 févr. 2019 à 14:15
A voir également:
- Somme des factorielles des n premiers nombres pairs
- Formule somme excel colonne - Guide
- Somme si couleur - Guide
- Code binaire des nombres - Guide
- Recherchev somme plusieurs lignes ✓ - Forum Excel
- Citez un des logiciels lui permettant de faire des calculs sur des tableaux de nombres (tableur). ✓ - Forum LibreOffice / OpenOffice
1 réponse
[Dal]
Messages postés
6194
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
11 octobre 2024
1 092
Modifié le 18 févr. 2019 à 12:05
Modifié le 18 févr. 2019 à 12:05
Salut little_0607,
Lorsque tu copie-colle le code source sur le forum, met le entre balises de code c (clique sur la flèche qui pointe vers le bas, située à gauche du bouton image et choisis "c"). Ainsi, ton code sera visible sur le forum en préservant l'indentation, et avec coloration syntaxique (là c'est jordane45 qui a modifié ton post pour y mettre les balises de code, fais le toi même à l'avenir stp :-).
Sinon, lorsque tu postes du code sur le forum, utilise un vrai ordinateur pour copier-coller le code, au lieu de taper à partir d'un téléphone mobile ou une tablette qui va te rajouter des majuscules à chaque début de ligne, ou dont le correcteur orthographique va rectifier ton premier include en
Une fois corrigés ces problèmes, ton code n'est pas pour autant correct, même s'il compilera.
Voilà quelques indications :
- le spécificateur
- les variables
- le chiffre zéro est pair
- tu peux calculer le nème nombre pair à partir de zéro (inclus) avec une formule simple
Ensuite la logique de ton programme est fausse, aussi je te recommande d'effacer tout ton code après ton
Voilà une méthode pas à pas que tu pourrais utiliser :
- commence par établir une boucle
- une fois que tu dénombres correctement les nombres pairs, pour chaque nombre pair, calcule la factorielle de chaque nombre pair (fait cela une fois seulement après que ton premier code fonctionne, vérifie que ton nouveau code fait ce que tu veux avec des
- une fois que ce code fonctionne, insère le cumul de l'addition de chaque factorielle trouvée dans ta variable destinée à contenir la somme des factorielles (là aussi, tu peux insérer des
- quand ton code est au point, retire les
Dal
Lorsque tu copie-colle le code source sur le forum, met le entre balises de code c (clique sur la flèche qui pointe vers le bas, située à gauche du bouton image et choisis "c"). Ainsi, ton code sera visible sur le forum en préservant l'indentation, et avec coloration syntaxique (là c'est jordane45 qui a modifié ton post pour y mettre les balises de code, fais le toi même à l'avenir stp :-).
Sinon, lorsque tu postes du code sur le forum, utilise un vrai ordinateur pour copier-coller le code, au lieu de taper à partir d'un téléphone mobile ou une tablette qui va te rajouter des majuscules à chaque début de ligne, ou dont le correcteur orthographique va rectifier ton premier include en
#include <studio.h>, alors que tu veux taper
#include <stdio.h>. Il manque aussi une accolade fermante à ton code et la déclaration de n pour que ton code compile ...
Une fois corrigés ces problèmes, ton code n'est pas pour autant correct, même s'il compilera.
Voilà quelques indications :
- le spécificateur
printfpour un
unsigned longest
%luet pas
%d...
- les variables
nbp,
prodet
somne sont pas initialisées à zéro toutes seules par le compilateur ... elles peuvent donc valoir n'importe quoi et fausser complètement l'exécution
- le chiffre zéro est pair
- tu peux calculer le nème nombre pair à partir de zéro (inclus) avec une formule simple
Ensuite la logique de ton programme est fausse, aussi je te recommande d'effacer tout ton code après ton
scanfet de recommencer pas à pas (par exemple ta boucle
whileest fausse, elle tourne dans le vide et ne s'arrête jamais car
ine varie pas à l'intérieur du
while..., la logique qui suit est aussi erronée pour d'autres raisons).
Voilà une méthode pas à pas que tu pourrais utiliser :
- commence par établir une boucle
forqui dénombre les nèmes nombres pairs (vérifie que ton code fait ce que tu veux avec des
printfintermédiaires t'aidant à déboguer ton code)
- une fois que tu dénombres correctement les nombres pairs, pour chaque nombre pair, calcule la factorielle de chaque nombre pair (fait cela une fois seulement après que ton premier code fonctionne, vérifie que ton nouveau code fait ce que tu veux avec des
printfintermédiaires t'aidant à déboguer ton code)
- une fois que ce code fonctionne, insère le cumul de l'addition de chaque factorielle trouvée dans ta variable destinée à contenir la somme des factorielles (là aussi, tu peux insérer des
printfintermédiaires t'aidant à déboguer ton code pour vérifier que tu cumules bien les additions des factorielles successives), puis affiche le résultat final en dehors de ta boucle for
- quand ton code est au point, retire les
printfintermédiaires ayant servi au débogage
Dal
18 févr. 2019 à 11:59
Modifié le 18 févr. 2019 à 12:15
j'ai fait un autre avec le même sujet mais c'est la même chose
Modifié le 18 févr. 2019 à 13:52
en ligne 24 ne sert à rien et n'a aucun effet, et tu devrais le supprimer... tu as aussi dû oublier de copier-coller l'accolade fermante de ton code après le final
ensuite, ton code donne un calcul exact pour les entiers pairs de 0 au nombre que tu as saisi inclus (le texte de conclusion étant donc inadéquat).
par exemple :
il ne te manque pas grand chose, pour que ton code exécute la boucle principale de façon à ce que la factorielle de 10 nombres pairs soit calculée, au lieu de ce que tu fais actuellement :-)
réfléchis à ce que tu dois mettre pour borner ta condition de sortie du de la boucle principale au lieu de ...
18 févr. 2019 à 14:01
18 févr. 2019 à 14:10