Verzweigungen, Schleifen und Felder in C++



  • @Jockelx Du hast die Aufgabestellung.. was fehlt dir noch?



  • Wir sind hier kein "Hausaufgabenmacher-Forum".
    Du mußt schon selber den Code (bzw. einen sinnvollen Ansatz) erzeugen, und bei Fehlern, welche du - auch nach Recherche im Internet - nicht alleine gelöst bekommst, kannst du dich dann hier melden.

    Ansonsten wäre ich dafür, solche Beiträge zu sperren (also wo nur die Aufgabe gepostet wird und sonst nichts weiter).



  • @Jockelx sagte in Verzweigungen, Schleifen und Felder in C++:

    @Ana448
    Mal ernsthaft, das ist echt ohne Worte...in der Regel musst du hier im Forum einfach selbstständig folgendes abliefern

    int main()
    {
      //totaler Mist
    }
    

    Naja, "totaler Mist" ist was anderes. Sieht halt wie ein Anfängerprogramm aus. Gibt einiges zu kritisieren, aber das Programm löst doch zumindest schon mal einen Teil der Aufgabe. Jetzt muss @Ana448 nur noch in die Schleife über alle Zahlen das cout << i << " "; durch die if-Bedingung if (zahl-ist-gerade) cout << i << " "; ersetzen und Teil 1 ist fertig.

    Für den Aufgabenteil mit dem Array fehlt noch jeglicher Ansatz.



  • @wob

    int a, b;

    cout << "Geben Sie eine ganze Zahl zwischen 4 und 12 ein: ";
    if(4) cout << i <<" ";
    

    Ich habe überhaupt keine Ahnung, wie das aussehen soll.
    Deswegen habe ich um die Hilfe gebetet.



  • @wob sagte in Verzweigungen, Schleifen und Felder in C++:

    Naja, "totaler Mist" ist was anderes. Sieht halt wie ein Anfängerprogramm aus

    Das hast du wohl völlig falsch verstanden (bzw. offenbar nicht gelesen): ich habe gesagt, was idR als Eigenleistung ausreichend ist, um hier gute Hilfe zu bekommen. Dieses stumpf kopierte Lösungsprogramm habe ich mir weder angeschaut noch irgendwie bewertet.



  • @Jockelx

    Das hast du wohl völlig falsch verstanden

    Ah, ok. Dann volle Zustimmung. Ich dachte nur, dass meine ersten Programme genauso ausgesehen haben (nur in Pascal). Also viel zu wenig in Funktionen ausgelagert, magische Werte im Programm (was hier - sehr zu meinem Horror - in der Aufgabenstellung vorgeschlagen wird!) usw.

    @Ana448 sagte in Verzweigungen, Schleifen und Felder in C++:

    Ich habe überhaupt keine Ahnung, wie das aussehen soll.

    Worauf beziehst du dich jetzt? Das "Geben Sie eine ganze Zahl zwischen 4 und 12 ein: "; hast du doch schon erledigt?! (wenn auch nur mit Wiederholung der Bedingung (a < 4 || a > 12) - versuch mal, diese Bedingung nur 1x schreiben zu müssen)

    Ich dachte, es geht dir nur noch darum, ausschließlich gerade Zahlen auszugeben?

    So können Sie C++ überprüfen lassen, ob eine Zahl gerade oder ungerade ist: 13%2 liefert den Wert 1.

    Dann kannst du dir überlegen, ob du das bei jeder Ausgabe in einer Loop über alle ganzen Zahlen im Bereich prüfst oder ob du in der Loop einfach immer 2 weiter gehst und nur einmalig den Anfangswert anpasst (Dazu steht ja in der Aufgabe auch drin, wie man den Wert einer Variablen um 2 erhöht).



  • @wob
    int main()

    {
    cout << "Geben Sie eine ganze Zahl zwischen 4 und 12 ein: ";
    if(a < 4 || a > 12) cout << i <<" ";
    return 0;
    }
    

    Bei mir geht es nicht, was mache ich verkehrt?
    Ich weiß es nicht, wie es weiter geht..



  • Es geht so weiter, das du den Fehler identifizierst und ihn behebst. "geht nicht" ist keine Fehlerbeschreibung.



  • Das ist der Anfang des Programms. Ist es richtig?

    int a, b;
    cout << "Geben Sie eine Zahl zwischen 4 und 12 ein: ";

    do {
    		 cin >> a;
    		 if(a < 4 || a > 12)
    	    cout<< "Versuchen Sie es erneut, die Zahl muss zwischen 4 und 12 liegen: ";
    	}
    
    while(a < 4 || a > 12);
    	    cout << "Wählen Sie zwischen vorwärts (Zahl 1) und rückwärts: ";
    
             cin >> b;


  • Wenn das der Anfang des Programms ist, dann ist das nicht richtig.



  • @Ana448 warum denn jetzt rückwärts?
    Es soll doch ein Zahl eingegeben werden, die um mindestens 3 größer ist als a

    Das funktioniert auch nicht anders als bei a

    cout << "Geben Sie eine Zahl..... ein: ";   // Text für den Benutzer
    
    do {
        cin >> b;  // Eingabe 
        if(   Testausdruck )  // Test für die Fehlermeldung
            cout<< "Versuchen Sie es erneut, die Zahl ... : ";  // Fehlermeldung
     
    }
    while( Testausdruck );  // Test, ob Eingabe erfolgreich war und somit die Schleife zuende ist
    


  • @DirkB
    Danke!

    So weit bin ich jetzt..

    cout << "Geben Sie eine Zahl zwischen 4 und 12 ein: ";

    do {
    		 cin >> b;
    		 if(a < 4 || a > 12)
    	    cout<< "Versuchen Sie es erneut, die Zahl muss zwischen 4 und 12 liegen: ";
    	}
    
    while(a < 4 || a > 12);


  • @Ana448 Welche Bedingungen muss b erfüllen?

    Ich hatte extra ... in die Texte und Testausdruck geschrieben, weil es nichts mit 4 und 12 zu tun hat.



  • @DirkB
    Ich habe keine Ahnung davon, und dachte, dass ich hier eine Hilfe bekommen kann.
    Leider ist es nur Zeitverschwendung.


  • Mod

    @Ana448 sagte in Verzweigungen, Schleifen und Felder in C++:

    Leider ist es nur Zeitverschwendung.

    Das hast du richtig erkannt. Closed.


Anmelden zum Antworten