Kurze Frage zu Code



  • Hallo,

    warum gibt mir der folgende Code ausser einem Error nichts aus?

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

    int main()
    {
    double variable = 20;
    double ergebnis;

    ergebnis = double sqrt (double variable);

    cout << ergebnis << endl;

    return 0;
    }

    Danke & Lg



  • #include <iostream>
    #include <cmath>
    using namespace std;
    
    int main()
    {
    double variable = 20;
    double ergebnis;
    
    ergebnis = sqrt (variable);
    
    cout << ergebnis << endl;
    
    return 0;
    }
    


  • das "double" gehört nur dann dazu, wenn du dem compiler die Variable bekanntmachst (deklarierst). Ab dann kennt er die Variable "variable" und weiß schon, dass sie vom Typ "double" ist. Du jedoch hast dem Compiler in Zeile 10 "variable" nochmals bekanntgemacht, deshalb hat er einen Fehler produziert, da er sie ja schon kannte und da man sinnigerweise nicht zwei variablen mit dem gleichen Namen haben kann.



  • das einzige was du schrieben könntest wäre

    ergebnis = sqrt(double(variable));
    

    das wäre dann ein cast also eine typ konvertierung
    aber hier völlig fehl am platz da variable ja schon double ist



  • Danke jetzt ist mir alles klar! 🕶


Anmelden zum Antworten