Jump to content

Besoin d'aide pour corriger un exam de C++ URGENT!


Recommended Posts

Bonsoir à tous, voila la semaine prochaine je passe un examen d'informatique en C++ et je voudrait avoir une correction du sujet ci dessous.

C'est vraiment tres urgent et le sujet est tes faciles pour les personnes qui sont à l'aise en C++.

Donc aidez moi , c'est tres urgent.

merci à tous.

856.jpg

Link to comment
Share on other sites

lol, le plus drole, c quand il faut redemontrer la formule :mdr:

sinon, je suppose que tu as du apprendre a afficher un texte, a enregistrer des variables dans un tableau...

en plus le mode operatoire, si tu le suit convenablement, le main devrait ressembler à

main() {

repeat

entrée()

cretab(L,R,omega)

affiche(theta,v)

cout >> voulez vous recommencer une partie de calcul poilant qui sert a rien? (o/n)

cin << a

until a!=o

}

end.

sachant que cretab appele 720fois fvp, pour autan de valeur differentes et que affiche appelle fmin et fmax :yes:

enfin sa fe trop longtemsp que je n'ai plus toucher a C++ (j'ai du reapprendre la pascal a l'ecole :-D et je suis oqp avec le html/php/mysql/css )mais c pas si dur que cela :transpi:

bonne chance quand même

Link to comment
Share on other sites

voila ce que j'ai répondu pour cette exam

#include<iostream.h> 
 #include<stdlib.h> 
 #include<mah.h> 
  
 void entrée(float & R,float & L,float & omega) 
 { 
   cout<<" donner la valeur de L"<<endl; 
   cin>>L; 
   cout<<" donner la valeur de R"<<endl; 
   cin>>R; 
   cout<<" donner la valeur de omega"<<endl; 
   cin>>omega; 
 } 
  
 void fvp(float & V, float theta) 
 { 
   int L; 
   int R; 
   int c=R/L; 
   int theta; 
   int omega; 
   int V=0; 
    
   V=L*omega*((c*c*cos(theta)*sin(theta))/(sqrt(1-c*c*sin(theta)*sin(theta)))-c*sin(theta)) 
 } 
  
 void cretab(float Tv[],float Tomega[],float V, float omega) 
 { 
 } 
  
 void fmin(float Vmin, float Tv[]) 
 { 
 } 
  
 void fmax(float Vmax, float Tv[]) 
 { 
 } 
  
 void affiche(float Vmin, float Vmax, float V, float omega ) 
 { 
   cout<<" la valeur de v est "<<V<<"pour une valeur de omega ="<<omega<<endl; 
   cout<<"la valeur de Vmin est "<<Vmin<<endl; 
   cout<<"la valeur de Vmax est "<<Vmax<<endl; 
 } 
  
 void main() 
 { 
   repeat; 
   entrée(); 
   fvp(); 
   cretab(); 
   affiche(); 
   cout<< "voulez vous refaire le calcul (o/n)"<<endl; 
   cin>>a; 
   until a!=o; 
 } 

j'ai eu 6

je ne suis pas arrivé a faire les fonction cretab et vmin vmax

est ce que vous pouvez me corriger

Link to comment
Share on other sites

Arf, dommage....Je pourrais sans doute de donner la solution en C / C++ / Java / ADA / Pascal à la fin de la semaine, juste pour l'info, mais la...je suis en pleine semaine d'exams...Mais sinon, faut voir que générallement dans les exams d'info à la fac (j'ai fait un an de MIAS 16 de moyenne en prog mais beaucoup moins en math...) c'est les algos qui comptent...Le code n'a pas vraiment d'importance, faut juste montrer que tu sais quelque chose...

Link to comment
Share on other sites

Sinon, j'aurais pas fait comme toi pour

  void entrée(float & R,float & L,float & omega)

