【Excel VBA】平方根(素朴な計算方法(1桁つづ求める))

ちょっと平方根を勉強しなおしたかったため

こちらのサイトを参考に、C言語からVBAで平方根(ルート)を計算するプログラムを作成

Sub Sql11_VBA()
    Dim k As Integer
    Dim a As Double ‘平方根
    Dim d As Double
    Dim r As Double ‘近似値
   
    Do While (1)
        a = 1.1
        a = CDbl(InputBox("少数入力(0入力で終了"))
        ‘0の場合抜ける
        If a = 0# Then Exit Do
       
        Debug.Print a & "の平方根"
        Debug.Print "近似値           近似値の2条"
       
        d = 1#
        r = 0
        For k = 1 To 10
            Do While (r * r <= a)
                r = r + d
            Loop
            r = r – d
                        Debug.Print Format(r, "0.0000000000") & "     " & Format((r * r), "0.0000000000")
            d = d / 10#
        Next k
   
    Loop
   
End Sub

たとえば2.0を入力した場合の実行結果はこれ

2の平方根
近似値           近似値の2条
1.0000000000     1.0000000000
1.4000000000     1.9600000000
1.4100000000     1.9881000000
1.4140000000     1.9993960000
1.4142000000     1.9999616400
1.4142100000     1.9999899241
1.4142130000     1.9999984094
1.4142135000     1.9999998236
1.4142135600     1.9999999933
1.4142135620     1.9999999989

参考にさせていただいたサイト、とても興味をそそる内容がいっぱいだった。

コメント

タイトルとURLをコピーしました