一定要用算术方法的话,那到最后应该都是求一组数的方差,取求最小的为最佳值,不过计算量不小这样的话,总是得“穷举”出一些差数的(比如平均值>0.59V的),然后取这类阻值中方差最小的 虽然这种方法不如用一个逻辑关系式表达下那么简洁,但人家作为一门数学分支——统计学而存在应该是有道理的~~ 那个不用一味追求手算,这世上只能机器算的数学题至少比我吃过的米都多,圆周率你有本事用祖冲之的方法更新现代记录看看.....
VB程序(可以列出主要可行值): Option Explicit Dim i As Integer Dim rr(2000, 4) As Single Private Sub Command2_Click() Dim u(3) As Single, r1 As Long, r2 As Long, r3 As Long i = 0 r3 = 10000 For r1 = 18000 To 19000 For r2 = 11000 To 12000 u(1) = 5 * r3 / (r1 + r3) u(2) = 5 * r3 / (r2 + r3) u(3) = 5 * r3 / ((r1 * r2 / (r1 + r2)) + r3) max(1) = u(2) - u(1) max(2) = u(3) - u(2) If Int(max(1) * 10000) > 5916 And Int(max(2) * 10000) > 5916 Then i = i + 1: rr(i, 1) = r1: rr(i, 2) = r2: rr(i, 3) = max(1): rr(i, 4) = max(2) DoEvents Next Next Do While i <> 0 If rr(i, 1) <> 0 Then List3.AddItem rr(i, 1) & " " & rr(i, 2) & " " & rr(i, 3) & " " & rr(i, 4) i = i - 1 Loop End Sub |