Bonjour , pouvez vous m?aider sur 2 exos d?algorithmes, je n?y arrive pas
Si vous avez une idée donnez moi au moins les premières pistes ...
Voici le 1 er exercice:
Les parents de la petite Marie versent une somme à un livret a sa naissance.
Par la suite, les parents versent chaque mois sur ce livret une somme identique.
Élaborer un algorithme donnant la somme sur ce livret au bout d?un certain nombre de mois.
Le 2 eme:
*** lafol > UN exo = UN topic et réciproquement ***
Bonjour Gwgian,
avez vous compris l'énoncé?
Car à par faire un algorithme qui renvoie le nombre entré, il est difficile de faire plus simple.
Dans l'algorithme demandé, quels sont les 2 données que l'on doit entrer?
Merci pour votre réponse et votre aide, le problème est que j'ai peur de mal comprendre l'énoncé
J'ai réalisé lalgo sur algobox, est ce que ce dernier correspond à l'exercice énoncé ??
Merci !
FONCTIONS_UTILISEES
VARIABLES
X EST_DU_TYPE NOMBRE
n EST_DU_TYPE NOMBRE
P EST_DU_TYPE NOMBRE
S EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
AFFICHER "Somme versée sur le livret a la naissance"
LIRE X
AFFICHER "Somme identique livrée par chaque parent chaque mois"
LIRE P
AFFICHER "nombre de mois"
LIRE n
POUR S ALLANT_DE 1 A n
DEBUT_POUR
S PREND_LA_VALEUR X+ n*2*P
FIN_POUR
AFFICHER "La somme livrée au bout de "
AFFICHER n
AFFICHER " mois est de "
AFFICHERCALCUL X+ n*2*P
FIN_ALGORITHME
bonjour
sur le fond:
encore un énoncé qui semble rédigé à la va-vite, et qui peut être interprété de plusieurs façons...
toutefois, il me semble que si tu considères que le versement initial est unique,
i.e. les parents sont considérés comme une seule personne, donc un seul versement initial,
il serait logique de penser qu'il n'y aura aussi qu'un seul versement mensuel.
et inversement.
dans un cas comme dans l'autre, compte-tenu que tu as pris soin d'insérer des commentaires dans les messages de l'algo, tu annonces clairement ton interprétation de l'énoncé, mais ça doit rester cohérent.
sur la forme, des erreurs plus grave :
1) POUR S ALLANT_DE 1 A n ---- à quoi correspond ceci concrètement ?
dès le 1er tour de boucle, il y a fort à parier que S sera supérieur à n...
as-tu souhaité faire intervenir un compteur i, par ex, qui varie de 1 à n?
si oui, voir ci-dessous.
1) si tu décides de la formule S PREND_LA_VALEUR X+ n*2*P,
tu n'as pas besoin de boucle.
en effet, avec X + n* (2*) P,
S va recueillir directement la somme cumulée au bout de n mois;
inutile de calculer pour chaque mois puisque ce qui nous intéresse c'est le dernier capital au mois n.
exemple :
X = 1000
P = 100
n=12
avec l'instruction S PREND_LA_VALEUR X+ n*P ---- j'enlève le *2, cf ci-dessus -
on obtient directement S = 1000 + 12*100 = 2200
inutile de faire calculer entretemps
1000+100
1000+200
...
1000+1200
2) et pour l'affichage pourquoi ne pas utiliser directement la variable S qui contient le résultat?
en résumé
ton algo contient des erreurs graves et peut être bien allégé.
reprends-le, et teste-le à la main.
Bonjour , merci beaucoup pour votre aide et de m'avoir aiguille pour les petites erreurs , j'ai raccourci la formule à X+n*P
J'ai affiché afficher S en dernière ligne
Mais j'ai malheureusement du mal à comprendre la ligne 15 . Si je mets pour i allant de 1 à n , on ne s'est pas a quoi correspond i d'où vient cette intervalle .
Lorsque vous insinuez que je n'ai pas besoin de boucle cela veut dire qu'il faut que j'utilise le SI...ALORS?
avant de te lancer sur un algo,
tu dois toujours essayer de faire à la main, papier et crayon.
c'est cette réflexion préliminaire qui va mettre en évidence un besoin éventuel de test(s), de boucle(s)... ou pas.
(oubli ton algo pour le moment)
si je te dis :
Les parents de la petite Marie versent 1000€ à un livret a sa naissance.
Par la suite, les parents versent chaque mois 100€ sur ce livret.
donne la somme S sur ce livret au bout de 12 mois
que me réponds-tu ?
ben oui
pourquoi veux-tu compliquer les choses avec un algo ?
la réponse est immédiate :
pas de conditions
pas de boucles
juste une restitution de calcul
il suffit ici, comme tu le ferais à la main :
- de rentrer les valeurs nécessaires
- faire le calcul et le mettre dans S
- d'afficher S
remarque : la variable S n'est, à la limite, pas nécessaire
avec algobox ( AFFICHERCALCUL), on peut afficher directement un calcul.
donc ta version définitive d'algo est ....?
----
ps : si tu veux, pour t'entrainer, modifie pour algo pour afficher la somme placée au terme de chaque mois pendant 2 ans.
commence par réfléchir avec papier et crayon, comme si tu devais le faire toi-même.
puis programme-le sous algobox, et fais-le tourner, pour vérifier.
Très bien, j'ai compris merci
Mais Ne fait il pas une condition pour que : n soit supérieur à 1 ?
Faut il abandonner l'idée d'un Compteur i qui varie de 1 à n?
Mais Ne faut il pas une condition pour que : n soit supérieur à 1 ?
...en même temps, si on rentre 0 pour n, la somme sera X, pas de blocage coté calcul.
(et pour saisir n négatif, faudrait vraiment le faire exprès!)
toutefois, au niveau du contrôle de saisie, on peut toujours :
- préciser dans le message de saisie AFFICHER "nombre de mois supérieur à 1" - facile à faire, notamment lorsque l'on attend un format 'spécial' de saisie,
- créer un test de contrôle lors de la saisie de n (un peu plus lourd, mais courant)
idem pour les 2 autres données demandées en saisie.
mais je ne pense pas, vu l'énoncé, que l'on t'en demande autant.
Faut il abandonner l'idée d'un Compteur i qui varie de 1 à n?
... à quoi servirait ici ? pour compter quoi ? précise ton idée.
(tu trouves que l'algo est trop simple ? si oui, essaie celui que je t'ai proposé)
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :