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 :

Fonction retournant le meilleur étudiant par cote d'une structure


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Maintenance Prédictive
    Inscrit en
    Mars 2017
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : Maintenance Prédictive
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2017
    Messages : 39
    Par défaut Fonction retournant le meilleur étudiant par cote d'une structure
    Bonjour,

    Je dois réaliser une fonction qui retourne le meilleur élève par cote et ce pour chaque cote (dont le nombre est choisi par l'utilisateur entre 1 et une constante globale), on lui passe un tableau de type structure avec des noms d'étudiants et des cotes.

    en fait il faudrait parcourir la structure via les cotes et non via les étudiants, mais je ne parviens pas à trouver l'algorithme correspondant.

    J'ai tenté un code que voici mais qui ne donne pas le résultat escompté et une réflexion en Excel annexéeNom : Cotes.JPG
Affichages : 205
Taille : 38,6 Ko.

    En fait il faudrait récupérer les valeurs suivantes dans le tableau de droite afin d'ensuite parcourir ce tableau qui donnera le meilleur étudiant dans chaque cote.

    Code C : 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
     
    struct Etudiant{
        string Nom;
        int cotes[NC_max];
    };
     
    void Affichage(Etudiant Tab[], int NE, int NC) {
       string EtudiantCoteMax;
       int CotesMax[NC_max];
       int CotesIndice[NC_max];
     
       // CoteMax[0] : NomEtudiant
       // CoteMax[n] : NomEtudiant
     
      // Pierre, Jean, ...
     
     
    	string NaneStudentWithMaxCote, NaneStudentWithMinCote;
     
    		EtudiantCoteMax=Tab[0].Nom;
    		for (int j = 0; j < NC; j++) { CotesMax[j]=0; CotesIndice[j]=0; }; 
     
    	for (int i = 0; i < NE; i++) {
    		cout << "Nom Etudiant[" << i+1 << "]=" << Tab[i].Nom << endl;
     
    		for (int j = 0; j < NC; j++) {
    		cout << "Cote :["<< j+1 <<"] - Etudiant[" << i+1 << "]=" << Tab[i].cotes[j] << endl;
     
     
    		 int Min =0, Max =0; 
     
    		if (Tab[i].cotes[j] <= Min )  { 
    			Min = Tab[i].cotes[j];
    			NaneStudentWithMinCote=Tab[i].Nom; 
    		}
    		if (Tab[i].cotes[j] >= Max )  {
    			Max = Tab[i].cotes[j]; 
    			NaneStudentWithMaxCote=Tab[i].Nom;
     
    			if (Max > CotesMax[j]) { EtudiantCoteMax=Tab[i].Nom; CotesIndice[j]=j; };
    		}
     
    		}
    	}
     
     
    	    	for (int j = 0; j < NC; j++) {
     
     
    		cout << "Nom Etudiant avec la cote Max : " << CotesIndice[j] << " " <<EtudiantCoteMax << endl; 
     
        }
     
    }

  2. #2
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 867
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 867
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Je ne comprends pas trop ce que tu entends par "cote" ? Est-ce que tu veux parler des "matières" ???

    En tout cas, pour trouver le meilleur étudiant selon un critère X, ben te suffit de faire une fonction à laquelle tu passes ton tableau d'étudiants et ton critère. Et la fonction balaye tout le tableau en stockant, à chaque itération, l'indice de l'étudiant en cours si celui-ci est meilleur (par rapport au critère) que celui trouvé jusqu'alors. Et en fin de fonction tu retournes l'indice stocké.

    Accessoirement tu nous montres un code C++ dans un forum C.
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

Discussions similaires

  1. Réponses: 5
    Dernier message: 01/11/2016, 21h59
  2. [XL-2003] ma fonction retourne #VALEUR! lors de la suppression d'une ligne
    Par oracle7556 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 18/12/2009, 19h17
  3. fonction retournant une valeur
    Par ryan dans le forum ASP
    Réponses: 4
    Dernier message: 06/09/2004, 18h45
  4. Declaration de fonction retournant un pointeur sur fonction
    Par pseudokifaitladifférence dans le forum C
    Réponses: 5
    Dernier message: 11/08/2003, 20h37
  5. [Manip de fichiers] Fonction retournant des infos
    Par sans_atouts dans le forum C
    Réponses: 3
    Dernier message: 24/07/2002, 15h16

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