hilfe für Anfänger



  • So grob:

    char buchstabe;
    bool unbekannt = true;
    
    /* ... */
    
    switch(buchstabe)
    {
        case 'a':
        case 'A':
            unbekannt = false;
            /* ... */
            break;
    
        case 'b':
        case 'B':
            unbekannt = false;
            /* ... */
            break;
    
        case 'c':
        case 'C':
            unbekannt = false;
            /* ... */
            break;
    
    }
    
    if(unbekannt)
    {
        /* ... */
    }
    


  • er hat doch gesagt ohne default....



  • Ops aber ich habs editiert



  • wenns nun eh schon gesagt wurde ..
    wie wäre es hiermit zB

    char input;// wenn du auch testen willst ob man mehr als 
    			   //nur ein char eingegeben hat nimm einfach std::string
    	std::cout<<"input ->";
    	std::cin>>input;
    	switch(std::tolower(input)){
    		case 'a': std::cout<<" it was an a\n";return 0;
    		case 'b': std::cout<<" it was an b\n";return 0;
    		case 'c': std::cout<<" it was an c\n";return 0;
    	};
    	std::cout<<"it was  another one...\n";
    

    also return 0
    wenns in der main ist ...wenn es in einer Funktion ist natürlich entsprechend des Rückgabewertes wenn die ganze Sachen aber weiter gehen sollte könnte man auch einfach

    input=std::tolower(input);
    	switch(input){
    		case 'a': std::cout<<" it was an a\n";break;
    		case 'b': std::cout<<" it was an b\n";break;
    		case 'c': std::cout<<" it was an c\n";break;
    	};
    	if(input>'c' || input < 'a')
    		std::cout<<"it was  another one...\n";
    


  • #include <iostream>
    using namespace std;

    int main(){
    char Buchstabe;
    cout << "bitte Buchstaben eingeben";
    cin >> Buchstabe;
    switch(Buchstabe){
    case 'a':
    case 'A':
    cout << "Buchstabe A";
    break;
    //dann so bis C weiter
    if(!('a','b','c','A','B','C')){
    cout << "Kenne ich nciht";
    }
    return 0;
    }

    Bitte nicht in C abrutschen, dann bin ich total am ENde



  • hiler schrieb:

    #include <iostream>
    using namespace std;

    int main(){
    char Buchstabe;
    cout << "bitte Buchstaben eingeben";
    cin >> Buchstabe;
    switch(Buchstabe){
    case 'a':
    case 'A':
    cout << "Buchstabe A";
    break;
    //dann so bis C weiter
    if(!('a','b','c','A','B','C')){
    cout << "Kenne ich nciht";
    }
    return 0;
    }

    Bitte nicht in C abrutschen, dann bin ich total am ENde

    Hallo,
    das ist doch schonmal ein Anfang.

    Jetzt erstmal Code-tags benutzen und dann noch ein if reinhauen. Dann sieht das ungefähr so aus:

    #include <iostream>
    using namespace std;
    
    // die Funktion tolower(char) wandelt den übergebenen Buchstaben (sofern dieser groß ist) in einen
    // Kleinbuchstaben um. Ich würde diese Funktion zu Hilfe ziehen, da du so Schreibarbeit sparst und es ändert ja nichts an der Funktionalität...
    int main()
    {
            char Buchstabe;
            cout << "bitte Buchstaben eingeben";
            cin >> Buchstabe;
            switch(tolower(Buchstabe))
            {
                    case 'a':
                            cout << "Buchstabe A";
                            break;
    
                    // weiter bis c:
            }
            // wenn nicht a, b, c, A, B, C
            if(tolower(Buchstabe) != 'a' && tolower(Buchstabe) != 'b' && tolower(Buchstabe != 'c'))
                    cout << "\n Kenne ich nicht.\n";
    
            return 0;
    }
    

    Caipi



  • tja Caipi... sind wa ja fast gleichdenkende Menschen @mein post
    gg immerhin einer Meinung ^^



  • shapeless schrieb:

    tja Caipi... sind wa ja fast gleichdenkende Menschen @mein post
    gg immerhin einer Meinung ^^

    Ups... Deinen Post hab ich irgendwie 'überlesen'. Zudem ist dein Lösungsvorschlag bzg der if auch noch viel eleganter... - Sorry.

    Caipi



  • So z.B:

    #include <iostream>
    #include <string>
    
    int main()
    {
        char eingabe;
    
        std::cout << "Eingabe: ";
        std::cin >> eingabe;
    
        bool gefunden = false;
        switch(tolower(eingabe))
    	{
    		case 'a':
    			std::cout << "Das war ein A";
    			gefunden = true;
    			break;
    
    		case 'b':
    			std::cout << "Das war ein B";
    			gefunden = true;
    			break;
    
    		case 'c':
    			std::cout << "Das war ein C";
    			gefunden = true;
    			break;
    	}
    
    	if(!gefunden)
    	{
    		std::cout << "Diesen Buchstaben kenn ich nicht!";
    	}
    }
    


  • Caipi schrieb:

    shapeless schrieb:

    tja Caipi... sind wa ja fast gleichdenkende Menschen @mein post
    gg immerhin einer Meinung ^^

    Ups... Deinen Post hab ich irgendwie 'überlesen'. Zudem ist dein Lösungsvorschlag bzg der if auch noch viel eleganter... - Sorry.
    Caipi

    lach ach was .. no prob 🙂


Anmelden zum Antworten