Aide a un exercice en algorithme

does01 Messages postés 128 Statut Membre -  
 grad -
Bonjour,
j'ai trouve un problém a ce exercice si tu propose un solution le bienvenu merci voici l'exercice
on veut afficher la reponse à une demande d'assurence vie
les régles sont:
* un demandeur de moins de 30ans en excellente santé et n'ayant jamais eu d'accident obtient un contrat de type A
*si le demandeur est en mauvaise santé ou a déja ey un accident alorrs une expertise médecale est demandée on diffère alors la réponse
*si le demandeur est eu en mauvaise santé et a déja eu un accident alors le contrat est refusé
*si le demandeur à plus de 30ans on applique les mêmes conditions mais cette fois le contrat sera de type B

merci de votre aide
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. does01 Messages postés 128 Statut Membre 12
     
    merci de votre aide je croit que la solution est vrai
    merci mon ami
    0
  2. grad
     
    Il y a une erreur dans l'exercice (erreur logique) :
    *si le demandeur est en mauvaise santé ou a déja ey un accident alorrs une expertise médecale est demandée on diffère alors la réponse
    *si le demandeur est eu en mauvaise santé et a déja eu un accident alors le contrat est refusé

    Ben si tu dis OU , ça entre aussi mauvase santé ET accident
    il faut remplacer le OU par un OU exclusif ( de signe + dans un cercle) ou XOR
    ----> A moins que ça ne soit un abus de language

    J'ai un algorithme plus précis qui corrige l'erreur:

    Algorithme Assurance;
    Variables age:entier;
    etat_ste,accident,type_contrat,livraison,expertise: expressions booléennes;

    Début
    Si etat_ste= Faux (mauvaise santé) ET accident=Vrai ( il y a un accident) Alors livraison <= Faux;
    Sinon Si etat_ste= FAUX (mauvaise santé) XOR accident=Vrai ( il y a un accident) Alors Si expertise=VRAI ( l'expertise ordonne OUI)
    livraison <= Vrai;
    Sinon livraison <= FAUX;
    Finsi;
    Sinon livraison:=VRAI;
    Finsi;
    Finsi;
    Si livraison:=VRAI
    Si age<30 Alors
    type_contrat=VRAI ( contrat A);
    Sinon type_contrat=FAUX ( contrat B);
    Finsi;
    Sinon

    ************FIN,PAS DE CONTRAT**************
    finsi;
    Fin.
    0
  3. Archeus01 Messages postés 1566 Date d'inscription   Statut Membre Dernière intervention   455
     
    si age<30 alors
    ----si (santé = bonne et accident=jamais) alors afficher "contrat de type A"
    ---- sinon si (santé=bonne ou accident=jamais) alors afficher "experiste médicale demandée"
    ---- sinon afficher "contrat refusé"
    sinon

    ---- si (santé = bonne et accident=jamais) alors afficher "contrat de type B"
    ---- sinon si santé=bonne ou accident=jamais) alors afficher "experiste médicale demandée"
    ---- sinon afficher "contrat refusé"

    c'est une des réponces possibles. On aurait aussi pu mettre le A et le B dans une variable avec la condition sur age chechéeavant.
    les ---- marquent l'indentation.
    -1