Hilfe bei einer Addition



  • Heißt Dein Lehrer Büttner?

    Dann antworte wie Gauß:

    unsigned long klGauss( unsigned long n )
    {
        return (n*n+n)/2;
    }
    
    unsigned long summe( unsigned long a, unsigned long b )
    {
        return klGauss( b ) - klGauss( a );
    }
    

    😃

    mfg Martin



  • Nee mein Lehrer heißt nicht büttner ^^

    PS ich habe vergessen noch zu schreiben, dass am ende,

    das stehen soll:

    std::cout << "Summe: " << summe;
    return 0;
    }

    ja ich habe zwar ein Programm womit ich es testen kann, aber ich komme darauf auch irgendwie noch nicht klar. Ich habe Microsoft visual studio express 2013 für windows.

    Das Problem ist wenn ich es testen lasse also ausführe kommt eine Fehlermeldung aber es zeigt nicht an wo es ist bzw. ist öffnet sich kein anderes Fenster oder ähnliches. Muss mich noch mit dem Programm auseinandersetzen.
    Oder empfehlt ihr mir ein anderes Programm?

    for(int i=a; i<=b;i++)
    

    das wäre ja komplett falsch oder nicht i++ zählt ja eins höher und i<=b ist auch falsch. bei ner Zahlenreihe kann man es gut nachvollziehen finde ich aber bei zwei bestimmten ganzen Zahlen kriege ich es nicht hin.

    LG



  • capri03 schrieb:

    for(int i=a; i<=b;i++)
    

    das wäre ja komplett falsch oder nicht i++ zählt ja eins höher und i<=b ist auch falsch. bei ner Zahlenreihe kann man es gut nachvollziehen finde ich aber bei zwei bestimmten ganzen Zahlen kriege ich es nicht hin.

    Wieso sollte das falsch sein? i geht von a bis einschließlich b.



  • capri03 schrieb:

    Das Problem ist wenn ich es testen lasse also ausführe kommt eine Fehlermeldung aber es zeigt nicht an wo es ist bzw. ist öffnet sich kein anderes Fenster oder ähnliches. Muss mich noch mit dem Programm auseinandersetzen.

    Das ist allerdings ein Problem. Die Lösung gehört allerdings nicht in diesen Thread.
    Für die Zwischenzeit kannst Du einen online-compiler benutzen. Meinetwegen http://coliru.stacked-crooked.com/.

    capri03 schrieb:

    for(int i=a; i<=b;i++)
    

    das wäre ja komplett falsch oder nicht i++ zählt ja eins höher und i<=b ist auch falsch. bei ner Zahlenreihe kann man es gut nachvollziehen finde ich aber bei zwei bestimmten ganzen Zahlen kriege ich es nicht hin.

    Du machst Dir glaube ich zuviele Gedanken - liegt sicherlich auch daran, dass Du den Code nicht einfach ausführen kannst. Es böte sich u.U. auch an, zum testen mal versuchen a und b näher aneinander zu rücken, z.B. Summe der Zahlen [17, 18] = 17 + 18 = 35. Oder so. 🙂



  • Wenn da etwas von Intervall steht, heisst das nicht, dass du zwei Zahlen addieren sollst. Du solltest dir also zunächst noch mal Gedanken über die Aufgabe machen.
    Die Schleife sieht (soweit du sie zeigst) richtig aus.
    Natürlich musst du dich mit deinem Compiler und deiner IDE vertraut machen. VS zeigt dir Compilerfehler mit Beschreibung und Zeilennummer im Output Fenster an.



  • Also nochmal danke für eure Antworten plus Kommentare bzw. Tipps. 🙂

    include <iostream>
    
    int main(int argc, char* argv[])
    {
    const int a=17;
    const int b=52;
    
    int summe=0; 
    for(int i=a; i<=b;i++)
    {
    std::cout << "Summe: " << summe;
    return 0;
    }
    

    also ich habe es noch nicht getestet das mache ich mal heute abend, da ich gleich unterwegs bin.
    Wenn noch etwas falsch sein sollte könnt ihr ja ruhig noch schreiben falls ihr lust habt.

    ich bedanke mich im voraus für eure Unterstützung

    LG



  • capri03 schrieb:

    also ich habe es noch nicht getestet das mache ich mal heute abend, da ich gleich unterwegs bin.
    Wenn noch etwas falsch sein sollte könnt ihr ja ruhig noch schreiben falls ihr lust habt.

    Der Ansatz ist leider komplett falsch.



  • Es sieht so aus, als hättest du was vergessen...



  • Nathan schrieb:

    capri03 schrieb:

    also ich habe es noch nicht getestet das mache ich mal heute abend, da ich gleich unterwegs bin.
    Wenn noch etwas falsch sein sollte könnt ihr ja ruhig noch schreiben falls ihr lust habt.

    Der Ansatz ist leider komplett falsch.

    Das ist jetzt etwas übertrieben. Zwei Zeilen einfügen und es tut, was es soll.



  • Wo findet denn hier eine Addition statt?

    include <iostream>
    
    int main(int argc, char* argv[])
    {
    const int a=17;
    const int b=52;
    
    int summe=0;
    for(int i=a; i<=b;i++)
    {
    std::cout << "Summe: " << summe;
    return 0;
    }
    

    EDIT:
    Hab ebenfalls ne Kleinigkeit vergessen, bei mir war's aber nur ein 'n'.


Anmelden zum Antworten