Structure et tri en langage C
netglobe
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
mype Messages postés 2435 Date d'inscription Statut Membre Dernière intervention -
mype Messages postés 2435 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'en ai un exercice que je n'arrive pas à résoudre ,j'aimerai bien que quelqu'un m'aider.
merci d'avance.
exercice:(langage C)
dans une fédération du sport collectif chaque équipe est défini par :
son nom (max 34 caractéres)
sa date de fondation(jj/mm/aaaa)
nombre de joueur
chaque équipe est formé de 25 joueurs
nbr de but marqué
chaque joueur est défini par:
son nom (max 30 caractéres)
son age
questions:
saisir les données corespendants au différent équipes
afficher le nom des joueurs ainsi le nom d' équipe qui ont marqué plus de 10 buts
classer tous les équipes dans l'ordre croissant suivant le nbr de but marqué
écrire le programme en langage C.
N.B:
le nbr de buts marqué de chaque joueur est la somme de buts marqué au nom de l'équipe
j'ai commencé à écrire ce code et je suis bloqué dans le reste.
#include<stdio.h>
#include<conio.h>
struct date
{
int jour;
int mois;
int annee;
};
struct joueur
{
char nom[30];
int age;
int nbr_but_marque;
};
struct equipe
{
char nom[34];
date date_fondation;
joueur j[25];
};
ET Merci.
j'en ai un exercice que je n'arrive pas à résoudre ,j'aimerai bien que quelqu'un m'aider.
merci d'avance.
exercice:(langage C)
dans une fédération du sport collectif chaque équipe est défini par :
son nom (max 34 caractéres)
sa date de fondation(jj/mm/aaaa)
nombre de joueur
chaque équipe est formé de 25 joueurs
nbr de but marqué
chaque joueur est défini par:
son nom (max 30 caractéres)
son age
questions:
saisir les données corespendants au différent équipes
afficher le nom des joueurs ainsi le nom d' équipe qui ont marqué plus de 10 buts
classer tous les équipes dans l'ordre croissant suivant le nbr de but marqué
écrire le programme en langage C.
N.B:
le nbr de buts marqué de chaque joueur est la somme de buts marqué au nom de l'équipe
j'ai commencé à écrire ce code et je suis bloqué dans le reste.
#include<stdio.h>
#include<conio.h>
struct date
{
int jour;
int mois;
int annee;
};
struct joueur
{
char nom[30];
int age;
int nbr_but_marque;
};
struct equipe
{
char nom[34];
date date_fondation;
joueur j[25];
};
ET Merci.
A voir également:
- Structure et tri en langage C
- Langage ascii - Guide
- Comment faire un tri personnalisé sur excel - Guide
- Logiciel tri photo - Guide
- Logiciel calcul structure bois gratuit - Télécharger - Architecture & Déco
- Langage binaire - Guide
3 réponses
j'ai avancé dans l'exercice mais je veux bien quelqu'un qui m'aide à le finir.
ET Merci.
#include<stdio.h>
#include<conio.h>
struct date
{
int jour;
int mois;
int annee;
};
struct joueur
{
char nom[30];
int age;
int nbr_but_marque;
};
struct equipe
{
char nom[34];
date date_fondation;
joueur j[25];
};
void saisie_equipe()
{
equipe e[10];
int i,k,n,m;
printf("\n entrer le nbr d'equipe:");
scanf("\n%d",&n);
for(i=0;i<n;i++)
{
printf("\n donner le nom de l'equipe:");
scanf("\n%s",&e[i].nom);
printf("\n donner la date de fondation de l'equipe:");
printf("\n donner le jour de fondation:");
scanf("\n%d",&e[i].date_fondation.jour);
printf("\n donner le mois de fondation:");
scanf("\n%d",&e[i].date_fondation.mois);
printf("\n donner l'année de fondation:");
scanf("\n%d",&e[i].date_fondation.annee);
printf("\n donner le nbr de joueur:");
scanf("\n%d",&m);
for(k=0;k<m;k++)
{
printf("\n donner le nom du joueur:");
scanf("\n%s",&e[i].j[k].nom);
printf("\n donner l'age de joueur:");
scanf("\n%d",&e[i].j[k].age);
printf("\n donner le nbr de but marque:");
scanf("\n%d",&e[i].j[k].nbr_but_marque);
}
}
}
ET Merci.
#include<stdio.h>
#include<conio.h>
struct date
{
int jour;
int mois;
int annee;
};
struct joueur
{
char nom[30];
int age;
int nbr_but_marque;
};
struct equipe
{
char nom[34];
date date_fondation;
joueur j[25];
};
void saisie_equipe()
{
equipe e[10];
int i,k,n,m;
printf("\n entrer le nbr d'equipe:");
scanf("\n%d",&n);
for(i=0;i<n;i++)
{
printf("\n donner le nom de l'equipe:");
scanf("\n%s",&e[i].nom);
printf("\n donner la date de fondation de l'equipe:");
printf("\n donner le jour de fondation:");
scanf("\n%d",&e[i].date_fondation.jour);
printf("\n donner le mois de fondation:");
scanf("\n%d",&e[i].date_fondation.mois);
printf("\n donner l'année de fondation:");
scanf("\n%d",&e[i].date_fondation.annee);
printf("\n donner le nbr de joueur:");
scanf("\n%d",&m);
for(k=0;k<m;k++)
{
printf("\n donner le nom du joueur:");
scanf("\n%s",&e[i].j[k].nom);
printf("\n donner l'age de joueur:");
scanf("\n%d",&e[i].j[k].age);
printf("\n donner le nbr de but marque:");
scanf("\n%d",&e[i].j[k].nbr_but_marque);
}
}
}
pour rentré les donnees je pense que tu es capable de faire ça...
pour afficher le nom des joueurs qui ont marqué plus de dix buts et celui de leur equipe
tu pourrais creer un tableau et y metre toutes les equipes puis tu calcules le nrb de but marque par chaque equipe en additionnant les buts marque par chaque joueur de l'equipe puis tu fais un tri pour les classer ensuite...
bonne chance ;)
pour afficher le nom des joueurs qui ont marqué plus de dix buts et celui de leur equipe
for(i=0;i<15;i++) if(equipe.j[i].nbr_but_marque > 10) printf("%s qui joue a %s a marque plus de 10 buts",equipe.j[i].nom,equipe.nom);pour afficher le classement des equipes suivant le nbr de but marqué
tu pourrais creer un tableau et y metre toutes les equipes puis tu calcules le nrb de but marque par chaque equipe en additionnant les buts marque par chaque joueur de l'equipe puis tu fais un tri pour les classer ensuite...
bonne chance ;)
rajoute ça (sans oublier de faire les declaration) et ça devrait marché...
for(i=0;i<n;i++) for(j=0;j<m;j++) if(e[i].j[j].nbr_but_marque > 10) printf("%s qui joue a %s a marque plus de 10 buts il en a marque %d\n",e[i].j[j].nom,e[i].nom,e[i].j[j].nbr_but_marque); for(i=0;i<n;i++) for(j=0;j<m;j++) but_eq[i]+=e[i].j[j].nbr_but_marque; for(i=0;i<n-1;i++) for(j=i+1;j<n;j++) if(but_eq[i] < but_eq[j]) { temp=e[i]; e[i]=e[j]; e[j]=temp; temp2=but_eq[i]; but_eq[i]=but_eq[j]; but_eq[j]=temp2; } printf("\n----Classement----\n"); for(i=0;i<n;i++) printf("%d- %s %d but\n",i+1,e[i].nom,but_eq[i]);bonne chance ;)