Test d'un etudiant

Fermé
dododoga - 6 mars 2009 à 14:05
Wanted59 Messages postés 44 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 15 octobre 2009 - 16 mars 2009 à 16:51
Bonjour,

je veux une aide.si quelqu'un pourrait m'aider a resoudre ce petit probleme en c++
ma question est celle-ci:

<gras><gras>ecrire un programme qui teste un enfant de l'ecole primaire.
ce programme demande a l'enfant de faire netrer un signe operationnel de son choix donc +,-,*,/.et apres i fait entrer le premier chiffre de son choix en plusle deuxieme.apres le programme demande a l'enfant de mettre la reponse.si la reponse est vrai le message apparait qui dit que l'enfant a eu 5pts et si la reponse est fausse il dit vous avez entrer la mauvaise reponse vous avez o pt.et cela 10 fois pour chaque eleve.ala fin il doit donner le resultat de ce que l'enfant a eu comme point.si il depasse la moitier le message apparait qui dit bravo vous avez eu autant de point.
</gras></gras>
je crois que vous comprenez n peu ce que je veux

Aidez moi svp
Dodo
A voir également:

7 réponses

Wanted59 Messages postés 44 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 15 octobre 2009 7
6 mars 2009 à 19:51
Bonjour, tu veux absolument un programme en C++? Car je pourrai te le faire en C si tu veux.
0
Utilisateur anonyme
6 mars 2009 à 20:20
Je pense qu'il s'en foutais du language, juste
car lui voulait le faire en C++ car il sait
programmer en C++ je pense ;)
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
6 mars 2009 à 20:26
0
Wanted59 Messages postés 44 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 15 octobre 2009 7
7 mars 2009 à 13:33
Dsl de mettre proposer de faire l'exo car c'était bete puisque ça ne t'aurai pas aider. Par contre je peux te guider et je pense que tu devrai 4 petites fonction qui gérerai chaque opération (+, -, / et *) et aussi dans ton main tu met juste un petit scanf et si l'étudiant a mit un + par exemple, sa l'envoi dans la fonction +, du genre :

char choixEtudiant[10] = {0} ;

printf("Entrez un signe d'opération : ");
scanf("%s", &choixEtudiant);
if(choixEtudiant[0] == '+')
addition(); // La sa l'envoi dans la fonction addition


Moi je metterai quelquechose comme ça dans le main.

Et dans la fonction addition il y aurai quelquechose du genre :

