Je suis débutant en C++ et j'écris un programme qui accepte les choix de l'utilisateur et agit en fonction de cela ... mon seul problème est quand l'utilisateur entre en majuscule ... le programme le traite comme un mauvais choix ... comme si 'e' était un choix pour entrer un nombre .. si l'utilisateur a entré 'E' le programme n'affichera pas le message "entrer le numéro" ... comment puis-je le réparer? J'ai essayé de mon mieux, mais je ne peux pas le faire fonctionner .. Oh, et comment puis-je ajouter les majuscules dans les cas Switch? C'est la partie du code qui est responsable de choisir l'utilisateur et d'agir en conséquence.Quel code doit être écrit pour accepter les choix de majuscules et de minuscules?
#include <iostream>
#include <cstring>
using namespace std;
int main(){
char choice ;
for(;;){
do{
cout << endl ;
cout << "(e)nter." << endl ;
cout << "(d)isplay." << endl;
cout << "(u)pdate." << endl ;
cout << "(r)eset. " << endl;
cout << "(q)uit." << endl;
cout << endl;
cout << "Choose one : " ;
cin >> choice ;
if(!strchr("edurq",choice) && (choice>=97&&choice<=122)){
cout << "Enter e,d,u or q " << endl;}
else if(!strchr("EDURQ",choice) && (choice<97&&choice>122)){
cout << "Enter E,D,U or Q " << endl;}
}while(!strchr("edurqEDURQ",choice));
switch (choice) {
case 'e' : enter(); break ;
case 'd' : display(); break ;
case 'u': update() ; break ;
case 'r' : reset() ;break;
case 'q' : return 0;
}
}
}
'strchr ("EDURQ", choix) && (choix <97&&choice> 122)': rien ne peut être à la fois '<97' and '> 122', non redondant avec l'appel' strchr' en tous cas ? –