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 :

Convertir des intervalles en scores


Sujet :

Algorithmes et structures de données

  1. #1
    Candidat au Club
    Convertir des intervalles en scores
    Bonjour,

    Voici mon tout premier post. Je débute dans la programmation et je m'invente des petits exercices.
    Je souhaiterais "convertir" des intervalles en score.

    Je souhaite partir d'une base de données comprenant un nombre aléatoire d'entiers compris entre 1 et 200.

    a=chiffre aléatoire
    si 1<a>50 alors a donne 10 points
    si 50<=a>=100 alors a donne 60 points
    si 100<a>=200 alors a donne 80 points

    Voici ce que j'ai fait :
    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
    DÉBUT
        ECRIRE "nbre de chiffres :"
        LIRE nbre
        A=10
        B=60
        C=80
        ECRIRE "Entrez chiffre:"
        POUR i=1 jusquà nbre FAIRE
        LIRE score[i]
            SI score[i]>0 ET score[i]<50 ALORS
            score[i]=A
            ECRIRE "le score est de :", A
            SINON SI score[i]>=50 ET score[i]<=100 ALORS
            score[i]=B
            ECRIRE "le score est de :", B
            SINON SI score[i]>100 ET score[i]<=200 ALORS
            score[i]=C
            FINSI
        FINPOUR
    FIN

    Je souhaiterai ensuite savoir combien il y a de A, de B et de C et ensuite les additionner pour avoir un score final. Comment puis-je faire ?

    Merci pour votre aide

  2. #2
    Membre éclairé
    Tu mélanges données et résultats (chiffres et scores), et tu écris en dur des choses qui devraient être en variable (les scores).
    En reprenant tes notations, il vaudrait mieux faire :

    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
    DEBUT
    A=10
    B=60
    C=80
     
    ECRIRE "nbre de chiffres :"
    LIRE nbre
    ECRIRE "Entrez chiffre:"
     
    POUR i=1 jusqu’à nbre FAIRE
      LIRE chiffre[i]
      SI chiffre[i]>0 ET chiffre[i]<50 ALORS
        score[i]=A
      SINON SI chiffre[i]>=50 ET chiffre[i]<=100 ALORS
        score[i]=B
      SINON SI chiffre[i]>100 ET chiffre[i]<=200 ALORS
        score[i]=C
      FINSI
      ECRIRE "le score est de :", score[i]
    FINPOUR
     
    FIN


    Pour le nombre de A, B, C, et la somme des scores, tu peux travailler à posteriori avec le tableau score, ou bien inclure ce traitement dans la boucle : qu'est-ce qui te pose problème ?

  3. #3
    Membre habitué
    Un "score" est une addition de résultats;
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
     
      SI chiffre[i]>0 ET chiffre[i]<50 ALORS
        résultat[i]=A: scoreA = scoreA + 1
    Savoir pour comprendre et vice versa.

  4. #4
    Candidat au Club
    Merci pour ces réponses. J'ai utilisé les bons termes et scoreA=scoreA+1... Je parviens à ce que je veux mais je pense pouvoir faire plus simple. Je vais y réfléchir!

###raw>template_hook.ano_emploi###