Mehrere if/else, Aber wie?



  • Hallo,
    ich bin grade dabei ein Programm zu programmieren , dass mir bei der Arbeit helfen soll.
    Leider habe ich ein Problem denn wenn ich etwas eingebe was auf eine der if-Bedingungen nicht zutrifft kommt direkt die else Aktion als Folge, dabei möchte ich nur dass else passiert wenn keine der if Bedingungen zutrifft.
    Ich habe es mal komplett vereinfacht hier rein kopiert damit ihr seht was ich meine.

    [code]
    int zahl;

    cout << "Zahl Eingeben" << endl;
    cin >> zahl;

    if (zahl == 1)
    {
    cout << "zahl ist eins" << endl;
    }else{
    cout << "zahl ist nicht eins oder zwei" << endl;
    }

    if (zahl == 2)
    {
    cout << "zahl ist zwei" << endl;
    }else{
    cout << "zahl ist nicht eins oder zwei" << endl;
    }



  • if = 1
    elseif = 2
    elseif = 3
    usw.
    

    oder gruppieren:

    if (zahl >= 1 && <= 10) //zwischen 1 und 10
    ...
    

    oder:

    switch (zahl) {
    
    case 1:
    ...
    break;
    
    case 2:
    ...
    break;
    
    default:
    
    }
    


  • du könntest dein problem mit :

    if ( zahl == 1 )
    {
      //...
    }elseif( zahl == 2 )
    {
      //...
    }
    

    lösen.

    oder man kann auch den ||-Operator (wie Oder) benutzen:

    int main()
    {
    	int zahl;
    
    	cout << "Zahl Eingeben: \n";
    	cin >> zahl;
    
    	if ( zahl == 1 || zahl == 2 ) //hier 1 oder 2 - wahr
    	{
    		cout << "zahl ist :" << zahl <<  "\n";
    	}
    	else
    	{
    		cout << "zahl ist nicht eins oder zwei \n";
    	}
    }
    


  • Ein elseif gibts in C++ nicht! Da muss ein Leerzeichen dazwischen: else if



  • sebi707 schrieb:

    Ein elseif gibts in C++ nicht! Da muss ein Leerzeichen dazwischen: else if

    oh stimmt danke 🙂 , hab mich vorhin vertippt. natürlich gibt nur "else if () {...};"
    🙄

    hoff ich konnte helfen
    lg


Anmelden zum Antworten