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

C++ Discussion :

occurence nombre dans fichier, lg c++


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Femme Profil pro
    étudiante
    Inscrit en
    Juin 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : étudiante

    Informations forums :
    Inscription : Juin 2014
    Messages : 6
    Par défaut occurence nombre dans fichier, lg c++
    Bonsoir

    je suis débutante en c++,

    j'ai par exemple un fichier.txt rempli de cette façon

    1 5 8 99

    3 66 4 5

    5 0 66 7

    je veux écrire une fonction qui affiche pour chaque nombre son occurrence?sachant que pour cette

    fonction je peu changer le fichier d'entrée (ça veu dire les nombre peut changer)

    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
    // fichier a parcourir
    ifstream lire("base.txt");
    int c;
    int occ = 0 ;
     
    while(!lire.eof())
    {
          lire >> c; 
     
                if(c.compare(lire) == 0)
                {
                      occ++;
                }
          }
     
     
          cout << c <<<<occ<< endl;
     
     
          }
     
          occurence =0;
    }
    comment je peud traiter la fonctionne compare aussi? il n'a pas une fonctionne identifier dan c++.

  2. #2
    Membre émérite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2014
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 345
    Par défaut
    Bonjour,

    Citation Envoyé par henda333 Voir le message
    je suis débutante en c++ ,aider moi !!
    -1 ?

    je veux écrire une fonction qui affiche pour chaque nombre son occurrence
    Par ligne ou pour tout le fichier ?

    comment je peud traiter la fonctionne compare aussi
    J'ai pas trop compris en lisant le code ce qu'est censée faire cette fonction compare ...

    Il y a sûrement beaucoup plus optimisé, mais étant donné que tu es une débutante, je te conseille d'aller faire un tour du côté de std::map qui permet grosso-modo de faire des tableaux associatifs. Tu définis un tableau associant un nombre (int) à un nombre d'occurences (int ou unsigned), et à chaque nombre N que tu lis sur le fichier, tu regardes s'il est déjà dans le tableau ; s'il ne l'est pas, tu crées un nouvel élément associant N à 1 (c'est la première occurrence, il y en a donc une), et sinon, tu incrémentes le compteur d'occurrences.
    Une fois tout le fichier traité, tu parcours ton tableau et pour chaque élément de ce tableau, tu affiches le nombre suivi de son nombre d'occurrences.

  3. #3
    Membre émérite

    Homme Profil pro
    Non disponible
    Inscrit en
    Décembre 2012
    Messages
    478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Non disponible

    Informations forums :
    Inscription : Décembre 2012
    Messages : 478
    Billets dans le blog
    1
    Par défaut
    std ::map serait parfait si le professeur était d’accord…

    C'est des lycées ou des filières universitaires qui demandent ce type d'exercice ?
    Le développement est une option ?

    Sinon pourquoi des gens ayant ce genre de cours sont à ce point sans motivation ??

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 147
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 147
    Billets dans le blog
    4
    Par défaut
    Il s'agit d'un exercice des plus simples, et il est souvent passer par ce forum donc l'utilisation de la fonction recherche pourrait t'aider.

    Sinon il faudrait commencer par travailler un minimum... ton code ne compile même pas. c.compare ? Vraiment ? c est un int.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  5. #5
    Expert éminent

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 202
    Par défaut
    On peut te macher le travail encore un peu plus avec le classique "lis la doc": std::map

    Si tu as un papier, un crayon et les données, comment vas-tu t'y prendre?

  6. #6
    Membre émérite
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2014
    Messages
    345
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 345
    Par défaut
    Tiens d'ailleurs, si on suit le lien proposé par leternel, dans la doc pour operator[] (), un exemple est donné et est très (trop) ressemblant au sujet de la discussion ... On peut pas plus t'aider.

  7. #7
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Par défaut
    Un petit programme que je donne en exemple dans mon premier cours de C++, et qui fait quasiment ce qui t'est demandé :

    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
    #include <map>
    #include <string>
    #include <fstream>
    #include <iostream>
    #include <iomanip>
     
    using namespace std;
     
    int main()
    {
    	ifstream is("cyrano.txt");
    	string mot;
     
    	map<string, int> compteMots;
    	while (is >> mot)
    	{
    		compteMots[mot]++;
    	}
    	for(auto p : compteMots)
    	{
    		if (p.second > 5)
    		{
    			cout << setw(20) <<  p.first << '\t'
    				<< p.second << endl;
    		}
    	}
    }
    À toi de le comprendre et de l'adapter
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

  8. #8
    Membre du Club
    Femme Profil pro
    étudiante
    Inscrit en
    Juin 2014
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : étudiante

    Informations forums :
    Inscription : Juin 2014
    Messages : 6
    Par défaut
    ok merci j'essaie

    Citation Envoyé par PilloBuenaGente Voir le message
    std ::map serait parfait si le professeur était d’accord…

    C'est des lycées ou des filières universitaires qui demandent ce type d'exercice ?
    Le développement est une option ?

    Sinon pourquoi des gens ayant ce genre de cours sont à ce point sans motivation ??
    au garderie
    écris-le si c'est facile !!!

Discussions similaires

  1. Lire seulement nombre dans fichier .dat
    Par tomahawk.l dans le forum MATLAB
    Réponses: 9
    Dernier message: 24/06/2011, 19h30
  2. [fichier_texte]Modif nombres dans fichier texte
    Par begginner dans le forum VBA Word
    Réponses: 3
    Dernier message: 22/07/2010, 23h23
  3. grands nombre dans fichiers csv xls
    Par laurent.c123 dans le forum Documents
    Réponses: 3
    Dernier message: 09/07/2007, 22h28
  4. Réponses: 6
    Dernier message: 11/02/2005, 06h41
  5. Problème lecture de nombre dans un fichier en c++
    Par knecmotet dans le forum C++
    Réponses: 1
    Dernier message: 28/10/2004, 15h48

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