Wurzel ziehen



  • Hallo ich schreib grad ein Programm, wo ich aus a²+a²+a² die wurzel ziehen möchte, bis jetzt sieht das da so aus:

    Label3 -> Caption = IntToStr ((Zahl1 * Zahl1) + (Zahl1 * Zahl1) + (Zahl1 * Zahl1));
    

    Aber ich hab jetzt echt gar keine Ahnung wie ich ihm sagen soll das er mir daraus dann die Wurzel gibt.

    Wisst ihr wie ich das machen könnte?

    Danke schonmal!

    Gruß
    Manuh



  • a²+a²+a²=3*a² |Wurzelziehen
    sqrt(3)*a = 1.732050808*a

    Label3 -> Caption = IntToStr (1.732050808*a);
    


  • sqrt(a^2) = |a| !
    Wenn man natuerlich weiss, dass a positiv ist passts, sonst muss man den Betrag von a nehmen.



  • Muss ich dafür noch irgend eine Include Datei einbinden?
    Denn so funktioniert das bei mir nicht



  • Hm?
    Was funktioniert nicht?

    Label3 -> Caption = IntToStr (1.732050808*Zahl1);
    

    reicht doch.

    Und wenn Zahl1 negativ sein kann
    machst du halt noch ne Betragsfunktion davor.

    Zahl1 = (Zahl1 < 0) ? -Zahl1 : Zahl1;
    

    bzw. du nutzt abs(Zahl1); aus der stdlib.h



  • Ich versteh grad nicht wo in (1.732050808*Zahl1) die Wurzel gezogen wird, bin noch kein mathematisch begabter Mensch 😛



  • a2+a2+a2=3a2=3a2=1.732050808a\sqrt{a^2+a^2+a^2} = \sqrt{3a^2} = \sqrt{3}\cdot\sqrt{a^2} = 1.732050808\cdot a



  • Das ist doch falsch?

    Richtig müßte sein: |a|*√3



  • scrub schrieb:

    Das ist doch falsch?

    Richtig müßte sein: |a|*√3

    √3=1.732050808 //Wie ich bereits oben geschrieben habe
    Das es |a| heißen muss wurde auch schon erwähnt, auch dafür
    haben wir die Lösung bereits.

    @Iksde
    1.732050808*|Zahl1| ist äquivalent zu
    √Zahl1²+Zahl1²+Zahl1²
    weil
    √Zahl1²+Zahl1²+Zahl1²= √3*Zahl²=|Zahl|*√3=|Zahl|*1.732050808

    Du musst also nur den Betrag der Zahl1 mal 1.732050808 rechnen.
    Und schon hast du das gewünschte Ergebnis.
    Eine Wurzel musst du dann nichtmehr ziehen!

    Wenn du es unbedingt über einen Befehl machen willst
    schau dir die Funktion sqrt() aus der math.h an.



  • Danke! Ja hab ich verstanden! Schon logisch wenn man die Wurzel aus 3 nimmt und die dann mit Zahl1 multipliziert!

    Dankeschön, habt mir sehr geholfen!


Anmelden zum Antworten