Gerade Zahlen durch Modulo Operator ausgeben



  • Huhu,ich soll in einem festen Wertebereich von sagen wir mal 0-100 durch Modulo Division alle geraden Zahlen innerhalb des Bereichs ausgeben.
    Ich habe gerade erst mit dem Programmieren angefangen deswegen vielleicht erstmal kurz mein Gedankengang:

    3 Variablen deklarieren
    a=0
    b=100
    c

    while schleife die von 0-100 immer um 1 inkrementiert wird,
    modulo division von a%2=c
    Falls c=0
    Ausgabe von a...

    Nun habe ich versuch tdas ganze in den Programmtext zu schreiben das ganze schaut wie folgt aus:

    #include <iostream>
    #include <iomanip>
    using namespace std;

    int main() {
    int a = 0;
    int b = 100;
    int c;

    { while (a < b)
    a++;
    a % 2 == c;}
    if (c == 0)
    cout << a << endl;

    }

    irgendwas scheint da aber ganz und gar nicht zu stimmen...wäre nett wenn jemand nen kurzen Denkanschub geben könnte was schief läuft,danke schonmal!



  • Die geschweite klammer vor dem while ist falsch.
    So wie es dasteht ist nur a++ in der whileschleife.
    Setz die 2. eröffnende geschweifte Klammer
    direkt nach das while und dir fehlt fferner nioche ine schließende für die main funktion



  • Außerdem willst du c den Wert a % 2 zuweisen. Im Moment prüfst du auf Gleichheit.



  • ah sehe gerade die 2. schließende klammer, also fehlt die doch nicht.
    Trotzdem ist die eröffnende falsch gesetzt



  • #include <iostream>
    #include <iomanip>
    using namespace std;

    int main() {
    int a = 0;
    int b = 100;
    int c;

    while (a < b)
    {
    a++;
    a % 2 = c;
    if (c == 0)
    cout << a << endl;}

    return 0;

    }

    würd ich nun nehmen,bekomme aber nun bei der Zuweisung immer eine Fehlermeldung.



  • ok,hat sich dann gerade erledigt,hatte total vergessen,dass das c zuerst stehen muss und dann die Berechnung,danke für eure Hilfe!


Anmelden zum Antworten