void addition()
{
long nombre1 = 0, nombre2 = 0, resultatCorrect = 0, resultatEtudiant = 0 ;

printf("Entrez un premier nombre : "); // Ici l'étudiant choisi un premier nombre
scanf("%ld", &nombre1);
printf("Entrez un deuxième nombre : "); // Là un deuxième
scanf("%ld, &nombre2);
printf("%ld + %ld = ", nombre1, nombre2); // Ici on lui demande de faire l'opération
scanf("%ld", &resultatEtudiant); // L'ordinateur enregistre son resultat

resultatCorrect = nombre1 + nombre2 ; // L'ordinateur fait lui même le calcul

if(resultatEtudiant == resultatCorrect) // Si le resultat est correct ...
printf("Bravo vous avez trouver le bon resultat\n\n"); // ... alors il reçoit des félicitations
else if(resultatEtudiant != resultatCorrect) // Par contre si il est faux ...
printf("C'est faux ! Il va falloir réviser !\n\n"); // ... il se fait taper sur les doigts
}

Moi je verrai quelquechose comme ça, n' hésites pas si tu veux d'autre info (Tu remarquera que je n'ai pas mit le compteur de point et je te laisse faire aussi les autres fonctions).
ps : J'ai pas tester le code et il faudrai encore le mettre en forme mais en gros ça doit etre ça.
Bonne chance pour le reste du code.
0
salut wanted,

je suis vraiment content de ta reponse et si seulement tu pourai me le faire en c++ ca pourrait m'aider mais je te dis que c'est genial meme en c et je pourrait moi meme le transformer en c++.mais seulement je dois le faire avec des objets et sans objet apre ca.

je suis encore au debut en c++ et en c.mais je te le demande car je sais que tu es un habitue et que tu pourrait comprendre.le langage que je maitrise mieux est l'access avec le vba.et je suis encore au debut pour le sql server.

merci de ta comprehension et bonne journee.

Dodo
0
salut mon frere.

votre reponse est en train de m'aider bcp dans mon petit programme.mais je veux savoir ce que tu penses pour enregistrer les point que le petit gagne et en fin faire sortir le total des points et dire ala fin que l'etudiant a eu tel nombre des points et savoir s'il est au decu de la moyenne et dire s'il est felicite ou pas.

je crois que tu comprend ce que je veux dire

Merci
A toute
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Wanted59 Messages postés 44 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 15 octobre 2009 7
9 mars 2009 à 17:36
Salut dodoli, je suis dsl mais je ne connai pas grand chose en C++ moi je ne programme qu'en C, par contre si mon code en C t'aide c'est tant mieux car je sais qu'il n'y a pas trop de différence au niveau des principe de base entre le C et le C++, il y a juste le nom de certaine fonction qui change, donc tu devrais t'en sortir. Par contre au niveau du compteur de coups c'est pas bien compliqué, essais de changer le nom de la fonction addition qui était :
void addition()
{
// Le code ici ...
}

En quelquechose qui puisse retourner une valeur, ou sinon tu peux utiliser un pointeur sur ton nombreDePointEleve par exemple, si tu veux mettre un compteur de point il faut que tu le déclare dans ta fonction main et que tu l'envoi a la fonction addition :

int main()
{
long nombreDePoints = 0;
//Un bout de code ...
nombreDePoints = addition(nombreDePoints) ;
/*En fait j'ai juste envoyé nombreDePoints a la fonction addition qui retourne une valeur*/
/*qui est le nombreDePoints modifier*/
//Un bout de code ...
}

long addition(long nombreDePoints) // Il faut écrire long et pas void pour la fonction car elle retourne une valeur de type long
{
//Un bout de code
if(resultatEtudiant == resultatCorrect) // Si le resultat est correct ...
printf("Bravo vous avez trouver le bon resultat\n\n"); // ... alors il reçoit des félicitations
nombreDePoints = nombreDePoints + 5 ; // Et son score augmente de 5

else if(resultatEtudiant != resultatCorrect) // Par contre si il est faux ...
printf("C'est faux ! Il va falloir réviser !\n\n"); // ... il se fait taper sur les doigts

return nombreDePoints ; // Il ne faut pas oublier le return ( En fait ta fonction retourne une valeur et là elle retourne nombeDePoints
}

C'est pas très compliqué au niveau du score et pour vérifier si le score de l'élève est au-dessus de la moyenne il faut déjà que tu définisse a l'ordinateur c'est quoi la moyenne (par exemple si ton score final est sur 40 alors il faut dire a l'ordinateur que moyenneTest = 20 ; ) et ensuite il suffit juste de vérifié si le score de l'élève est supérieur a la moyenne avec le signe ">". Donc voilà et dsl de ne pas pouvoir mettre le code en C++ car je ne sais pas codé en C++ .
0
salut encore une fois,

je crois que tu ne vas pas te fatigue car tu as commencer dans l'idee de m'aider et je ne crois pas que tu vas me laisser tomber maintenant.
je veux te donner une idee de ce que j'ai penser en ce sujet et tu peux me corriger alors si je suis dans l'erreur.

#include<iostream.h>
class test_student
{
private:
int long number1=0,number2=2;
int result_student=0;
int result_correct=0;
char sign;
int student_choice[10]={o};
int long number_point=0;
int numberpoint=0;
public:
void addition()
{
cout<<"enter the first number";
cin>>number1;
cout<<"enter the second number";
cin>>number2;
cout<<"entrer le resultat \n";
cin>>result_student;
resultcorrect=number1+number2
}
{
if(result_correct==result_student)
cout<<"vous avez entrer la bonne reponse ";
cout<<"vous avez gagner 5 points";
}
numberpoint=numberpoint+5;
else if(result_student!=result_correct)
cout<<"vous avez entrer une mauvaise reponse";
cout<<"vous avez 0 point";
return numberpoint;
}
{
for(studentchoice=0;studentchoice<10;studentchoice++)
}
}
void soustraction()
{
*//la meme chose pour la soustraction ,multiplication et division...*//

*//...alors ala fin je sois faire appelle a la fonction main...*//

void main()
{
char sign;
test_student m1;
cout<<"choose the sign operator";
cin>>sign;
if(sign=='+')
m1.addition();
if(sign='-')
m1.soustraction()
if(sign='*')
m1.multiplication()
if (sign='/')
else
cout<<"vous avez entrer un signe operationnel incoret";
studentchoice++
}
}
}

je ne sais pas ce que t'en pense mon frere.
merci de la correction de tout a l'heure.tu peux toute fois me corriger en c et je veux tjrs me debrouiller
et si quelqu'un d'autre peut conaitre mieux le c++ peut m'aider aussi

Dodo.
0
Wanted59 Messages postés 44 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 15 octobre 2009 7
10 mars 2009 à 18:22
Lu dodoli, ton code ma l'air correct en gros mais par contre je ne sais pas si c'est une spécificité du C++ mais moi quand j'écrit " void addition() " c'est que la fonction addition ne retourne rien du tout, or tu as mi a la fin de cette fonction " return numberpoint; " donc si c'est une spécificité du C++ j'ai rien dit et au niveau des crochet je n'arrive pas trop a suivre car quand je voit :
void addition()
{
cout<<"enter the first number";
cin>>number1;
cout<<"enter the second number";
cin>>number2;
cout<<"entrer le resultat \n";
cin>>result_student;
resultcorrect=number1+number2
} // Pour moi la fonction addition s'aréte ici
{
if(result_correct==result_student)
cout<<"vous avez entrer la bonne reponse ";
cout<<"vous avez gagner 5 points";
}

Et aussi un petit truc qui n'est pas vraiment une faute de programation en soit mais sa fait bizard :
cout<<"enter the first number"; // Tu le met en anglais
cin>>number1;
cout<<"enter the second number"; // Tu le met en anglais
cin>>number2;
cout<<"entrer le resultat \n"; // Et là c'est du français ^^

Mwa je ne voit que ça mais bon je ne suis pas un pro du C et encore moins du C++ que je ne connai pas du tout mais j'arrive quand même un peu a m'y repérer dans ton code, sinon tu l'a testé et il marche?
0
salut mon frere,

je viens encore une fois de recevoir ton mail et j'en suis vraiment revi de ton aide.
alors tu sais ce qui me complique un peu est qu'ala fin ca doit totaliser la somme de point que l'etudiant a eu.
alors c'est ce que je ne comprend pas clairement.
en plus je ne pas le gererateur c++,mais j'ai juste c.
j'etudie aussi le c a l'ecole,mais je suis encore au debut,nous sommes sur les tableaux alors tu comprend un peu ce que j'en souffre mais quand je vois ce que tu me fait je le comprend parfaitement.c'est le meme algorithme mais au langage different.

essaye un peu de me faire ca en c et apres je veux te dire ce que ca va donner en c++

merci encore de ta patience

A tte.
0
Wanted59 Messages postés 44 Date d'inscription vendredi 6 mars 2009 Statut Membre Dernière intervention 15 octobre 2009 7
16 mars 2009 à 16:51
Dsl dodoli de ne pas avoir rep avant :s j'avais plein d'autre truc en tete et je t'avais totalement oublié dsl.
Euh là en faite tu me demande de faire tout le code?
0