Feedback

Quadratwurzel ohne Sqrt() Funktion ziehen

Sprache: VB

Nun ich weiß das es bereits eine Funktion zum Wurzeln ziehen im Framework gibt aber ich wollte es auch als eigene Funktion veröffentlichen damit man sehen kann wie das ganze funktioniert.
Public Function SquareRoot(ByVal Expression As Double) As Double
    Dim Number As Double = 1
    Dim Tmp As Double = 0

    For i As Long = 1 To CLng(Expression)
        Number = 0.5 * (Number + (Expression / Number))
        If Tmp = Number Then Return Number
        Tmp = Number
    Next
    Return Number
End Function
Public Function SquareRoot(ByVal Expression As Double) As Double
    Dim Number As Double = 1
    Dim Tmp As Double = 0

    For i As Long = 1 To CLng(Expression)
        Number = 0.5 * (Number + (Expression / Number))
        If Tmp = Number Then Return Number
        Tmp = Number
    Next
    Return Number
End Function

2 Kommentare

  1. Public Function SquareRoot(ByVal Expression As Double, ByVal Potenz as Byte) As Double
    Dim Number as Double
    Number = Expression ^ (1/Potenz)
    Return Number
    End Function

    Ich habs mal umgeschrieben, weil es sich für Wuzelooperationen einfach gut macht 😉

    Eine Wurzel ist nichts anders als eine umgekehrte Potenzierung, also muss die Potenz nur negiert werden, dabei gilt, eine Potenz von 1 gibt den natürlichen Wert zurück, während Potenzen < 1 und > 0 die Wurzel darstellt. Somit hast Du nun eine klitze kleine Funktion und fundamentales mathematisches Wissen, um alle Potenzaufgaben zu lösen.

    Harper
    (Kryptographischer Wahnsinn in Zahlen und Worten)