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 :

contruction d'une liste chainée a partir d'un fichier


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2014
    Messages : 13
    Par défaut contruction d'une liste chainée a partir d'un fichier
    Bonjour j'ai un programme a faire qui est tout bien expliquer dans le document suivant:https://wprodl.uqac.ca/site_cours/ap...hiver2015&dl=0

    j'ai commencer a faire mes fichier:

    struct.h
    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
     
    #include <string>
     
    struct Cours
    {
    	char*sigle;
    	Cours*suivant;
    };
     
    struct Etudiants
    {
    	char*nom;
    	Etudiants*suivant;
    };
     
    struct Professeur
    {
    	char*nom; 
    	char*prenom; 
    	Cours*listecours; 
    	Etudiants*listetudiants;
    	Professeur*suivant;
    };
    DossierProfesseur.h

    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
     
    #pragma once
    #ifndef Def_Dossier
    #define Def_Dossier
    #include <string>
    #include "Struct.h"
     
     
    class DossierProfesseur
    {
    private:
    	Professeur * tete; // Début de la liste chainée
    	Professeur * courant; 
    	Professeur * queue;
    public:
    	DossierProfesseur(char * FP); // Constructeur
    	~DossierProfesseur(); // Destructeur
    	void Supprimer(char*nom, char*prenom); // Supprime un professeur donnée
    	char*afficherleprofplusetudiant()const; // Affiche le nom du professeur ayant le plus d'étudiant
    	char*affichercoursleplusdemande()const; // Affiche le sigle du cours le plus demander
    	int affichernbreprofpouruncours(char*coursdonne) const; // Affiche le nombre de professeur pour le coursdonne
    	void Recopier(char*FP); //Recopie la liste chainée dans le fichier FP
    };
    #endif
    Et DossierProfesseur.cpp
    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
     
    #include "DossierProfesseur.h"
    #include <cassert>
    #include<string>
    #include <fstream>
    #include <iostream>
    using namespace std;
     
    int main()
    {
    	ifstream FP;
    	FP.open("FichierFP.txt");
    	if (FP)
    	{
     
    		//Instruction;
    		FP.close();
    	}
    	else
    		cout << "Impossible d'ouvrir le Fichier" << endl;
    	return 0;
    }
    DossierProfesseur::DossierProfesseur(char*FP)
    {
     
     
    }
     
    DossierProfesseur::~DossierProfesseur()
    {
     
    }
     
    void DossierProfesseur::Supprimer(char*nom, char*prenom) // Supprime un professeur donnée
    {
     
    }
     
    char*DossierProfesseur::afficherleprofplusetudiant() const // Affiche le nom du professeur ayant le plus d'étudiant
    {
     
    }
     
    char*DossierProfesseur::affichercoursleplusdemande() const // Affiche le sigle du cours le plus demander
    {
     
    }
     
    int DossierProfesseur::affichernbreprofpouruncours(char*coursdonne) const // Affiche le nombre de professeur pour le coursdonne
    {
     
    }
     
    void DossierProfesseur::Recopier(char*FP) //Recopie la liste chainée dans le fichier FP
    {
     
    }
    Voila ce que j'ai de fait... Je sais même pas si je suis bien partie????
    Ma question est qu'est-ce que je mets dans mon constructeur ??? je ne sais pas comment créer ma liste chainée a partir de tous ça????
    Je suis vraiment perdu j'ai fait plusieurs rechercher mais je n'arrive pas a débloquer.

    je suis débutante en programmation alors je ne sais pas tout encore

    Merci pour votre aide

  2. #2
    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
    Pour commencer, rale auprès de ton professeur pour être autorisé a ajouter des constructeurs et fonctions au structures exigées.
    De même, essaie d'avoir accès aux string, plutot qu'au char* (c'est encore plus important)

    Puis, poses toi la bonne question: qu'est-ce qu'un pointeur?
    Puis, en quoi cela peut-il t'aider?

    Par ailleurs, écris ton code en utilisant std::list, ce qui te donnera une architecture, avant de coder ta propre liste.


    Pour information, tu auras besoin d'utiliser new, delete, et des tas de fonctions complémentaires que tu devras coder, pour le parcours, l'ajout et la suppression dans une liste (pour autant de type différent de liste).

  3. #3
    Membre éprouvé Avatar de KsassPeuk
    Homme Profil pro
    Ingénieur Chercheur
    Inscrit en
    Juillet 2013
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Chercheur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2013
    Messages : 138
    Par défaut
    Et pète les genoux de ton prof de ma part.

  4. #4
    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
    Je n'osais pas le suggérer, mais c'est vrai qu'il ne semble pas très frais côté C++.

  5. #5
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Val de Marne (Île de France)

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

    Informations forums :
    Inscription : Février 2005
    Messages : 5 482
    Par défaut
    Et pète les genoux de ton prof de ma part.
    Ouais, bof, il doit déjà être tellement dinosaure qu'il doit marcher en déambulateur.

    Faudrait surtout le sortir de son placard pour lui faire prendre l'aire.

    Mais sans déconner, faudrait que vous, ses élèves, vous lui foutiez la honte.

  6. #6
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2014
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2014
    Messages : 13
    Par défaut
    dison qu'il n'est pas très jeune alors ces fort possible qu'il soit un peu beaucoup retarder!!!! je dois tout de même réussir a faire ce travail je le voie vendredi alors je lui parlerai pour modifier les char* par des string... je pense pas que les struc soit fixe je doit pouvoir ajouter des fonctions mais je sais pas vraiment part ou commencer je sais qu'il faut que je lise mon fichier ensuite je construit mes struc dans un tableau????? ou directement dans ma liste chainée????

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 21/01/2014, 19h21
  2. Réponses: 17
    Dernier message: 09/06/2011, 00h50
  3. Réponses: 3
    Dernier message: 16/07/2009, 18h00
  4. Réponses: 2
    Dernier message: 22/05/2009, 15h06
  5. Réponses: 22
    Dernier message: 18/06/2008, 19h01

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