IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

Écrire une base de programme


Sujet :

Algorithmes et structures de données

  1. #1
    Nouveau candidat au Club
    Femme Profil pro
    étudiant
    Inscrit en
    Septembre 2021
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2021
    Messages : 1
    Par défaut Écrire une base de programme
    Bonjour je suis en pleine révisions de partiel (L1 info) et je suis bloqué sur cet exercice qui me perds complètement je ne vois pas du tout comment par où commencer. J'ai bien compris qu'il fallait utiliser des instructions conditionnelles mais je ne vois pas comment le rédiger. Si quelqu'un aurait le courage de me venir en aide ça serait gentil.

    Tatie Danièle a 2 neveux : Alphonse et Bébert. Ces deux garnements ont l’habitude de jouer des tours à leur tante, la dernière de leurs bêtises est le vol d’un pot de confiture. Mais cette fois-ci tatie Danièle a fait appel à un célèbre détective, Airloque Cholmaisse, qui lui a donné une recette presque infaillible pour trouver le ou les coupables : il suffit de poser deux questions aux garnements pour savoir, en fonction de leurs réponses ("OUI" ou "NON"), qui a commis la bêtise. Malheureusement tatie Danièle est trop stupide pour réussir à utiliser la méthode et se décide à payer très cher un spécialiste en IA pour lui faire un programme qui aura comme données RA1, RA2 et RB1, RB2 les réponses respectives d’Alphonse et de Bébert aux questions 1 et 2 et comme résultat l’affichage du nom du ou des neveux à punir selon la méthode du détective. Le spécialiste en IA n’arrivant finalement pas à faire le programme, il s’adresse à vous pour l’aider. Mais sachant que vous refuseriez d’être complice de la punition de l’un ou l’autre des neveux, il modifie le but de ce programme et vous fait croire que le résultat est l’affichage du nom du ou des neveux à récompenser.
    Voici donc ce que vous devez traduire en langage algorithmique : Dans le cas où Alphonse et Bébert ont tous les deux répondu "OUI" à la première question, s’ils ont répondu différemment à la seconde question c’est celui qui a répondu "OUI" à cette seconde question qui doit être récompensé, mais s’ils ont tous les deux fait la même réponse à la seconde question il est alors est impossible de savoir qui doit être récompensé (c’est la seule faille dans la méthode du détective). Par contre dans le cas où ils n’ont pas répondu tous les deux "OUI" à la première question, s’ils ont tous les deux répondu "OUI" à la seconde question ils doivent être récompensés tous les deux, mais sinon si Alphonse a répondu "NON" à la seconde question c’est lui qui doit être récompensé et sinon c’est Bébert qui doit l’être.
    1. Construire l’arbre de décision correspondant au problème.
    2. En déduire l’algorithme correspondant au problème.

  2. #2
    Membre expérimenté Avatar de Galet
    Homme Profil pro
    Consultant/Programmeur Robotique industrielle
    Inscrit en
    Mars 2010
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant/Programmeur Robotique industrielle

    Informations forums :
    Inscription : Mars 2010
    Messages : 325
    Par défaut
    Citation Envoyé par Lea80 Voir le message
    Dans le cas où Alphonse et Bébert ont tous les deux répondu "OUI" à la première question, s’ils ont répondu différemment à la seconde question c’est celui qui a répondu "OUI" à cette seconde question qui doit être récompensé, mais s’ils ont tous les deux fait la même réponse à la seconde question il est alors est impossible de savoir qui doit être récompensé (c’est la seule faille dans la méthode du détective). Par contre dans le cas où ils n’ont pas répondu tous les deux "OUI" à la première question, s’ils ont tous les deux répondu "OUI" à la seconde question ils doivent être récompensés tous les deux, mais sinon si Alphonse a répondu "NON" à la seconde question c’est lui qui doit être récompensé et sinon c’est Bébert qui doit l’être
    Bonjour Lea80,
    Pour simplifier la compréhension, je commencerai par simplifier le texte de l'algo proposé, en remplaçant Alphonse par "A", Bébert par"B", Oui par "O" et Non par "N".
    Tu ré-écris la même phrase soit, au début :

    Si A1=O et B1=O
    alors
    Si ...
    Alors...
    Sinon...
    sinon ...

    Tu y verra plus clair ce qui te permettra de mettre en forme et de répondre à la demande.
    Belle journée,

  3. #3
    Membre très actif
    Avatar de APL-AML
    Homme Profil pro
    Développeur Gestion (Retraité)
    Inscrit en
    Juin 2020
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur Gestion (Retraité)
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2020
    Messages : 54
    Billets dans le blog
    89
    Par défaut Structurer sa réflexion
    Je ne devrais pas faire l’exercice à ta place mais je ne résiste pas à faire un peu de pédagogie LCP (Logique de Construction de Programme).
    Il y a plusieurs façons de représenter visuellement un Arbre de décision. Il n’y a que toi qui sais sous quelle forme tu dois le représenter.

    Un Arbre de décision peut prendre la forme d’un Algorigramme qui lui aussi peut être représenté de différentes façons.

    Je te propose un algorigramme à base de structures alternatives qu’il t’appartient de représenter sous la forme d’Arbre de décision conforme à ce qui est attendu.

    Il te restera à déduire l’algorithme correspondant au problème, autrement dit à traduire l’algorigramme (ou plutôt ton arbre de décision) en pseudo langage…

    Algorigramme

    Pour réaliser mes algorigrammes, je m’arrange toujours pour faire en sorte que mes alternatives aient la branche "OUI" à droite et la branche "NON" à gauche. Cela suppose de poser la question adéquate donc d’interpréter parfois l’énoncé.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
      A = Alphonse
      B = Bébert
    RA1 = Réponse Alphonse à la 1ère question  
    RB1 = Réponse Bébert   à la 1ère question  
    RA2 = Réponse Alphonse à la 2ème question  
    RB2 = Réponse Bébert   à la 2ème question  
      ? = Impossible de savoir qui doit être récompensé
      Ø = ensemble vide = FINSI
                                                                                ┌─────────────────────┐
                                                                         D-PROG │   RA1=RB1= "OUI"    │
                                                                            non └──────────┬──────────┘ oui
                                                               ┌───────────────────────────●───────────────────────────────────────────────────────┐
                                                    ┌──────────┴──────────┐                                                             ┌──────────┴──────────┐
                                                    │   RA2=RB2= "OUI"    │                                                             │      RA2 = RB2      │
                                                non └──────────┬──────────┘ oui                                                     non └──────────┬──────────┘ oui
                                   ┌───────────────────────────●─────────────┐                                         ┌───────────────────────────●─────────────┐
                        ┌──────────┴──────────┐                              │                              ┌──────────┴──────────┐                              │
                        │      RA1 = "OUI"    │                              │                              │      RB2 = "OUI"    │                              │
                    non └──────────┬──────────┘ oui                          │                          non └──────────┬──────────┘ oui                          │
                     ┌─────────────●─────────────┐                           │                           ┌─────────────●─────────────┐                           │
         ┌───────────┴───────────┐   ┌───────────┴───────────┐   ┌───────────┴───────────┐   ┌───────────┴───────────┐   ┌───────────┴───────────┐   ┌───────────┴───────────┐
         │    A est récompensé   │   │    B est récompensé   │   │A et B sont récompensés│   │   A est récompensé    │   │   B est récompensé    │   │           ?           │
         └───────────┬───────────┘   └───────────┬───────────┘   └───────────┬───────────┘   └───────────┬───────────┘   └───────────┬───────────┘   └───────────┬───────────┘
                     └─────────────┬─────────────┘                           │                           └─────────────┬─────────────┘                           │
                        ┌──────────┴──────────┐                              │                              ┌──────────┴──────────┐                              │
                        │          Ø          │                              │                              │          Ø          │                              │
                        └──────────┬──────────┘                              │                              └──────────┬──────────┘                              │
                                   └────────────────────────────┬────────────┘                                         └───────────────────────────┬─────────────┘
                                                     ┌──────────┴──────────┐                                                            ┌──────────┴──────────┐
                                                     │          Ø          │                                                            │          Ø          │
                                                     └──────────┬──────────┘                                                            └──────────┬──────────┘
                                                                └──────────────────────────┬───────────────────────────────────────────────────────┘
                                                                                ┌──────────┴──────────┐
                                                                        F-PROG  │          Ø          │
                                                                                └─────────────────────┘    
    
    Pseudo langage
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    SI RA1 = "OUI"
    ET RA2 = "OUI"
    ALORS SI RA2 = RB2
             ALORS "Impossible de savoir qui doit être récompensé"
          SINONFINSI
    SINONFINSI
    Ce serait maintenant intéressant que tu nous proposes ta version d’Arbre de décision et ton algorithme (pseudo langage).

Discussions similaires

  1. Réponses: 3
    Dernier message: 24/09/2018, 20h53
  2. exercice pour écrire une routine (sous-programme)
    Par dragonno dans le forum Humour Informatique
    Réponses: 2
    Dernier message: 19/04/2013, 11h32
  3. [MySQL] Recherche d'un script pour lire/écrire une base systeme
    Par WhoIsTiti dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 23/03/2009, 17h06
  4. écrire une base avec 4 fichiers
    Par casavba dans le forum Windows Forms
    Réponses: 7
    Dernier message: 09/12/2007, 01h28
  5. création d'une base de donnée par programme
    Par lassad dans le forum Bases de données
    Réponses: 9
    Dernier message: 18/10/2005, 16h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo