Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
662 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  aide pour 1er partie c++

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

aide pour 1er partie c++

n°2117213
kasawi
Posté le 19-12-2011 à 12:32:41  profilanswer
 

salut a tout je suis nouveau sur le site et débutant sur langage c++
alors mon petite histoire  :pfff: :-° que j'ai raté mon cour de c++ plusieurs fois et il on créé un petite programme je les découper en plusieurs parties voila la 1er partie S.V.P je veux que vous m'expliquer ligne par ligne
 
je n'oublier pas votre aide et merci d'avance .
____________________________________________________________________
#include<conio.h>
#include<iostream.h>
#include<string.h>
int i=0;
class matiere
{
public:
int num_mat;
char nom[10];
int coeff;
float note;
} ;
class etudiant
{
public:
int num_etd;
char nom[10];
matiere mat[3];
float mg;
char resultat[12];
void remplissage();
void rechercher();
void modification();
void modification_matiere();
int admis();
}etd,t[10];
 
 
 
void etudiant::remplissage()
{
int j,k=15;
float s=0;
int r=0;
interface();
 
gotoxy(15,5);cin>>t[i].num_etd;
while(t[i].num_etd!=0)
{
s=0;r=0;
gotoxy(15,8);cin>>t[i].nom;
k=15;
for(j=0;j<=2;j++)
{
gotoxy(20,k);
cin>>t[i].mat[j].num_mat;
gotoxy(30,k);
cin>>t[i].mat[j].nom;
gotoxy(40,k);
cin>>t[i].mat[j].coeff;
gotoxy(50,k);
cin>>t[i].mat[j].note;
r=r+t[i].mat[j].coeff;
s=s+t[i].mat[j].coeff*t[i].mat[j].note;
k++;
}
 
t[i].mg=s/r;
 
if(t[i].mg>=10)
strcpy(t[i].resultat,"admis" );
else
strcpy(t[i].resultat,"non admis" );
i++;
interface();
gotoxy(15,5);cin>>t[i].num_etd;
 
}
 
(logiciel turbo c++)
____________________________________________________________________
j'ai lu plusieurs chapitre dans se site du langage c++ mais j'ai du problème avec les tableau  :cry: :colere2:

mood
Publicité
Posté le 19-12-2011 à 12:32:41  profilanswer
 

n°2117223
Terminapor
I'll see you rise.
Posté le 19-12-2011 à 13:03:33  profilanswer
 

Une class 'matiere' qui contient des variables (struct aurait été plus approprié à mon goût :D) avec un int qui contient le nombre de matière, un char[] (tableau de char) qui contient le nom de la matière, 9 lettres max, un int qui représente le coefficient et enfin un float qui est la note de cette matière.
 
Une class 'etudiant' qui contient une variable qui représente le nombre d'étudiant ou le numéro de l'étudiant, je sais pas, un char[] qui représente le nom de l'étudiant, 9 lettres max, un tableau de class matiere qui représente les 3 matières de l'étudiant, mg je sais pas tellement (son poid en milligramme surement :o), et resultat aucune idée de si c'est toute ses notes ou ses moyennes, bref jsais pas.
 
Ensuite, y'a la méthode 'remplissage' de la class etudiant qui est précisée, mais là je t'avoue que j'aurais du mal parce que t'as pas mis tout le code et que j'ai aussi la flemme, en plus 'gotoxy()' je sais pas c'est quoi (on dirait que ça permet d'accéder à une case précise dans un tableau mais on sait pas lequel :/).
 
Grosso-merdo, je dirais que ça remplissage permet d'entrer le nombre d'élève, suivit de chacune de leur matière avec les bonnes notes/coef, etc.
 
Voilà, maintenant à toi de te dépatouiller avec ça, normalement t'es supposé être capable de comprendre une fonction si c'est ce que tu étudie, encore les classes si t'étais pas là je comprends, mais les fonctions tu devrais pouvoir y arriver, en plus de ça tu as des tonnes de tutos et d'explications sur internet ;)


---------------
Perhaps you don't deserve to breathe
n°2117228
gilou
Modérateur
Modzilla
Posté le 19-12-2011 à 13:20:19  profilanswer
 

Citation :

j'ai raté mon cour de c++ plusieurs fois et il on créé un petite programme

Me dis pas que le code que tu as posté est celui qui vous a été enseigné en cours [:prozac]  
 
Rien que ça:

Code :
  1. #include<iostream.h>
  2. #include<string.h>


ça mérite le fouet en public si c'est un type censé enseigner le C++ qui le pond.
 
ça devrait être  

Code :
  1. #include <iostream>
  2. #include <string>


et rien d'autre.
 
Et je parle pas du reste qui est affligeant.
 
A+,


Message édité par gilou le 19-12-2011 à 13:23:17

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2117230
kadreg
profil: Utilisateur
Posté le 19-12-2011 à 13:22:26  profilanswer
 

nameho, remontez pas les topics d'il y a 20 ans :o

 

wait §§§§


Message édité par kadreg le 19-12-2011 à 13:22:35

---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
n°2117232
gilou
Modérateur
Modzilla
Posté le 19-12-2011 à 13:25:13  profilanswer
 

Citation :

Posté le 19-12-2011

:heink:  
Une cure de desintox semble s'imposer...
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2117240
kasawi
Posté le 19-12-2011 à 13:58:36  profilanswer
 

ok ok ok voila tout le code  
_________________________________

Code :
  1. #include<conio.h>
  2. #include<iostream.h>
  3. #include<string.h>
  4. int i=0;
  5. class matiere
  6. {
  7. public:
  8.     int num_mat;
  9.     char nom[10];
  10.     int coeff;
  11.     float note;
  12. } ;
  13. class etudiant
  14. {
  15. public:
  16.     int num_etd;
  17.     char nom[10];
  18.     matiere mat[3];
  19.     float mg;
  20.     char resultat[12];
  21.     void remplissage();
  22.     void  rechercher();
  23.     void modification();
  24.     void modification_matiere();
  25.     int admis();
  26. }etd,t[10];
  27. void interface()
  28. {
  29.     clrscr();
  30.     gotoxy(5,5);cout<<"n_etd:";
  31.     gotoxy(5,8);cout<<"nom:";
  32.     gotoxy(20,12);cout<<"num_mat:";
  33.     gotoxy(30,12);cout<<"nom";
  34.     gotoxy(40,12);cout<<"coeff:";
  35.     gotoxy(50,12);cout<<"note:";
  36. }
  37. void etudiant::remplissage()
  38. {
  39.     int j,k=15;
  40.     float s=0;
  41.     int r=0;
  42.     interface();
  43.     gotoxy(15,5);cin>>t[i].num_etd;
  44.     while(t[i].num_etd!=0)
  45. {
  46.     s=0;r=0;
  47.     gotoxy(15,8);cin>>t[i].nom;
  48.     k=15;
  49.     for(j=0;j<=2;j++)
  50.  {
  51.      gotoxy(20,k);
  52.      cin>>t[i].mat[j].num_mat;
  53.      gotoxy(30,k);
  54.      cin>>t[i].mat[j].nom;
  55.      gotoxy(40,k);
  56.      cin>>t[i].mat[j].coeff;
  57.      gotoxy(50,k);
  58.      cin>>t[i].mat[j].note;
  59.      r=r+t[i].mat[j].coeff;
  60.      s=s+t[i].mat[j].coeff*t[i].mat[j].note;
  61.      k++;
  62.  }
  63.     t[i].mg=s/r;
  64.     if(t[i].mg>=10)
  65.  strcpy(t[i].resultat,"admis" );
  66.     else
  67.  strcpy(t[i].resultat,"non admis" );
  68.     i++;
  69.     interface();
  70.     gotoxy(15,5);cin>>t[i].num_etd;
  71. }
  72. }
  73. void etudiant  ::rechercher()
  74. {
  75.     int numero,j,v=0,l;
  76.     clrscr();
  77.     cout<<"numero:";
  78.     cin>>numero;
  79.     for(j=0;j<i;j++)
  80. {
  81.     if(numero==t[j].num_etd){v=1;cout<<"num_etd:"<<t[j].num_etd;
  82.  cout<<"nom:"<<t[j].nom;
  83.  for(l=0;l<=2;l++)
  84.      {
  85.   cout<<t[j].mat[l].num_mat<<"  "<<t[j].mat[l].nom<<" "<<t[j].mat[l].coeff<<"  "<<t[j].mat[l].note<<"\n";
  86.      }
  87.  cout<<"moyenne:"<<t[j].mg;
  88.  cout<<"resultat:"<<t[j].resultat;
  89.     }
  90. }
  91.     if (v==0){cout<<"n'existe pas";}
  92.     getch();
  93. }
  94. void etudiant::modification()
  95. {
  96.     int numero,v=0,j,l;
  97.     clrscr();
  98.     cout<<"numero_etudiant:";
  99.     cin>>numero;
  100.     for(j=0;j<i;j++)
  101. {
  102.     if(numero==t[j].num_etd){v=1;cout<<"num_etd:"<<t[j].num_etd;
  103.  cout<<"nom:"<<t[j].nom;
  104.  for(l=0;l<=2;l++)
  105.      {
  106.   cout<<t[j].mat[l].num_mat<<"  "<<t[j].mat[l].nom<<" "<<t[j].mat[l].coeff<<"  "<<t[j].mat[l].note<<"\n";
  107.      }
  108.  cout<<"moyenne:"<<t[j].mg;
  109.  cout<<"resultat:"<<t[j].resultat;
  110.     }
  111. }
  112.     if (v==0){cout<<"n'existe pas";}
  113.     getch();
  114. }
  115. void etudiant::modification_matiere()
  116. {
  117.     int num, numero,v=0,j,l,k,w=0;
  118.     clrscr();
  119.     cout<<"numero_etudiant:";
  120.     cin>>numero;
  121.     for(j=0;j<i;j++)
  122. {
  123.     if(numero==t[j].num_etd){v=1;l=j;};
  124. }
  125.     if(v==0){cout<<"etd introuvable!!!";}
  126.     else{cout<<"num_matiere:";
  127. cin>>num;
  128. for(k=0;k<=2;k++)
  129.     {
  130.  if(numero==t[l].mat[k].num_mat)
  131.      {
  132.   w=1;cout<<"num_matiere:";
  133.   cin>>t[l].mat[k].nom;
  134.      }
  135.     }
  136. if(w==0){cout<<"matiere introuvable!!!";}
  137.     }
  138.     getch();
  139. }
  140. int etudiant::admis()
  141. {
  142.     int j,n=0;
  143.     for(j=0;j<i;j++)
  144. {
  145.     if(t[j].mg>=10){n++;}
  146. }
  147.     return n;
  148. }
  149. void main()
  150. {
  151.     char p;
  152.     do
  153. {
  154.     clrscr();
  155.     cout<<"\n\na_remplissage";
  156.     cout<<"\n\nb_rechercher";
  157.     cout<<"\n\nm_modification";
  158.     cout<<"\n\nd_modification_matiere";
  159.     cout<<"\n\ni_admis";
  160.     cout<<"\n\nq_quitter";
  161.     cout<<"\n\nchoix";
  162.     p=getch();
  163.     switch(p)
  164.  {
  165.  case 'a':etd.remplissage();break;
  166.  case 'b':etd.rechercher();break;
  167.  case 'm':etd.modification();break;
  168.  case 'd':etd.modification_matiere();break;
  169.  case 'i':{ clrscr();cout<<"le nombre des admis est:"<<etd.admis();getch();}break;
  170.  }
  171. }
  172.     while(p!='q');
  173. }


Message édité par gilou le 19-12-2011 à 19:08:49
n°2117326
gilou
Modérateur
Modzilla
Posté le 19-12-2011 à 19:06:53  profilanswer
 

>> void main()  
Non!
 
A+,


Message édité par gilou le 19-12-2011 à 19:07:07

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2117401
Terminapor
I'll see you rise.
Posté le 20-12-2011 à 01:35:33  profilanswer
 

gilou a écrit :

Citation :

Posté le 19-12-2011

:heink:  
Une cure de desintox semble s'imposer...
A+,


J'pense que c'était juste une vanne foireuse :D
 
Bon sinon, y'a rien de bien compliqué dans le code, gotoxy() c'est en fait une fonction qui permet de bouger le curseur de place dans ta console, bref c'est que des fonctions du style calculer une moyenne, stocker des variables, tu rates rien (si ce n'est ce merveilleux void main() [:mad_overclocker] )
 
Honnêtement tu gagnerais plus à zieuter des tutos sur les classes/tableaux que d'essayer de comprendre ce code mal foutu :jap:


---------------
Perhaps you don't deserve to breathe

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  aide pour 1er partie c++

 

Sujets relatifs
Help besoin d'aide pour un exercie logiqueBesoin d'aide svp
Aide pour un noobBash aide projet
Besoin d'aide permutation binaireAide pour script d'actualité
Aide pour SmaltalkAide création de site
aide access 2eme partie... 
Plus de sujets relatifs à : aide pour 1er partie c++


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR