WinFuture-Forum.de: C++ Klausur! ///help! - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

C++ Klausur! ///help! Thema "Funktionen"


#1 Mitglied ist offline   dRead 

  • Gruppe: Mitglieder
  • Beiträge: 15
  • Beigetreten: 19. Dezember 04
  • Reputation: 0

geschrieben 06. März 2005 - 16:43

Hi @ all ;)

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;
                          }   


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.
0

Anzeige



#2 Mitglied ist offline   dRead 

  • Gruppe: Mitglieder
  • Beiträge: 15
  • Beigetreten: 19. Dezember 04
  • Reputation: 0

geschrieben 06. März 2005 - 17:28

EDIT

char szEingabe[10];

wofür steht die [10] ?


if(isdigit(szEingabe[0]))

wofür steht die [0] ?

Sry für die (bestimmt) dummen Fragen aber irgendwie muss ich druchblicken/verstehen
0

#3 Mitglied ist offline   Bolt 

  • Gruppe: Mitglieder
  • Beiträge: 7
  • Beigetreten: 07. Juni 02
  • Reputation: 0

geschrieben 06. März 2005 - 18:07

Zitat

Frage: Welchen Sinn seht ihr in dem Programm?!?! Ich kapier nicht welche bedingungen es für das "korrekt oder falsch" gibt.
Das Programm soll eine sechsstellige Kennzahl einlesen, dazu wird im Programm sechsmal die Funktion ZeichenEingabe() aufgerufen.

Zitat

Also... wann ist die Eingabe "korrekt" und wann "falsch"
die Funktion vergleicht in der IF-Anweisung, ob das erste Array- Element eine Zahl ist oder nicht. Ist das Element eine Zahl, dann gibt isdigit() einen nicht Nullwert für wahr, andernfalls eine null für falsch zurück.

Zitat

Müssen die eingegebenen Zahlen einfach nur vom Datentyp INT,VOID oder CHAR sein?
die eingegebenen Zeichen sind vom Typ char. Anmerkung: void ist kein Datentyp, sondern sagt nur aus, dass eine Funktion zum Beispiel keinen Rückgabewert hat.

Zitat

wozu ist die if/else Verzweigung?
ist die Aussage hinter if war,so wird "Korrekte Eingabe" auf dem Bildschirm ausgegeben, andernfalls "Flasche Eingabe" <_<.

Zitat

wofür steht die [10] ?
gibt an, dass das Array 10 Elemente aufnehmen kann.

Zitat

wofür steht die [0] ?
hiermit kann auf das erste Element (Achtung index beginnt bei null)zugegriffen werden. Merke dir, wenn ein Array erstellt wird gibt die Zahl die Anzahl der Elemente an,andernfalls kannst du über den Index auf ein bestimmtes Element zugreifen.
0

#4 Mitglied ist offline   XDestroy 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.911
  • Beigetreten: 08. August 02
  • Reputation: 0

geschrieben 06. März 2005 - 19:29

Bolt hat eigentlich alles erklärt...
Ich würde dir noch empfehlen (machst so den eindruck als seien die Grundlagen in deinem kopf nicht so wie sie sein sollten <_< )
www.cpp-tutor.de spitzen seite...
0

#5 Mitglied ist offline   dRead 

  • Gruppe: Mitglieder
  • Beiträge: 15
  • Beigetreten: 19. Dezember 04
  • Reputation: 0

geschrieben 06. März 2005 - 19:36

Zitat (XDestroy: 06.03.2005, 19:29)

Bolt hat eigentlich alles erklärt...
Ich würde dir noch empfehlen (machst so den eindruck als seien die Grundlagen in deinem kopf nicht so wie sie sein sollten <_< )
www.cpp-tutor.de spitzen seite...
<{POST_SNAPBACK}>


Richtig, das macht aber nichts, da wir in der Schule zur Zeit oder immer noch bei den Grundlagen sind.
ABer danke, die Seite kannte ich noch nicht
lg dRead

Dieser Beitrag wurde von dRead bearbeitet: 06. März 2005 - 19:36

0

#6 Mitglied ist offline   dRead 

  • Gruppe: Mitglieder
  • Beiträge: 15
  • Beigetreten: 19. Dezember 04
  • Reputation: 0

geschrieben 07. März 2005 - 19:17

Hoi, me again. :blink:

Hab ne billige Frage zu strings/array´s... Uns zwar, wie definiert man strings/array´s?

Wenn ich

string iVariable[20];

hab ist der string ja nicht definiert sondern lediglich deklariert, oder?
Wie erfolgt die Definition?

thx
0

#7 Mitglied ist offline   tosto 

  • Gruppe: aktive Mitglieder
  • Beiträge: 432
  • Beigetreten: 08. Januar 04
  • Reputation: 0

geschrieben 07. März 2005 - 20:28

könnte man doch mit getline(cin, iVariable) machen, oder?
dann nimmt er immerhin die komplette zeile.
mit cin wäre es auch drin, aber nur solang bis eine leerstelle kommt.
und in nem string muss man eigentlich nicht [x] hinten anstellen, produziert das nicht auch einen fehler? die angabe [x] ist doch eigentlich nur für arrays, wenn ich das richtig mitbekommen hab...

ciao
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0