Parameter Noobie



  • #include <iostream>
    
    using namespace std;
    
    int add(unsigned i , unsigned j) {
    
    while (i)
            i-- , j++;
            return j;
    
    }
    
    int main()
    {
    
        int a,b ;
        cout << "i eingeben :" << endl;
        cin >> a;
        cout << "j eingeben :" << endl;
        cin >> b;
    
        add(a,b);
    
        return 0;
    
    }
    

    das ist mein code. ich muss diese funktion int add(unsigned i , unsigned j) verwenden umparameter i + j zu berechnen, dabei aber darf ich operatoren + - += -= nicht verwenden.

    Problem : return value ist 0, musste aber j sein...kA warum das nicht geht.

    bitte hilfe:)



  • Haste schon supi gemacht.

    Aber ausgeben solltest Du das ergebnis auch.

    #include <iostream>
    
    using namespace std;
    
    int add(unsigned i , unsigned j) {
    
    while (i)
            i-- , j++;
            return j;
    
    }
    
    int main()
    {
    
        int a,b ;
        cout << "i eingeben :" << endl;
        cin >> a;
        cout << "j eingeben :" << endl;
        cin >> b;
    
        int ergebnis = add(a,b);
        cout << ergebnis << '\n';
    
        return 0;
    
    }
    


  • Du musst Klammern setzen beim while, sonst wird das j++ nicht bei jedem Schleifendurchlauf ausgefuehrt.

    Oder gleich in kompakter Form:

    unsigned int add( unsigned int i, unsigned int j )
    {
    	while ( j-- > 0 )
    		++i;
    
    	return i;
    }
    

    *Edit
    Ne sorry, da habe ich falsch hingeschaut. Da ist ja ein ',' dazwischen. Haste also alles tiptop gemacht 👍
    Das mit dem Komma habe ich noch nie gesehen 😃



  • icarus2 schrieb:

    Du musst Klammern setzen beim while, sonst wird das j++ nicht bei jedem Schleifendurchlauf ausgefuehrt.

    Doch! Er hat pfiffigerweise , statt ; genommen.
    Aber mit Klammern und ; isses schon hübscher, da sind wir uns bestimmt einig.



  • Super! Danke, das ist immer bei mir der fall, ich schreibe den code, und scheitere bei idiotischen sachen, hehe 🤡

    super forum, super comunity ! 👍

    lG,
    Nexxt66



  • nexxt66 schrieb:

    das ist immer bei mir der fall, ich schreibe den code, und scheitere bei idiotischen sachen, hehe 🤡

    Ich auch. 25 Jahre Programmiererfahrung und an genau diesen Kleinigkeiten verliere ich einen ganzen Tag.


Anmelden zum Antworten