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 :

fréquence dans un tableau


Sujet :

Algorithmes et structures de données

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 25
    Points : 13
    Points
    13
    Par défaut fréquence dans un tableau
    bonjour
    j'ai un souci. J'ai un tableau de note( entieres de 0 à20) j'ai également notes[1..500] : entiers // contient une succession de notes comprises entre 0 et20.
    Taille: entier // qui est le nb de lignes remplies dans le tableau .

    On me demande d'écrire l'algo qui permet d'afficher pour chaque note possible (donc de 0 à 20) la fréquence d'apparition de cette note dans le tableau notes (qui n'est pas trié et ne doit pas l'être).
    Comment faire ?

    Merci

  2. #2
    Membre émérite
    Avatar de prgasp77
    Homme Profil pro
    Ingénieur en systèmes embarqués
    Inscrit en
    Juin 2004
    Messages
    1 306
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur en systèmes embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 306
    Points : 2 466
    Points
    2 466
    Par défaut
    Bonjour,
    la méthode la plus simple est d'initialiser un tableau t de 21 entiers à zéro. On parcours le tableau des 500 notes une fois, et pour chaque note n on incrémente l'entier t[n].

    Une fois fini, la fréquence de la note n est l'entier t[n] ou t[n]/500 selon le sens que l'on donne à fréquence.

    Cordialement,
    -- Yankel Scialom

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 25
    Points : 13
    Points
    13
    Par défaut
    merci , mais si tu peux développer...

  4. #4
    Membre émérite
    Avatar de prgasp77
    Homme Profil pro
    Ingénieur en systèmes embarqués
    Inscrit en
    Juin 2004
    Messages
    1 306
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur en systèmes embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 306
    Points : 2 466
    Points
    2 466
    Par défaut
    L'étape suivante est l'implémentation, je ne peux pas vraiment développer ... Si un point ou du vocabulaire te semble confus n'hésite pas à poser des questions, mais je ne ferai pas l'exercice à ta place
    -- Yankel Scialom

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 25
    Points : 13
    Points
    13
    Par défaut
    ok c'est normal: que penses tu de ma solution:
    Lexique :
    • notes (tableau [1..500] d'entier, saisi)) : tableau contenant les entiers saisis
    • valeurs (tableau [0..20] d'entier, saisi) tableau contenant les valeurs des notes.
    • taille (fonction) résultat entier : fonction qui retourne le nombre effectif
    • i, n (entier, calculé) : compteurs d’itération, indices
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Début 
        // initialisation du tableau valeurs
        Valeurs[n]0
        // incrémentation de valeurs
        Pour n de 0 à taille (valeur) Faire 
            Si notes[i] = n Alors
                valeurs[n] ←valeurs [n] +1 
            FinSi
        FinPour	
        Si valeur[n] <>0 Alors	
            Afficher ("fréquence=",  valeurs[n]/ taille (notes)) 
        FinSi
    Fin

  6. #6
    Membre émérite
    Avatar de prgasp77
    Homme Profil pro
    Ingénieur en systèmes embarqués
    Inscrit en
    Juin 2004
    Messages
    1 306
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur en systèmes embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 306
    Points : 2 466
    Points
    2 466
    Par défaut
    Citation Envoyé par netchou Voir le message
    ok c'est normal: que penses tu de ma solution:
    Lexique :
    • notes (tableau [1..500] d'entier, saisi)) : tableau contenant les entiers saisis
    • valeurs (tableau [0..20] d'entier, saisi) tableau contenant les valeurs des notes.
    • taille (fonction) résultat entier : fonction qui retourne le nombre effectif
    • i, n (entier, calculé) : compteurs d’itération, indices
    Ton lexique me semble approprié.

    Valeurs[n] ←0
    Ici, tu dois bien comprendre qu'il faut initialiser à zéro chacune des 21 valeurs de ton tableau. Une boucle for serait donc tout à fait adaptée (pour i = 0..21, Valeurs[i]<--0)

    Pour n de 0 à taille(valeur) Faire
    Si notes[i] = n Alors
    valeurs[n] ←valeurs [n] +1
    FinSi
    FinPour
    Non, il faut boucler sur tes notes, donc pour i = 1..500(=taille(notes)), il faut incrémenter Valeurs[notes[i]]

    Si valeur[n] <>0 Alors
    Afficher ("fréquence=", valeurs[n]/ taille (notes))
    FinSi
    Le "Si" est ici inutile. Étant donné que tu ne divises pas par Valeurs[n], le fait que cet entier soit nul n'est pas un cas particulier. Ainsi, la fréquence de la note n est le réel Valeur[n]/taille(notes).

    Cordialement,
    -- Yankel Scialom

  7. #7
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 25
    Points : 13
    Points
    13
    Par défaut
    c'est pas mieux ?
    Lexique :
    • notes (tableau [1..500] d'entier, saisi)) : tableau contenant les notes saisies
    • taille (fonction) résultat entier : fonction qui retourne le nombre effectif
    • nbOcc (entier, calculé): nb d'occurrence dans le tableau notes
    • i, n (entier, calculé) : compteurs d’itération, indices
    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
     
    Début 
        // initialisation du tableau valeurs
        nbOcc ←0
        // Incrémentation de valeurs
        Pour n de 0 à taille (notes)
            Pour i de 0 à 20 Faire 
                Si notes[i] = n Alors
                    nbOcc←nbOcc+1
                    valeurs [notes[i]] ←valeurs [n] +1 
                FinSi
            FinPour 
        FinPour 
        Afficher ("fréquence=", valeurs [notes[i]]/ taille (notes)) 
    Fin

  8. #8
    Membre émérite
    Avatar de prgasp77
    Homme Profil pro
    Ingénieur en systèmes embarqués
    Inscrit en
    Juin 2004
    Messages
    1 306
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur en systèmes embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 306
    Points : 2 466
    Points
    2 466
    Par défaut
    Bonjour,
    il y a toujours quelques soucis avec ton algo :
    Ici "Si notes[i] = n Alors" une petite erreur : tu as confondu i et n ^^
    Ta variable nbOcc ne te sert à rien : tu la modifies puis tu ne la lis pas
    Tu lis 21 fois chaque note du tableau, ce qui est inutile.

    Je te conseille de reprendre mon premier message, et de faire l'exercice "de tête" ou sur papier avec un petit nombre de notes (disons 5). Tu devrais alors comprendre tes erreurs.

    Sinon, essaie d'utiliser les balises [code] afin de formater ton algo, Pseudocode passe derrière toi à chaque fois pour mettre ton texte en forme.

    Bon courage.
    -- Yankel Scialom

  9. #9
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Points : 9 860
    Points
    9 860
    Par défaut
    Juste pour la petite histoire, c'est exactement le principe des histogrammes en analyses d'images.
    Consignes aux jeunes padawans : une image vaut 1000 mots !
    - Dans ton message respecter tu dois : les règles de rédaction et du forum, prévisualiser, relire et corriger TOUTES les FAUTES (frappes, sms, d'aurteaugrafe, mettre les ACCENTS et les BALISES) => ECRIRE clairement et en Français tu DOIS.
    - Le côté obscur je sens dans le MP => Tous tes MPs je détruirai et la réponse tu n'auras si en privé tu veux que je t'enseigne.(Lis donc ceci)
    - ton poste tu dois marquer quand la bonne réponse tu as obtenu.

  10. #10
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 25
    Points : 13
    Points
    13
    Par défaut Algo sur la fréquence des notes
    Bonjour,

    Voici ma correction, merci de m'indiquer si il y a encore des erreurs.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    [Algorithme]:
        Pour n de [0..20] Faire 
            valeurs[n] <-- 0
        Fin Pour
        Pour i de 0 à taille(notes) faire
            Si notes[i] <--n Alors
                valeurs[n] <-- valeurs[n]+1
            FinSi
        Fin Pour
        Afficher (" La fréquence =  ", ((valeurs[n]/taille(notes))*100, "  %")
    Fin

  11. #11
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 25
    Points : 13
    Points
    13
    Par défaut algorithmique
    Merci de m'excuser de mes erreurs, qui paraissent pour certains inadmissibles.
    Mais je débute et j'essai de me former à l'informatique. En autodidacte.
    A+

  12. #12
    Membre émérite
    Avatar de prgasp77
    Homme Profil pro
    Ingénieur en systèmes embarqués
    Inscrit en
    Juin 2004
    Messages
    1 306
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur en systèmes embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 306
    Points : 2 466
    Points
    2 466
    Par défaut
    On commence à s'approcher de quelque chose de correct, je dirais même plus, on en est à une ligne !! Celle-ci : "Si notes[i] <--n Alors"

    Que signifie cette ligne ? Si l'affectation de notes[i] par n fonctionne ? Mais que vaut n ? il a été défini dans le cadre de la boucle précédente, et la variable n'a plus de raison d'être.
    Tu t'obstines à vouloir tester la valeur de ta i-ième note, mais cela n'est pas nécessaire, quelqu'elle soit, tu dois incrémenter valeurs[notes[i]].

    Je pense que ce double indexage te pose problème, par principe. Je vais essayer de te fournir un exemple. Nous avons les notes suivantes (pour simpllifier, disons qu'elles vont de 1 à 6, comme en Allemagne) :
    notes = {1,6,2,3,5,6,6}
    On initialise notre tableau nous servant à compter
    valeurs = {0,0,0,0,0,0} (on commence à compter à 1 pour l'exemple toujours)

    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
     
    On commence :
    i=0
    notes[i]=1
    valeurs[notes[i]]=valeurs[1], on l'incrémente ---> valeurs = {1,0,0,0,0,0}
    ---
    i=1
    notes[i]=6
    valeurs[notes[i]]=valeurs[6] --> valeurs = {1,0,0,0,0,1}
    ---
    i=2
    notes[i]=2
    valeurs[notes[i]]=valeurs[2] --> valeurs = {1,1,0,0,0,1}
    ---
    i=3
    notes[i]=3
    valeurs[notes[i]]=valeurs[3] --> valeurs = {1,1,1,0,0,1}
    ---
    i=4
    notes[i]=5
    valeurs[notes[i]]=valeurs[5] --> valeurs = {1,1,1,0,1,1}
    ---
    i=5
    notes[i]=6
    valeurs[notes[i]]=valeurs[6] --> valeurs = {1,1,1,0,1,2}
    ---
    i=5
    notes[i]=6
    valeurs[notes[i]]=valeurs[6] --> valeurs = {1,1,1,0,1,3}
    On s'est contenté d'incrémenter pour chaque i l'entier valeurs[notes[i]] car notes[i] représente l'index dans le tableaux valeurs (le nombre d'occurences de la note n est valeurs[n] et la i-ième note est notes[i], donc le nombre d'occurences de la i-ème note est valeurs[notes[i]]).

    J'espère ne pas en avoir trop fait , mais pense à entourer ton code par [code] et [_/code] (sans l'underscore) afin de le formater.
    -- Yankel Scialom

  13. #13
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 25
    Points : 13
    Points
    13
    Par défaut
    Si j'ai bien compris ce devrait donner celà !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    [Algorithme]:
        Pour n de [0..20] Faire 
            valeurs[n] <-- 0
        Fin Pour
        Pour i de 0 à taille(notes) faire
            Si notes[i] <--n Alors
                valeurs[notes[i]] <-- valeurs[n]
                notes[i]<--notes[i]+1  
          FinSi
        Fin Pour
        Afficher (" La fréquence =  ", ((valeurs[n]/taille(notes))*100, "  %")
    Fin
    Es-tu d'accord ?

    Merci pour ton développement, tu n'as pas été trop loin!!!

  14. #14
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 25
    Points : 13
    Points
    13
    Par défaut Erreur!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Début
    Pour n de 0 à 20 Faire
    valeurs[n]0
    Fin Pour
    Pour i de 0 à taille (notes) Faire
    	Si notes[i] ← n Alors
    		valeurs[notes[i]] ←valeurs[n]
    		notes[i] ←notes[i] +1
                              Somme← valeurs[n]+n
    	FinSi
    Fin Pour
    Afficher ("La fréquence =", ((valeurs [n] / Somme)*100, "  %")
    Fin
    J'ai rajouté Somme car pour calculer la fréquence normalement c'est le nombre de fois qu'apparait le même chiffre divisé par la somme de tous les chiffres.
    je crois que c'est plus fonctionnel.
    Donc j'incrémente le tableau notes.

  15. #15
    Membre émérite
    Avatar de prgasp77
    Homme Profil pro
    Ingénieur en systèmes embarqués
    Inscrit en
    Juin 2004
    Messages
    1 306
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur en systèmes embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 306
    Points : 2 466
    Points
    2 466
    Par défaut
    Tu étais bien plus proche de la solution dans ton message #11.
    N'oublie pas qu'une variable définie dans le cadre d'une boucle n'a pas vraiment de sens en dehors. Ainsi, tu utilises n dans ta boucle d'initialisation du tableau valeurs ; puis tu réutilises cette variable, que représente-t-elle ?

    Tu t'obstines à vouloir tester la valeur de notes[i], mais encore une fois quelque soit sa valeur, on en fait la même chose. Demande toi comment tu ferais pour résoudre ce problème sans ordinateur. Pour ma part, je prendrais une feuille, je ferais 21 cases sur lesquelles je noterais le numéro correspondant (0 à 20) et à chaque fois que je lirais une note, j'ajouterais un petit bâton dans la case appropriée. C'est exactement l'algorithme que tu dois écrire, la feuille représente le tableau que tu as appelé valeurs, et ajouter un bâton revient à incrémenter un entier du tableau (incrémenter signifie ajouter 1).

    L'initialisation du tableau valeurs est correcte. Ne pas y toucher.
    Ensuite, ne plus réutiliser la variable n qui n'as plus aucun sens une fois sorti de cette boucle.
    Enfin, pour chaque note notes[i] (donc pour i allant de 0 à taille(notes)), incrémenter valeurs[notes[i]] et FIN !
    Il ne te reste plus qu'à afficher les différentes fréquences, mais ça on y reviendra après.

    Encore un effort, et pour chaque instruction, tente de comprendre ce qu'elle implique et représente.
    -- Yankel Scialom

  16. #16
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 25
    Points : 13
    Points
    13
    Par défaut
    Bon je remplace notes[i] par valeurs[notes[i]]!
    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
    Début
    Pour n de 0 à 20 Faire
    valeurs[n]0
    Fin Pour
    Pour i de 0 à taille (notes) Faire
    	Si notes[i]  ← i Alors
               	valeurs[notes[i]]←valeurs[notes[i]] +1
                 FinSi
    Fin Pour
     Pour n de 0 à 20 Faire
     Somme← n+n
     valeurs[n]<-valeurs[n]+1
     Afficher ("La fréquence de ", n, " = " ,((valeurs [n] / Somme)*100, "  %")
      Fin Pour
    Fin
    OK a chaque fois je refais l'algorithme à la main!

  17. #17
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 25
    Points : 13
    Points
    13
    Par défaut
    bonsoir,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Pour i de 0 à taille (notes) Faire
    	Si notes[i]  ← valeurs[n] Alors
    est-ce que cela n'est pas plus logique par rapport à ton message avec algo en exemple.

  18. #18
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Bonjour,

    Citation Envoyé par netchou Voir le message
    Bon je remplace notes[i] par valeurs[notes[i]]!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Début
    Pour n de 0 à 20 Faire
    valeurs[n] ← 0
    Fin Pour
    Pour i de 0 à taille (notes) Faire
    	Si notes[i]  ← i Alors
               	valeurs[notes[i]]←valeurs[notes[i]] +1
                 FinSi
    Fin Pour
    Les lignes en rouges sont inutiles et fausses, il faut les supprimer. Selon toi, à quoi servait ces lignes??
    Citation Envoyé par netchou Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     Pour n de 0 à 20 Faire
     Somme← n+n
     valeurs[n]<-valeurs[n]+1
     Afficher ("La fréquence de ", n, " = " ,((valeurs [n] / Somme)*100, "  %")
      Fin Pour
    Fin
    Pourquoi ajoutes-tu 1 à chaque valeur de ton tableau? A moins que tu aies une bonne raison,, il faut supprimer cette ligne...
    Pour la fréquence, pourquoi divises-tu par 2*n??
    On obtient la fréquence en divisant le nombre d'apparition d'une valeur par le nombre total d'éléments (ici ce nombre total d'éléments est "taille (notes)").
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  19. #19
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 361
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 361
    Points : 20 381
    Points
    20 381
    Par défaut
    Salut une autre solution c'est de trier en ordre croissant ( ou bien décroissant ) le tableau notes[1..500].
    Puis par exemple tu peux tout simplement voir à quelle fréquence apparait les nombres 0,1,2 etc
    Par exemple tu vas compter tant que la note==0, puis tant que la note==1, ainsi de suite..
    Avec C++ et STL pour programmer cela,ça se fait en quelques minutes

  20. #20
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 25
    Points : 13
    Points
    13
    Par défaut
    Bonjour,
    Suite à tes remarques:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Début
    Pour n de 0 à 20 Faire
    valeurs[n]0
    Fin Pour
     
    Pour i de 0 à taille (notes) Faire
    valeurs[notes[i]]←valeurs[notes[i]] +1
    Fin Pour
     
     Afficher ("La fréquence de ", n, " = " ,((valeurs [n] / taille(notes))*100), "  %")
      Fin
    Si j'ai bien compris le code s'écrit de cette façon !

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. alterner les couleurs dans un tableau avec xsl
    Par Eithelgul dans le forum XSL/XSLT/XPATH
    Réponses: 14
    Dernier message: 03/05/2015, 23h29
  2. Calculer une fréquence dans un tableau croisé dynamique
    Par SteffieLili dans le forum QlikView
    Réponses: 1
    Dernier message: 27/05/2014, 16h18
  3. [Tableaux] fréquence d'un élément dans un tableau
    Par php_de_travers dans le forum Langage
    Réponses: 4
    Dernier message: 11/12/2007, 08h35
  4. Réponses: 4
    Dernier message: 10/10/2003, 18h04
  5. verification de doublons dans un tableau
    Par bohemianvirtual dans le forum C
    Réponses: 11
    Dernier message: 25/05/2002, 12h21

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