Frage zu while-Schleife



  • Hallo

    😕 Warum funktioniert diese Schleife nicht? Sie soll eigenltich nur den input von 0 bis zur höhe des inputs aufzählen... kann mir da wer helfen?

    #include <iostream>
    using namespace std;

    [/cpp]
    int main()
    {

    int input;
    cin >> input;
    int i;

    while (i = 1, i++, i == input)
    {

    input++;
    cout << input << endl;

    }

    return 0;
    }
    [/cpp]

    Danke & Lg



  • schau dir mal die grundlagen an, wie for, while und do-while aussehen.



  • Warum meinst du poste ich hier rein????????????????????????????



  • Weil du zu faul bist ein Buch oder Tutorial anzuschauen? Der Fehler ist total offensichtlich und in meiner ersten Antwort ist eigentlich auch ein Hinweis drin.



  • Das sind nun wirklich allererste Grundlagen. Reiss dich zusammen und schau ein Buch oder Tutorial an. So bringt das hier niemandem was.

    Wir beantworten zwar gerne Fragen, aber ein bisschen anstrengen sollte man sich als Fragesteller schon. Wenn man einfach mit Codefetzen kommt und fragt, was falsch ist, ohne sich damit befasst zu haben, braucht man auch keine Hilfe zu erwarten.



  • fuck you all



  • f.u.c.k you all



  • Mit diesem Verhalten kommst du sicherlich nirgends weiter.

    Da ich aber Leuten helfen möchte, die diesen Thread sehen und vielleicht selbiges Problem haben:

    Eine while-Schleife erwartet eine Bedingung. (z.B. x>10)

    So lange diese Bedingung erfüllt ist (true liefert), läuft sie durch. Andernfalls wird sie abgebrochen und es geht weiter im Programm.

    Den Ausdruck, den du in die while-Bedingung hineingenommen hast, ist 1. syntaktisch falsch und 2. wenn er syntaktisch korrigiert wurde, eher für eine for-Schleife gedacht, was übrigens auch der kleine Tipp von ähhhhh war.

    Edit: Wenn ich mir deinen Code so ansehe, solltest du dich vielleicht erst einmal mit den Grundlagen von C++ vertraut machen!



  • Wollen wir mal hoffen das ich nicht wieder von Nexus einen auf den Deckel bekomme...
    Also das was du suchst sollte einer for-Schleife entsprechen.

    for(int i=0; i<input; i++)
    {
     cout<< input <<endl;
    }
    


  • way schrieb:

    Wollen wir mal hoffen das ich nicht wieder von Nexus einen auf den Deckel bekomme...
    Also das was du suchst sollte einer for-Schleife entsprechen.

    for(int i=0; i<input; i++)
    {
     cout<< input <<endl;
    }
    

    'i' als Integer-Wert in der for-Schleife zu deklarieren, ist ANSI C und nicht C++ ... ANSI C befindet sich ein Forum über C++ 😛



  • way schrieb:

    Wollen wir mal hoffen das ich nicht wieder von Nexus einen auf den Deckel bekomme...

    Sorry, das im anderen Thread war nicht persönlich gemeint, aber ich war eben der Meinung, man müsse schon auf fehlerhafte Antworten hinweisen.

    root2k schrieb:

    'i' als Integer-Wert in der for-Schleife zu deklarieren, ist ANSI C und nicht C++ ... ANSI C befindet sich ein Forum über C++ 😛

    Das ist falsch, wenn schon, wäre eher das Gegenteil der Fall. Deklarationen in For-Schleifenköpfen ist gängiges C++.



  • int i;
    for(i=0; i<11; i++)
    {
     cout<<"Löwenzahn"<<endl;
    }
    

    Und jetzt komm mir nicht, dass die Einrückungen nicht passen ;-D.



  • root2k schrieb:

    way schrieb:

    Wollen wir mal hoffen das ich nicht wieder von Nexus einen auf den Deckel bekomme...
    Also das was du suchst sollte einer for-Schleife entsprechen.

    for(int i=0; i<input; i++)
    {
     cout<< input <<endl;
    }
    

    'i' als Integer-Wert in der for-Schleife zu deklarieren, ist ANSI C und nicht C++

    Seit wann?



  • way schrieb:

    Und jetzt komm mir nicht, dass die Einrückungen nicht passen ;-D.

    Dieses Mal hattest du mit deinem ersten Post schon Recht, way. 😉



  • *beated* x_x



  • Hab für dich einen leichten Schleifen Quelltext für die Grundlagen gemacht. Geh ihn durch und versuch ihn zu verstehn..
    Versuch ihn zu verstehen indem du in einpaarmal debuggst^^
    #include <stdio.h>

    int main (void) {

    int i;

    printf("For-Schleife:\n");
    for (i=1; i<=100; i=i+1) {

    if (i%6 != 0)
    printf("%4d", i);
    else
    printf(" *");

    if(i%10 == 0)
    putchar('\n');
    }while(i<=100);

    printf("\n\nDo-While Schleife:\n");

    i=1;
    do{
    if (i%6 != 0)
    printf("%4d", i);
    else
    printf(" *");

    if(i%10 == 0)
    putchar('\n');
    i=i+1;
    }while (i <= 100);

    printf("\n\nDo-Schleife:\n");
    i=1;
    while (i<= 100) {
    if(i%6 != 0)
    printf("%4d", i);
    else
    printf(" *");
    if (i%10 == 0)
    putchar('\n');
    i=i+1;
    }
    getchar();
    return 0;
    }



  • ich dachte das hier ist das C++ Forum 🙄



  • meinst du mich?



  • Hast du was gegen den Quelltext einzuwenden ?



  • lancelot94 schrieb:

    meinst du mich?

    Ist stark anzunehmen. 🤡


Anmelden zum Antworten