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 :

Fichier noms aléatoires


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2007
    Messages : 13
    Par défaut Fichier noms aléatoires
    Bonjour,

    j'ai un projet en programmation a faire, et un problème se pose.
    En effet, je voudrais creer des personnages mais ces persos n'auraient pas le meme nom.
    J'ai donc creer un fichier "nom_aleatoire.txt" recensant tous les noms que je voulais (15 noms) mais je pourrai en rajouter d'ici la fin de mon projet.
    Ensuite je voudrais que ces noms ne soient utiliser qu'une seule fois.

    Avez-vous une idée pour que cela marche?

    Merci d'avance pour vos réponses.

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 392
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 392
    Par défaut
    Pour que les noms ne soient utilisés qu'une seule fois, je pense que tu n'as pas trop le choix: Il faudra les charger tous en mémoire, puis prendre au hasard ceux que tu voudras (le mieux étant dans ce cas de mélanger le tableau d'abord, puis de les prendre dans l'ordre).

    Tu vas donc devoir:
    • ouvrir et lire ton fichier texte avec un std::ifstream
    • mettre le contenu dans un vecteur de chaînes (std::vector<std::string>)
    • mélanger le tout avec la fonction std::random_shuffle()

    Et à chaque fois que tu auras un nom, tu en prendras un dans le vecteur...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2007
    Messages : 13
    Par défaut
    Hummm j'ai pas encore vu ca en cours....
    J'ai vu les fihiers donc fopen, fread... Y'aurait-il pas un moyen d'avoir le résultat avec ca?

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 392
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 392
    Par défaut
    fopen(), fread() c'est du C.
    De plus, fread() c'est pour du binaire: Ici, il faudrait plutôt utiliser fgets().
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Par défaut
    Citation Envoyé par Black_Lagoon
    J'ai vu les fihiers donc fopen, fread...
    pour le C, aller dans le forum C. merci

  6. #6
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2007
    Messages : 13
    Par défaut
    mouarf tapez moi!!! blamez moi !!!

    dire que fread, fopen c'est du c++... honte a moi xD
    en fait mon projet utilise toute sorte de langage, mélange de c, c++ et meme des commandes unix...

  7. #7
    Expert éminent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 635
    Par défaut
    Salut,
    Citation Envoyé par Black_Lagoon
    mouarf tapez moi!!! blamez moi !!!

    dire que fread, fopen c'est du c++... honte a moi xD
    en fait mon projet utilise toute sorte de langage, mélange de c, c++ et meme des commandes unix...
    Ca, c'est le meilleur moyen d'obtenir un truc tout à fait non portable (l'utilisation de commandes propres à un OS particulier), et d'avoir un mal fou à retrouver les erreurs

    Si on se trouve dans une situation dans laquelle on n'a vraiment pas le choix, ben, on va dire que faut faire avec, mais sinon, il est clairement préférable de choisir le langage qui semble le mieux adapté à ce que l'on veut (je n'ai pas forcément dit le C++) et de s'y tenir

    Ceci dit, ifstream est relativement simple à utiliser (reporte toi à la section correspondante de la FAQ: http://c.developpez.com/faq/cpp/?page=fichiers et, tout compte fait, le prof serait il vraiment déçu de voir que tu sais te documenter par toi même
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

Discussions similaires

  1. sonde nagios recherche de fichier avec fin de nom aléatoire
    Par P3dr075 dans le forum Programmation et administration système
    Réponses: 0
    Dernier message: 10/11/2014, 06h51
  2. [XL-2003] Ligne de commande sélection fichiers ouverts avec nom aléatoire
    Par zadio dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 26/02/2010, 16h05
  3. Détection de fichier avec un nom aléatoire
    Par ealphonsine dans le forum kettle/PDI
    Réponses: 2
    Dernier message: 13/11/2008, 19h36
  4. [DOS] Execution de fichier simultané avec nom aléatoire
    Par noabeuh dans le forum Scripts/Batch
    Réponses: 3
    Dernier message: 04/03/2007, 14h47
  5. Export fichier : Nom incluant la date
    Par njogou dans le forum Access
    Réponses: 8
    Dernier message: 09/04/2006, 20h39

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