適用版本 : VB 2010~2013
牛頓拉夫森法(Newton-Raphson Method)又稱牛頓逼近法
功能
1. 輸入N值, 然後使用牛頓拉夫森法(Newton-Raphson Method)計算平方根近似值
2. Xn值為前一次Xn-1值與 N 除Xn-1值的平均
3. 如果Xn與前一次Xn-1值小數第三位以前相同時,則停止計算
4. 將過程的Xn值顯示出來(四捨五入到小數第三位)
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim Xn As Long
Dim X0 As Long
Dim N As Long
Dim i As Integer
If Not IsNumeric(TextBoxN.Text) Then
MsgBox("請輸入數字", vbOKOnly)
ElseIf Val(TextBoxN.Text) < 0 Or Val(TextBoxN.Text) = 0 Then
MsgBox("值不可以為零或負值", vbOKOnly)
Else
N = Val(TextBoxN.Text)
Xn = N / 3
i = 0
Do While True
Me.DataGridView1.Rows.Add(CStr(i), Xn)
i = i + 1
X0 = Xn
Xn = (X0 + N / X0) / 2
If Int(Xn * 1000) / 1000 = Int(X0 * 1000) / 1000 Then Exit Do
Loop
Xn = Xn + 0.005
Xn = Int(Xn * 100) / 100
TextBoxResult.Text = CStr(Xn)
End If
End Sub
End Class
上一篇 - Visual Basic解數學之一 : 華式溫度與攝氏溫度的互換 下一篇 - Visual Basic解數學之三 : 使用克拉碼規則(Cramer's Rule)解二元一次方程式

沒有留言:
張貼留言
歡迎提供意見, 謝謝 (註 : 留言經過版主審核通過才會發布)