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 :

C++ gestion de fichiers


Sujet :

C++

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 6
    Par défaut C++ gestion de fichiers
    Voila mon 1er sujet de tp C++ (voir annexe) pourriez-vous m'eclairer je n'arrive pas a demarrer. merci beaucoup.
    Clara
    Images attachées Images attachées
    Fichiers attachés Fichiers attachés

  2. #2
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    On n'est pas là pour faire tes devoirs.

    Tu as déjà essayé quoi ? Qu'est-ce qui te bloque exactement ?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 6
    Par défaut
    Voila le debut de notre programme :

    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    exo 1*/
    #include <iostream>
    #include <fstream>
    #include <stdio.h>
    #include <string.h>
    #include <iomanip>
    void main ()
    {
    	FILE=*fichier;
    	FILE=*reponse;
    	char nom;
    	int i=0;
    	cout <<"entrez nom avec adresse du fichier";
    	cin >>nom;
    	fichier=fopen(nom, "r" );//ouverture du fichier de mesure
    	do// cette boucle lit l'introduction du fichier de mesure 
    	{
    	int n=0;
    	char ligne;
        ligne=getline(i);//lire une ligne
    	if (ligne="----------------------------------")n++;// le programme attend la deuxieme ligne de tirets
    	i++;
    	}while (n!=2);
    	float hM,xM,yM,zM;//valeurs max
    	float hm,xm,ym,zm;//valeurs min
    	float h,x,y,z;//valeur des mesures
    	float tab[4];
    	tab getline(i);//lire la premiere ligne 
    	h=tab[1];
    	x=tab[2];
    	y=tab[3];
    	z=tab[4];
    	hM=h;
    	hm=h;
    	xM=x;
    	xm=x;
    	yM=y;
    	ym=y;
    	zM=z;
    	zm=z;
    	i++;
    	do //lire les lignes une a une et comparer au max et min
    	{
    	t getline(i);//lire la premiere ligne 
    	h=t[1];
    	x=t[2];
    	y=t[3];
    	z=t[4];
    	if (hM<h)hM=h;
    	if (hm>h)hm=h;
    	if (xM<x)xM=x;
    	if (xm>x)xm=x;
    	if (yM<y)yM=y;
    	if (ym>y)ym=y;
    	if (zM<z)zM=z;
    	if (zm>z)zm=z;
    	}while(ligne!=EOF);
    	fichier=fclose();//fermer fichier de mesure
    	reponse=fopen("C:\\TP1.txt","w");//creer et ouvrir fichier reponse
    	reponse<<"resultat du traitement"<<endl<<"Heures:"<<endl<<tab<<"mini: "<<hm<<endl<<tab<<"maxi: "<<hM<<endl<<"Abcisse:"<<endl<<tab<<"mini: "<<xm<<endl<<tab<<"maxi: "<<xM<<endl<<"Ordonnee:"<<endl<<tab<<"mini: "<<ym<<endl<<tab<<"maxi: "<<yM<<endl<<"Hauteur:"<<endl<<tab<<"mini: "<<zm<<endl<<tab<<"maxi: "<<zM<<endl<<endl<<"--------------";//ecrire les reponses
    	reponse=fclose();// fermer fichier reponse
    }

  4. #4
    Membre chevronné
    Inscrit en
    Novembre 2006
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 362
    Par défaut
    Salut,

    Tu ne donne pas vraiment envie de t'aider.

    1. Tu n'explique pas ce qui te bloque, tu ne pose même pas la moindre question, on ne sait pas ce que tu veux comme réponse. Un programme qui marche ?

    2. Tu n'explique pas ce que tu as fait.

    3. Tu n'utilises pas les balises de présentation [ CODE ] qui pourrait rendre ton code lisible.

    Que penserais-tu de quelqu'un qui te demande de l'aide en t'envoyant le courrier suivant :
    Voila mon 1er exercice de TP de cuisine (voir annexe) peux-tu m'éclairer je n'arrive pas a demarrer. merci beaucoup.
    Franck
    Fichiers attachés Fichiers attachés

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 6
    Par défaut
    En gros je ne connais rien au c++ c'est mon premier tp, jaimerai bien avoir un exemple de programme pour comprendre... Je suis toute seule devant mon pc sans aide et je n'ai pas encore achete le livre 'le C++ pour les nuls'...

  6. #6
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    366
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Mai 2006
    Messages : 366
    Par défaut
    Regarde les différents cours et tuto du forum, la FAQ, tu devrais déjà avoir un apperçu.

    Et si c'est un tp, a priori tu as quand même eu un cours non ?

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 6
    Par défaut
    je suis arrivee en cours d'annee et je nai aucun support papier...je ne sais pas quelles rubriques lire deplus je dois rentre mon tp demain.

  8. #8
    Membre chevronné
    Inscrit en
    Novembre 2006
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 362
    Par défaut
    Peux-tu répondre à ces question ?
    En partant du départ et en suivant les fléches.

    Merci
    Images attachées Images attachées  

  9. #9
    Membre Expert
    Avatar de coyotte507
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 327
    Par défaut
    bon vu que tu as l'air triste je vaiss déjà commencer à t'aider:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    	char nom;
    	int i=0;
    	cout <<"entrez nom avec adresse du fichier";
    	cin >>nom;
    déjà là nom ne contiendra qu'une lettre. Pour avoir le nom du fichier en entier, utilise un poiteur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    	char *nom;
    	int i=0;
    	cout <<"entrez nom avec adresse du fichier";
    	cin >>nom;
    tu as vu l'étoile à l'initialisation?

    sinon quelquechose m'intrigue, au début:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	FILE=*fichier;
    	FILE=*reponse;
    Tu met deux choses différentes dans ta variable, la deuxième écrase l'autre.

    Enfin, le plus simple, c'est qu'il faut que tu compiles avec ton compilateur, et ensuite il te liste les erreurs.
    N'oublie pas de mettre les extensions cpp et h à tes fichiers.

  10. #10
    Membre émérite
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    780
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 780
    Par défaut
    Citation Envoyé par coyotte507
    déjà là nom ne contiendra qu'une lettre. Pour avoir le nom du fichier en entier, utilise un poiteur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    	char *nom;
    	int i=0;
    	cout <<"entrez nom avec adresse du fichier";
    	cin >>nom;
    tu as vu l'étoile à l'initialisation?
    euh... t'essayes de l'aider ou c'est au 2e degré?

    en c++ on ferait un truc du style:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    std::string s;
    std::cin >> s;
    sinon quelquechose m'intrigue, au début:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	FILE=*fichier;
    	FILE=*reponse;
    ce qui m'intrigue c'est que ça ressemble beaucoup à du C et pas à du C++.

  11. #11
    Membre Expert
    Avatar de coyotte507
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 327
    Par défaut
    Moi je suis pas très versé dans les conventions d'écritures (endl, static cast...) du C++.

    Enfin dans ce cas mon code marche quand même non? Si non alors j'arrête de visiter le forum C++ jusqu'à ce que j'ai suivi des cours sur ça et tout

  12. #12
    Membre émérite
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    780
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 780
    Par défaut
    Citation Envoyé par coyotte507
    Moi je suis pas très versé dans les conventions d'écritures (endl, static cast...) du C++.

    Enfin dans ce cas mon code marche quand même non? Si non alors j'arrête de visiter le forum C++ jusqu'à ce que j'ai suivi des cours sur ça et tout
    ne pleure pas, mais j'ai bien peur que ton char* C ne soit pas beaucoup alloué en mémoire.

  13. #13
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 297
    Par défaut
    Citation Envoyé par Clara_G
    Je suis toute seule devant mon pc sans aide et je n'ai pas encore achete le livre 'le C++ pour les nuls'...
    Si je puis me permettre, c'est un mauvais bouquin de C++. Comme beaucoup d'autres malheuresement. Regarde ailleurs dans les archives du forum pour des discussions au sujet de bouquins de C++.

    Moi je suis pas très versé dans les conventions d'écritures (endl, static cast...) du C++.
    Enfin dans ce cas mon code marche quand même non? Si non alors j'arrête de visiter le forum C++ jusqu'à ce que j'ai suivi des cours sur ça et tout
    Pas une histoire de convention ici. Juste de code juste et de code faux -- avec une initialisation meilleure, il aurait été bancal car présentant une faille de stabilité et sécurité, et par extension abominable à maintenir grâce aux char* (à supposer la faille corrigée).

    Faut dire que lorsque l'on pousse les débutants dans la direction d'un C++ non brouillon, c'est assez frustrant de voir d'autres débutants donner des réponses que l'on essait de noyer sous les réponses correctes.
    Ne t'inquiéte pas si tes réponses sont reprises. Cela fait parti du jeu. Après chacun exprimera le fait que c'est bon ou pas à sa façon.



    @ Clara_G
    - main ne doit pas renvoyer rien, mais un int -- des compilos à jour t'empêcheront de compiler
    - "FILE=*fichier;" ne veut ren dire. Dans le meilleur des cas, le "=" est de trop.
    - tu lis effectivement dans un caractère au lieu d'un chaine => utilise std::string qui est le type consacré en C++ -- à supposer que votre prof soit à la page. Sinon tableau de caractères suffisament grand + "cin.getline" ; surtout pas "cin >> tableau-de-char"
    - indente, ton code n'est pas lisible
    - une lecture de fichier ne se fait pas sur eof. Voir la FAQ.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  14. #14
    Membre émérite
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    780
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 780
    Par défaut
    Citation Envoyé par Luc Hermitte
    std::string qui est le type consacré en C++ -- à supposer que votre prof soit à la page.
    Je crois que c'est le plus important dans le cadre scolaire, savoir ce que ton prof veut.

    Est-ce que ton prof veut du C ou du C++, qui sont deux langages différents?

    ( std::string, std::ofstream, cin, c'est du C++
    printf, FILE, char* généralement c'est du C )

    Il faut aussi savoir quel est le but de l'exercice (par exemple utiliser la structure FILE ou les pointeurs etc..)

    Comme dans ton intitulé il y a marqué "gestion des flux de données (STREAM)" on peut penser qu'il va falloir utiliser des fstream (C++) plutôt que des FILE* (C).. mais juste après il y a "gestion des fichiers", donc ce n'est pas clair. Par contre, tu as du avoir des cours dessus qui peuvent t'aider pour savoir ce que ton prof veut non? Sinon lui demander.

  15. #15
    Membre chevronné
    Inscrit en
    Novembre 2006
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 362
    Par défaut
    Hier à 11h14 :
    Citation Envoyé par Clara_G
    je suis arrivee en cours d'annee et je nai aucun support papier...je ne sais pas quelles rubriques lire deplus je dois rentre mon tp demain.
    Elle n'est pas repassée depuis, je pense qu'elle a abandonné, ou trouvé de l'aide ailleurs.

Discussions similaires

  1. Gestion de fichier
    Par Zenol dans le forum C++
    Réponses: 6
    Dernier message: 22/09/2005, 16h44
  2. gestion de fichier à partir d'un formulaire
    Par seb59dk dans le forum Access
    Réponses: 3
    Dernier message: 06/09/2005, 17h52
  3. Fonctions de gestion de fichiers
    Par sebduth dans le forum Fortran
    Réponses: 4
    Dernier message: 22/08/2005, 11h38
  4. [JDOM] Gestion "gros fichiers"
    Par Haazheel dans le forum Format d'échange (XML, JSON...)
    Réponses: 10
    Dernier message: 17/10/2003, 14h42
  5. [Concept] BD ou Gestion par fichier. Intérêt de la BD ?
    Par Cian dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 28/11/2002, 13h16

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