{

  cout<<" donner la valeur de L"<<endl;

  cin>>L;

  cout<<" donner la valeur de R"<<endl;

  cin>>R;

  cout<<" donner la valeur de omega"<<endl;

  cin>>omega;

}

j'aurais plutot vu une structure de données mais bon...

Sinon, c'est pas #include <mat.h> mais #include <math.h> sans ca, je vois mal comment tu peux te servir des fonctions trigo...

Link to comment
Share on other sites

qu'est ce que tu pense de sa :

met y a un probleme dans le programme car sa n'affiche pas tout

#include <stdlib.h> 
 #include <math.h> 
 #include <iostream.h>
  
 struct my_structure 
 { 
    float L, R, W; 
 }; 
  
 struct my_structure Input; 
 double tab_vitesse[721], tab_theta[721]; 
  
 struct my_structure entree(void) 
 { 
    struct my_structure temp; 
    cout<<"valeur de L"<<endl; 
    cin>>temp.L; 
    cout<<"valeur de R"<<endl; 
    cin>>temp.R; 
    cout<<"valeur de W"<<endl; 
    cin>>temp.W; 
     
    return temp; 
 } 
  
 double fvp (double t) 
 { 
    double c = Input.R/Input.L; 
    double dessus = c*c*cos(t)*sin(t); 
    double dessous = sqrt( 1- (c*c*sin(t)*sin(t) ) ); 
    double fract = dessus/dessous; 
    double V = Input.L*Input.W*( fract*c*sin(t) ); 
     
    return V; 
 } 
  
 void cretab(void) 
 { 
     for (int i = 0,cpt = 0; i <= 360; i = i+ 0.5, cpt++);
    { 
       tab_theta[cpt] = i; 
       tab_vitesse[cpt] = fvp (i); 
    } 
 } 
  
 double fmin (void) 
 { 
    double valeur_min = tab_vitesse[0]; 
    
    for (int cpt = 1;cpt <= 721; cpt++) 
    { 
       if (tab_vitesse[cpt]<valeur_min) 
          valeur_min = tab_vitesse[cpt]; 
    } 
    return valeur_min; 
 } 
  
 double fmax (void) 
 { 
    double valeur_max = tab_vitesse[0]; 
    
    for (int cpt = 1;cpt <= 721; cpt++) 
    { 
       if (tab_vitesse[cpt]>valeur_max) 
          valeur_max = tab_vitesse[cpt]; 
    } 
    return valeur_max; 
 } 
  
 void affiche(void) 
 { 
    cout<<"le titre"<<endl; 
    for (int cpt=0; cpt<=721; cpt++) 
    { 
       cout<<"("<<tab_theta[cpt]<<", "<<tab_vitesse[cpt]<<")"<<endl; 
    } 
    cout<<"la plus petite valeur de V est "<<fmin(); 
    cout<<"la plus grande valeur de V est "<<fmax(); 
 } 
  
 int main(void) 
 { 
    double vitesse_min, vitesse_max; 
    vitesse_min = fmin(); 
    vitesse_max = fmax();
 entree (); 
 fvp;
    cretab(); 
    affiche(); 
     
    return 0; 
 }

Link to comment
Share on other sites

lol ça sert à rien, le ++ de "C++", là dedans ...

à part poue les appels de fonction avec des variables en utilisant "&" au lieu de "*" (je sais plus comment ça s'appelle ...), et les cin, cout ...

C'est faisable en C (et le C++ est même inutile ici par rapport à l'énoncé)

Link to comment
Share on other sites

juste une critique: stdlib: tu charges toute la bibliothèque standard pour deux fonctions... ou comment allourdir un programme inutilement.

Je suis en train d'apprendre le C++ (merci à devc++) (et pour ceux que ça interesse ya devpascal aussi (en anglais celui-là) . Je trouve qu'il peut être efficace si on cherche pas à ressembler à un autre outil... l'efficacité du ++ et des portes logiques. :francais:

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...