Programme en C, marche pas... :-(
lolseb
Messages postés
77
Statut
Membre
-
lolseb Messages postés 77 Statut Membre -
lolseb Messages postés 77 Statut Membre -
Bonjour,
Je comprend pas pourquoi mon programme ne marche, je voulais qu'il dise s'il a taper sur la bonne lettre ou pas... et il a l'air de totalement oublier le if regarder
#include <math.h>
#include <conio.h>
#include <stdio.h>
int main()
{
double somme,note,moyenne,i; //déclaration des variables
char rep;
i=0; //mettre i à 0
do
{ printf("\nEntrez une note :");
scanf("%lf",¬e);
i++;
somme=somme+note; //addition des notes
printf("Voulez vous continuez: O/oui N/non !?");
fflush(stdin);
scanf("%c",&rep);
if ((rep!='o')||(rep!='O')||(rep!='N')||(rep!='n'))
{ printf("la valeur va s'afficher appuyer sur une touche");
getch();
}
else
{ printf("Veuillez retaper O/Oui ou N/Non");
scanf("%c",&rep);
}
} while ((rep=='o')||(rep=='O'));
moyenne=somme/i; //calcul de la moyenne
printf("La moyenne est de : %.2lf",moyenne);
getch();
}
Voilà et j'ai beau chercher je comprend pas....
aidez moi ^^
Je comprend pas pourquoi mon programme ne marche, je voulais qu'il dise s'il a taper sur la bonne lettre ou pas... et il a l'air de totalement oublier le if regarder
#include <math.h>
#include <conio.h>
#include <stdio.h>
int main()
{
double somme,note,moyenne,i; //déclaration des variables
char rep;
i=0; //mettre i à 0
do
{ printf("\nEntrez une note :");
scanf("%lf",¬e);
i++;
somme=somme+note; //addition des notes
printf("Voulez vous continuez: O/oui N/non !?");
fflush(stdin);
scanf("%c",&rep);
if ((rep!='o')||(rep!='O')||(rep!='N')||(rep!='n'))
{ printf("la valeur va s'afficher appuyer sur une touche");
getch();
}
else
{ printf("Veuillez retaper O/Oui ou N/Non");
scanf("%c",&rep);
}
} while ((rep=='o')||(rep=='O'));
moyenne=somme/i; //calcul de la moyenne
printf("La moyenne est de : %.2lf",moyenne);
getch();
}
Voilà et j'ai beau chercher je comprend pas....
aidez moi ^^
Configuration: Windows XP Firefox 2.0.0.12
4 réponses
-
Bonjour,
La condition de ta boucle if ne doit pas être à base de "ET"?
Electrodeb -
1. Tavariable de cumul somme n'est pas initialisée. Lors de sa 1re utilisation, sa valeur sera n'importe quoi.
2. Pour saisir un caractère de choix de menu, tu peux faire :
rep = getch();
switch (rep) {
case 'n' :
case 'N' :
.....
C'est plus clair
3. à quoi sert ton gettch() en fin de boucle ?
-
normal je me susi trompé ce n'étais pas des != c'est des == mais sa marche toujours pas... je le modifie sur mon message en fait on peu pas alors voilà c'est aps des différent mais c'est des égale dans mon if
-
mon getch() de fin de boucle me sert à attendre avant de fermer le programme que je visualise tout, mais c'est quoi ces chose bizard en case ;) pourrais tu m'expliquer?