Kokokoizu a écrit:Bonjour,
Voila, j'ai un exercice d'Algorithmique a faire et n'étant pas très doué dans cette dicipline je demande votre aide. Voici l'énoncé :
Entrée
Saisir n(n;);), n

1)
Initialisation
S prend la valeur 0
Traitement
Pour k de 1 jusqu'à n
Pour J de 1 jusqu'à k²
S prend la valeur S+1
Fin pour
Fin pour
Afficher S
Quelle est la valeur S affichée par l'algorithme suivant.
Pour répondre a la question, vu que j'avais pas vraiment d'idée, j'ai essayé de faire faire le programme. Pour voir effectivement quelle valeur de S j'allais avoir. Voila mon programme ( qui est faux malheureusement )
Input N
N;)1
S -> 0
For(1;)K;)N)
For(1;)J;)K²)
S -> S+1
End
End
Disp S
j'aimerais savoir ce qui ne va pas dans mon programme. Et si quelqu'un aurait une idée pour la réponse à la question posée.
Salut,
Je ne pense pas que faire le programme sans comprendre ce qu'il fait, ni même avoir une idée de ce qu'il va retourner pour voir si le résultat est plus ou moins cohérent, n'est pas une bonne idée.
Commençons plutôt par traduire l'énoncé :
Saisir un entier naturel n supérieur ou égal à 1.
S=0
Pour k de 1 jusqu'à n
Pour J de 1 jusqu'à k²
S=S+1
Tu vois "S=S+1" ce qui te montre que tu as affaire à une somme.
Or de quoi est composée une somme en maths ? D'un début, d'une fin, et d'une expression à sommer.
Alors tu vas te demander qui est quoi parmi les variables du programme de l'énoncé.
Tu vois que n est la variable que l'utilisateur saisit, et que n est une des bornes des variations de k (autrement dit, k varie de 1 à n). Par conséquent, n est la fin de ta somme, et k va être la variable de sommation.
...
Attends y a un truc bizarre dans ton programme, je réfléchis et je reviens. :k2k:
Ouais, c'est bien ça, ton J je vois pas trop ce qu'il fait en fait, parce qu'il est utilisé nulle part dans la programme, sauf si j'ai pas plus compris de toi. En fait, si on déroule, ça donne :
- Code: Tout sélectionner
S=0
k=1
J=1
S=0+1=1
k=2
j=2
S=1+1=2
Donc ton J n'intervient nulle part, puisque c'est n qui détermine la fin de la boucle ...
Et c'est encore plus bizarre parce que t'as deux boucles imbriquées (celle avec le k puis celle avec le J).
Bizarre. :k2k: