algo24.4
Discussion fermée
Affichage des résultats 1 à 9 sur 9

algo24.4



  1. #1
    Argon39

    algo24.4


    ------

    Bonjour alors pour commencé je tient a précisé que je ne suis pas du tout fort en informatique ,mais j'aimerais progresser,et c'est pour cela que j'aurais voulu que vous m'aidiez a résoudre ce problème.
    On me demande d'écrire un algorithme et le programme C corespondant qui demande à un utilisateur de rentré un entier P et qui calcul et affiche la somme des entiers allant de 1 à P.

    Et moi j'ai écris:

    Entrée: entier P
    Sortie: S
    Début:
    Écrire ('Rentrer la valeur de P')
    Lire(P)
    S<=P*(P+1)/2
    Lire(S)
    Ecrire('La somme est égale à',S)
    Fin.
    Et j'aurais voulu savoir ou sont mes erreurs.

    -----

  2. #2
    bisou10

    Re : algo24.4

    Ca m'a l'air bien, tu peux maintenant le traduire en C.

  3. #3
    Argon39

    Smile Re : algo24.4

    Ok merci .

  4. #4
    Optimix

    Re : algo24.4

    Bonjour,

    L'algo me semble également bon, mais je préciserais le type d'entier. P*(P+1)/2 n'est pas valable pour les entiers relatifs négatifs.
    Je glisserais donc un test pour m'assurer que P > 0. Ce qui donne :

    Entrée: entier naturel P
    au lieu de
    Entrée: entier P

  5. A voir en vidéo sur Futura
  6. #5
    Jack
    Modérateur

    Re : algo24.4

    L'algo n'est pas bon: tu calcules la somme, puis l'instruction Lire(S) va demander à l'utilisateur d'entrer une valeur pour S et par conséquent écraser celle qui vient d'être calculée.

    D'autre part, je ne sais pas si tu as vu les instructions permettant les itérations (POUR, TANTQUE, REPETER), mais je me demande si celui qui t'a posé ce problème n'attendait pas plutôt que ce calcul soit effectué de manière itérative ...

  7. #6
    whoami

    Re : algo24.4

    Bonjour,
    Citation Envoyé par Jack Voir le message
    L'algo n'est pas bon: tu calcules la somme, puis l'instruction Lire(S) va demander à l'utilisateur d'entrer une valeur pour S et par conséquent écraser celle qui vient d'être calculée.

    D'autre part, je ne sais pas si tu as vu les instructions permettant les itérations (POUR, TANTQUE, REPETER), mais je me demande si celui qui t'a posé ce problème n'attendait pas plutôt que ce calcul soit effectué de manière itérative ...
    c'est probable, mais normalement, la manière utilisée étant bonne, le correcteur n'a rien à dire.

  8. #7
    bisou10

    Re : algo24.4

    Lire(S) je le comprends comme étant une meta opération (on lit avant d'écrire), pas une saisie utilisateur.

    Mais tu as raison, il vaudrait mieux remplacer la séquence par Afficher(...)

  9. #8
    Argon39

    Re : algo24.4

    Oui il a probablement voulu que ça soit fait comme ça.Mais je vais revoir les "POUR" et "TANT QUE".
    Dernière modification par Argon39 ; 29/09/2013 à 17h22.

  10. #9
    Jack
    Modérateur

    Re : algo24.4

    c'est probable, mais normalement, la manière utilisée étant bonne, le correcteur n'a rien à dire.
    C'est pour cela que je ne conteste pas cet aspect de la solution. J'émettais simplement une suggestion, rapport à la portée didactique de ce type d'exercice.

    Lire(S) je le comprends comme étant une meta opération (on lit avant d'écrire), pas une saisie utilisateur.
    Certains débutants confondent Entrée et sortie dans un algorithme. Je pense que c'est dû au fait qu'il se considèrent toujours comme un utilisateur de la machine, alors que lors de la rédaction de l'algo on se place désormais du côté de la machine, ce qui entraîne donc une confusion entre ce qu'est une entrée et une sortie.

    Oui il a probablement voulu que ça soit fait comme ça.
    Peut-être qu'en précisant dans quelle partie du cours tu en es ainsi que l'énoncé précis du problème on pourrait avoir une idée plus précise de ce qui est recherché.

    A+