Problème dans un algorithme
Répondre à la discussion
Affichage des résultats 1 à 6 sur 6

Problème dans un algorithme



  1. #1
    invite92fdbd33

    Problème dans un algorithme


    ------

    Bonjour/Bonsoir !
    Voici l’énoncée d'un exercice dont j'ai la correction, mais je ne trouve pas qu'elle soit totalement juste, vous me corrigerez si je me trompe svp !

    cet algorithme doit demander une heure et en afficher une autre.Il doit gérer les secondes, et afficher l'heure qu'il sera une seconde plus tard.
    Par exemple, si l'utilisateur tape 21, puis 32, puis 8, l'algorithme doit répondre : "Dans une seconde, il sera 21 heure(s), 32 minute(s) et 9 seconde(s)".
    NB n suppose que l'utilisateur entre une date valide.

    La correction donnée est la suivante:
    Variables h, m, s en Numérique
    Début
    Ecrire "Entrez les heures, puis les minutes, puis les secondes : "
    Lire h, m, s
    s ← s + 1
    Si s = 60 Alors
    s ← 0
    m ← m + 1
    FinSi
    Si m = 60 Alors
    m ← 0
    h ← h + 1
    FinSi
    Si h = 24 Alors
    h ← 0
    FinSi
    Ecrire "Dans une seconde il sera ", h, "h", m, "m et ", s, "s"


    Je suis d'accord en tout point avec ce corrigé sauf un, pour moi on devrait mettre S=59 dans la première condition, m=59 dans la deuxième et pour la troisième non pas h=24, mais(h=23 ET m=59 et s=59), selon moi ce n'est que comme ça que en ajoutant une seconde on obtient les bonnes heures.

    Voici mon propre corrigé:

    Variables h,m,s en ENTIER
    Début
    Ecrire"entrez une heure valide"
    Lire h,m,s
    s<---s+1
    Si S=59 Alors
    s<---0
    m<---m+1
    Finsi
    Si m=59 Alors
    h<---h+1
    m<---0
    s<---0
    Finsi
    Si h=23 ET m=59 ET s=59 Alors
    h<---0
    m<---0
    s<---0
    Finsi
    Ecrire "dans une seconde il sera",h,"heure(s)",m,"minute(s )",s,"seconde(s)"
    Fin

    Merci d'avance !

    -----

  2. #2
    Arzhur

    Re : Problème dans un algorithme

    Bonjour,


    As-tu testé ton algorithme ? (par exemple avec 58,0,0)

  3. #3
    invite92fdbd33

    Re : Problème dans un algorithme

    Peux-tu être plus explicite ?
    Tu voulais peut-être que j'essaye mon algorithme avec la valeur que tu as donnée pour découvrir une faille ?
    Quoiqu'il en soit je n'ai pas compris les deux 0, ce sont des milli/micro secondes ?
    Merci d'avance

  4. #4
    Arzhur

    Re : Problème dans un algorithme

    Oui je peux

    As-tu essayé ton programme ? Avec les valeurs 58 secondes, 0 minute 0 heure par exemple

  5. A voir en vidéo sur Futura
  6. #5
    invite92fdbd33

    Re : Problème dans un algorithme

    J'ai compris !!! Si je mets 58 secondes , 0 minutes, 0 heures, le programme va ajouter 1 à 58 secondes qui va donner 59 et cela va causer l'éxécution d'une nouvelle instruction qui est :
    Si S=59 Alors
    s<---0
    m<---m+1
    Finsi

    Donc il aura sauté 2 secondes ....

    Merci !

  7. #6
    invite2d7144a7

    Re : Problème dans un algorithme

    Bonjour,

    Oui, et c'est le genre de vérification que tu aurais dû faire d'office, sans que quelqu'un t'y pousse.

    Lors de la conception d'un algorithme, il faut toujours vérifier les cas limites, qui sont souvent les points où ça se passe mal...

Discussions similaires

  1. Ecriture algorithme dans calculatrice ti
    Par invitee0843c85 dans le forum Mathématiques du collège et du lycée
    Réponses: 5
    Dernier message: 07/01/2014, 08h28
  2. Algorithme : division euclidienne dans Z
    Par invited36319e5 dans le forum Mathématiques du collège et du lycée
    Réponses: 8
    Dernier message: 19/10/2013, 09h15
  3. Rentrer un algorithme dans une calculatrice TI-82 Stat.
    Par inviteda302cda dans le forum Mathématiques du collège et du lycée
    Réponses: 25
    Dernier message: 04/10/2011, 21h09
  4. TPE : Algorithme utilisé dans la reconnaissance de l'iris
    Par invitec34d159c dans le forum Logiciel - Software - Open Source
    Réponses: 3
    Dernier message: 17/01/2010, 17h39
  5. algorithme dans Maxima
    Par invite9c69944f dans le forum Mathématiques du collège et du lycée
    Réponses: 5
    Dernier message: 03/05/2009, 14h37