Partage
  • Partager sur Facebook
  • Partager sur Twitter

Demande avis solution problème algorithme

    13 octobre 2024 à 1:25:14

    Bonjour,

    Je fais appel à vous pour un/des avis sur une solution à un algorithme.

    J'essaie de m'exercer le plus possible et le fais, entre autre, à partir du site Pise.

    Pour cet exercice :

    http://cours.pise.info/algo/enonces4.htm#En4.7

    Dont le corrigé est :

    http://cours.pise.info/algo/corriges4.htm#C4.7

    J'ai donné cette solution :

    Variables Age, Duree_Permis, Accident, Duree_Adhesion en entier
    Variables C1, C2, C3, C4, C5, C6, C7 en Booléen
    Début
    Ecrire "Quel âge avez-vous ?"
    Lire Age
    Ecrire "Date d'obtenrion du permis :"
    Lire Duree_Permis
    Ecrire "Combien d'accident avez-vous eu ?"
    Lire Accident
    Ecrire "Depuis quand êtes-vous adhérent ?"
    Lire Durée_adhésion
    C1 ← Age < 25 et Duree_Permis < 2 et Accident == 0
    C2 ← Age < 25 et Duree_permis > 2 ou Age > 25 et Duree_Permis <2 Accident == 0
    C3 ← Age < 25 et Duree_permis > 2 ou Age > 25 et Duree_Permis <2 Accident == 1
    C4 ← Age > 25 et Duree_Permis  >2 et Accident == 0
    C5 ← Age > 25 et Duree_Permis  >2 et Accident == 1
    C6 ← Age > 25 et Duree_Permis  >2 et Accident == 2
    C7 ← Duree_Adhesion > 5
    
    Si C1 ou C3 ou C6 Alors
      Ecrire “Tarif rouge"
    SinonSi (C1 et C7) ou (C3 et C7) ou (C6 et C7)
      Ecrire "Tarif orange"
    SinonSi C2 ou C5 Alors
      Ecrire “Tarif orange"
    SinonSi (C2 et C7) ou (C5 et C7) Alors
      Ecrire “Tarif vert"
    SinonSi C4 Alors
      Ecrire “Tarif vert"
    SinonSi C4 et C7 Alors
      Ecrire “Tarif bleu"
    Sinon
      Ecrire “Vous ne pouvez être assuré"
    FinSi
    Fin
    

    Je comprends la solution donnée sur le site, mais, apparemment, il peut y avoir d'autres solutions... A ce stade des exercices, j'ai plus de difficultés à évaluer si ma solution peut fonctionner bien qu'elle soit différente. Si vous vous y connaissez et pouvez me faire un retour (solution fonctionnelle ou pas, erreurs), je vous en serai reconnaissante.

    Merci !

    • Partager sur Facebook
    • Partager sur Twitter
      13 octobre 2024 à 11:38:13

      Bonjour,

      J'ai implémenté ton algorithme en langage Python, et ça m'a l'air

      de fonctionner ..

      Par contre, pour Duree_Permis, n'écris pas "date d'obtention du permis",

      mais plutôt

      "Depuis combien de temps avez-vous le permis : "

      ce n'est pas une date que l'on attend mais un nombre d'années

      (ou alors, tu saisi une date et tu calcule le nb d'années jusqu'à

      aujourd'hui  :-) :-) :-)  )

      -
      Edité par Phil_1857 13 octobre 2024 à 11:39:29

      • Partager sur Facebook
      • Partager sur Twitter
        13 octobre 2024 à 16:53:13

        Bonjour,

        Merci beaucoup pour ton retour.

        En effet, ma question est mal posée. C'est noté pour la modification à apporter.

        • Partager sur Facebook
        • Partager sur Twitter
          14 octobre 2024 à 18:03:19

          tu as oublié les "et" pour C2 et C3 avant la prise en compte accident (et penser que cette condition sur les accidents est valable pour les 2 types de conducteurs de ces 2 cas) (ligne 13 et 14)

          tu peux factoriser C7 pour les tests et pour moi une erreur sur tes 2 premiers tests

          ton test ligne 22 devient SinonSi (C1 ou C3 ou C6) et C7 et ce test ne sera valide du fait que le test précédent (Si C1 ou c3 ou C6) exclu la possibilité de faire celui-ci à cause du Sinon. 

          pourquoi ne pas fusionner/associer les tests qui mènent au même résultat (lignes 22 et 24 puis lignes 26 et 28

          • Partager sur Facebook
          • Partager sur Twitter
            15 octobre 2024 à 10:21:13

            Bonjour,

            Oui, c'est vrai qu'en écrivant le code Python, j'ai automatiquement rectifié ce qui n'allait pas ...

            (les et manquants, les 2 conditions donnant "tarif" vert", ...)

            • Partager sur Facebook
            • Partager sur Twitter
              18 octobre 2024 à 1:25:30

              Bonjour,

              Merci pour vos retours.

              Je travaille sur une correction mais je me rends compte que la structure de base est peut-être pas très pertinente (et je comprends mieux l'intérêt de celle donnée en correction).

              • Partager sur Facebook
              • Partager sur Twitter

              Demande avis solution problème algorithme

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              • Editeur
              • Markdown