Ich habe Probleme mit dem If befehl



  • Hallo, ich bin neu und habe erst vor wenigen Tagen mit c++ angefangen. Ich habe mich heute an den "If" Befehl gesetzt, jetzt habe ich das Problem das ich glaube ich hab alles richtig gemacht, aber ich kriege keine Ausgabe

    #include <iostream>

    int main()
    {
    int x = 0;

    std::cout << "Bitte ein gerades vielfaches von 100 eingeben" << '\n'; 
    std::cin >> x; 
    std::cout << x << std::endl; // zum überprüfen ob x neudefienirt ist 
    std::cin.get(); 
    
    if (x == 100)
    {
    	x * 4;
    	std::cout << x << std::endl;
    	std::cin.get();
    }
    
    else if (x == 200)
    {
    	x * 4;
    	std::cout << x << std::endl;
    	std::cin.get();
    }
    
    else if (x == 300)
    {
    	x * 4;
    	std::cout << x << std::endl;
    	std::cin.get();
    }
    
    else
    {
    	std::cout << "Nicht 100,200 oder 300" << std::endl;  // Wusste nicht was ich sonst Hääte schreiben Können 
    }
    
    
    return 0; 
    

    }



  • @Grompf sagte in Ich habe Probleme mit dem If befehl:

    … aber ich kriege keine Ausgabe

    Was meinst du damit?

    Passiert gar nichts in der Konsole / auf dem Bildschirm?
    Dann liegt es vielleicht an deinem System/Entwicklungsumgebung

    werden falsche Werte angezeigt?
    Die Zeilenn 8, 15 und 22 haben keinen Auswirkung.
    Da wird was berechnet, das Ergebnis aber verworfen da damit nichts gemacht wird. x = x*4; oder x *= 4; können das beheben.
    Dafür sollte der Compiler aber eine Warnung ausgeben.



  • @DirkB Achso ok Danke, ich probiere das mal. Ja ich hatte das Problem, dass ich keine Ausgabe habe.



  • @Grompf sagte in Ich habe Probleme mit dem If befehl:

    @DirkB Achso ok Danke, ich probiere das mal. Ja ich hatte das Problem, dass ich keine Ausgabe habe.

    Auch wenn du etwas blind eingibst?
    Dann ändere mal das erste '\n' gegen std::endl

    Welche Entwicklungsumgebung nutzt du?



  • @DirkB sagte in Ich habe Probleme mit dem If befehl:

    Dann ändere mal das erste '\n' gegen std::endl

    @DirkB std::cout und std::cin sind std::ios::tie()d.



  • @Swordfish Bei der Eclipse Konsole gabs doch mal solche Probleme



  • @DirkB Ich habe es nochmal überarbeitet und jetzt klappt es.
    Ich nutze MC Visual Studio

    #include <iostream>

    int main()
    {
    int x = 0;
    int y = 0;

    std::cout << "Bitte eingeben: " << '\n'; 
    std::cin >> x; 
    //std::cout << x << std::endl; // zum überprüfen ob x neudefienirt ist 
    std::cin.get(); 
    
    if (x == 100 || x == 200 || x == 300)
    {
    	y = x * 4;
    	std::cout << x << " * 4 = " << y << std::endl;
    	std::cin.get();
    }
    /*
    else if ( x == 200)
    {
    	
    	std::cout << x << " * 4 = "<< x = x * 4 << std::endl;
    	std::cin.get();
    }
    
    else if (x == 300)
    {
    	x =x * 4;
    	std::cout << x << std::endl;
    	std::cin.get();
    }
    */
    else
    {
    	std::cout << "Nicht 100,200 oder 300" << std::endl;  // Wusste nicht was ich sonst Hääte schreiben Können 
    }
    
    
    return 0; 
    

    }



  • This post is deleted!

Log in to reply