Schreibe nächste Woche mal wieder ne Klausur im Fach Programmieren.
"Großes" ( ) Thema Funktionen.
Dazu mal eben folgendes Beispiel:
Zitat
int ZeichenEingabe(){
int iRetVal;
char szEingabe[10];
cin>>szEingabe;
if(isdigit(szEingabe[0])){
cout<<"Korrekte Eingabe \n\n";
}
else{
cout<<"Flasche Eingabe \n\n";
}
iRetVal=atoi(szEingabe);
return iRetVal;
}
int main(){
int iZahl0 = ZeichenEingabe();
int iZahl1 = ZeichenEingabe();
int iZahl2 = ZeichenEingabe();
int iZahl3 = ZeichenEingabe();
int iZahl4 = ZeichenEingabe();
int iZahl5 = ZeichenEingabe();
cout<<"PIN lautet: \n\n";
cout<<iZahl0;
cout<<iZahl1;
cout<<iZahl2;
cout<<iZahl3;
cout<<iZahl4;
cout<<iZahl5;
cout<<" \n\n";
system("pause");
return 0;
}
int iRetVal;
char szEingabe[10];
cin>>szEingabe;
if(isdigit(szEingabe[0])){
cout<<"Korrekte Eingabe \n\n";
}
else{
cout<<"Flasche Eingabe \n\n";
}
iRetVal=atoi(szEingabe);
return iRetVal;
}
int main(){
int iZahl0 = ZeichenEingabe();
int iZahl1 = ZeichenEingabe();
int iZahl2 = ZeichenEingabe();
int iZahl3 = ZeichenEingabe();
int iZahl4 = ZeichenEingabe();
int iZahl5 = ZeichenEingabe();
cout<<"PIN lautet: \n\n";
cout<<iZahl0;
cout<<iZahl1;
cout<<iZahl2;
cout<<iZahl3;
cout<<iZahl4;
cout<<iZahl5;
cout<<" \n\n";
system("pause");
return 0;
}
Frage: Welchen Sinn seht ihr in dem Programm?!?! Ich kapier nicht welche bedingungen es für das "korrekt oder falsch" gibt.
Also... wann ist die Eingabe "korrekt" und wann "falsch" ?
Müssen die eingegebenen Zahlen einfach nur vom Datentyp INT,VOID oder CHAR sein?
Dann..... wozu ist die if/else Verzweigung?
Und wie muss das mit dem "isdigit" geschrieben werden damit Werte wie zB Buchstaben zum schluss als zB "-1" und NICHT als "0" augegeben werden (also damit keine verwechslung zwischen der "0"=ungültig und der "0"=Ziffer entstehen)..?!
Danke im voraus, Stephan.