Exercice du baccalauréat
Répondre à la discussion
Affichage des résultats 1 à 8 sur 8

Exercice du baccalauréat



  1. #1
    henryallen

    Exercice du baccalauréat


    ------

    Bonjour,

    Pour m'entraîner, j'ai souhaité essayer de faire un sujet du bac de maths, et j'ai fait celui de spécialité des Centres Étrangers Afrique S 2017. Dans le dernier exercice (celui de spé), à la question 5, on nous donne un algorithme que voici, et on nous demande de le faire tourner avec des valeurs initiales en particulier:

    enonce.JPG

    Et la réponse que l'on trouve dans le corrigé est celle-ci:

    corrige.JPG

    Ce qui me pose problème est la dernière ligne de l'algorithme: ne devrait-elle pas être alignée avec celle du dessus ? Parce que selon l'incrémentation de l'énoncé, je considère qu'à chaque tour de boucle, cette ligne doit être réalisée, qu'on ait m<n ou non.

    Ne comprenant pas, j'ai même réalisé un programme en python pour voir, et je trouve en effet qu'en utilisant la mise en forme de l'énoncé, les valeurs de m et n ne deviennent pas égales: m devient négatif et s'éloigne de 0, tandis que n fait pareil du côté des positifs. En revanche, en incrémentant la dernière ligne pour l'aligner avec la précédente, je retrouve bien la solution.

    Donc je n'arrive pas à comprendre où je fais une erreur. Même si ici ce n'est pas un programme dans le sens où il n'est pas écrit dans un langage informatique particulier, ne faut-il pas respecter l'indentation pour éviter toute ambigüité ?

    Merci d'avance et bonne journée

    -----

  2. #2
    Dynamix

    Re : Exercice du baccalauréat

    Salut

    Citation Envoyé par henryallen Voir le message
    ce n'est pas un programme dans le sens où il n'est pas écrit dans un langage informatique particulier
    Si tu traduis en Anglais , ça y ressemble bougrement .

  3. #3
    gg0
    Animateur Mathématiques

    Re : Exercice du baccalauréat

    Effectivement, comme l'indentation indique qu'on est dans une séquence particulière, il y a une erreur d'indentation.

    Cordialement.

  4. #4
    ansset
    Animateur Mathématiques

    Re : Exercice du baccalauréat

    Pour ma part, il s'agit d'un algorithme, préalable à toute forme de programmation ( qcq soit le programme utilisé )
    Je ne vois pas d'erreur indentation , car 'il ne s'agit que d'un algorithme.
    Elle pourrait apparaitre si l'algorithme était mal transcrit en tant que programme.
    " prend la valeur de" a un sens algorithmique, mais doit être transcrit proprement dans le cadre d'un qcq programme.
    y'a quelque chose qui cloche là dedans, j'y retourne immédiatement !

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

    Re : Exercice du baccalauréat

    Ansset, l'indentation a ici un sens, ça n'est pas juste un choix typographique, et ça modifie complètement l’algorithme.


    Dans l'énoncé original, l'instruction "m prend la valeur m-n" est exécutée à chaque tour de boucle

    Code:
    Tant que m != n
        Si m < n 
            Afficher "Gauche"
            n prend la valeur n-m
        Sinon
            Afficher "Droite"
        m prend la valeur m-n
    Dans l'algorithme correct, l'instruction "m prend la valeur m-n" n'est exécutée que si m >= n
    Code:
    Tant que m != n
        Si m < n 
            Afficher "Gauche"
            n prend la valeur n-m
        Sinon
            Afficher "Droite"
            m prend la valeur m-n

  7. #6
    gg0
    Animateur Mathématiques

    Re : Exercice du baccalauréat

    Heu .. Ansset,

    comment lis-tu le "m prend la valeur m-n" ? Comme suite au "sinon", ou bien comme suite au "si ... sinon ...". Comme les deux instructions suivant le "si" sont indentées un cran de plus, il est assez logique de considérer qu'une instruction non indentée après le sinon est au même rang, donc est en dehors de la partie conditionnelle. Et là, le programme ne s'arrête plus !
    Tout ça parce qu'il n'y a pas de "fin si", d'indicateur de fin de la partie conditionnelle.

    Cordialement.

  8. #7
    henryallen

    Re : Exercice du baccalauréat

    Merci pour toutes vos réponses, j’en venais vraiment à me demander où était l’erreur: si je me trompais ou si l’algorithme était incorrect.

    Bonne journée à vous tous

  9. #8
    ansset
    Animateur Mathématiques

    Re : Exercice du baccalauréat

    @Tryss:
    je ne vois pas de diff entre les deux encadrés, à part la tabulation maladroite du premier énoncé.
    la dernière ligne faisant pour moi naturellement partie du "sinon".

    quand à la fin de l'algorithme, elle est indépendante de sa structure, on peut décider d'arrêter quand on veut, selon le but suivi.
    bref, je ne vois tj pas de pb ….. algorithmique.(à part cette faute de tabulation qui peut induire en erreur )


    effectivement, pour faire propre, il eut été utile d'initier le process et de mettre un "tant que" , et à la fin un "fin si"

    plus une erreur de forme que de fond.
    Dernière modification par ansset ; 26/07/2018 à 17h47.
    y'a quelque chose qui cloche là dedans, j'y retourne immédiatement !

Discussions similaires

  1. Baccalauréat en Physique (B.Sc.)
    Par invitec509fccd dans le forum Orientation après le BAC
    Réponses: 3
    Dernier message: 20/05/2009, 13h47
  2. Annales baccalauréat
    Par bashad dans le forum Mathématiques du collège et du lycée
    Réponses: 1
    Dernier message: 22/11/2008, 10h29
  3. l'état du baccalauréat
    Par invite477a38fc dans le forum Orientation avant le BAC
    Réponses: 13
    Dernier message: 29/03/2008, 18h50
  4. Baccalauréat S
    Par invite91552492 dans le forum Mathématiques du collège et du lycée
    Réponses: 3
    Dernier message: 07/11/2007, 18h25
  5. Info Baccalauréat S
    Par invite4e552635 dans le forum Mathématiques du supérieur
    Réponses: 2
    Dernier message: 16/02/2006, 21h12