Board logo

标题: VBS实现数学书上的开根思路 [打印本页]

作者: 523066680    时间: 2008-9-6 10:37     标题: VBS实现数学书上的开根思路

哈数学必修5有一个求根号2的流程图,我觉得不错,写成vbs贴上来了
  1. a=1
  2. b=0.1
  3. do
  4. if (a+b)^2 > 2 then
  5.     msgbox a
  6.     b=b/10
  7. else
  8.     a=a+b
  9. end if
  10. loop until b<0.000001
  11. msgbox a & "<------>" & sqr(2)
复制代码

[ 本帖最后由 523066680 于 2008-9-6 10:38 编辑 ]
作者: qq641255849    时间: 2008-9-6 13:10

不错哦...什么时候搞个批处理版?
作者: 523066680    时间: 2008-9-6 14:24

用批处理做就稍有些吃力咯……我下次上网是在下个星期呢、

收回上面的话 用批处理做应该也不错的,大伙儿试试吧 哈 谢谢batcher的加分
我去翻翻看 书上还有一些不错的算法流程图的

[ 本帖最后由 523066680 于 2008-9-6 14:33 编辑 ]
作者: pusofalse    时间: 2008-9-6 15:04

小伙,把你书上的内容告诉我~我一字不差地记下来。
作者: 523066680    时间: 2008-9-9 16:54

书上还有求圆周率的  方法用祖冲之的那个………有些长 我没看完
作者: slore    时间: 2008-9-12 23:17

转一个我在CN-DOS发的

'恩,记得用CScript调用……

'这个是连续运算最后输出,比一行一行的输出速度快。

Dim b, c, d, e,n, f()
n = 1000 '在这里定义位数
c = n / 4 * 14
ReDim f(c)
For b = 0 To c
    f(b) = 2000
Next

Do While
(c)
   
b = c
    d = f(b) * 10000
    f(b) = d Mod (b * 2 - 1)
   
d = d \ (b * 2 - 1)
   
b = b - 1
    Do While(b)
        
d = d * b + f(b) * 10000
        f(b) = d Mod (b * 2 - 1)
        
d = d \ (b * 2 - 1)
        
b = b - 1
    Loop
   
c = c - 14
    i = e + d \ 10000
    i = Right("0000" & i,4)
   
If k < 10 Then
        
k = k + 1
        ShowLine = ShowLine & i
    Else
        
k = 0
        'WSH.Echo ShowLine
        
ShowLine = ShowLine & vbCrLf
    End If
   
e = d Mod 10000
Loop
WSH.Echo ShowLine
作者: 523066680    时间: 2009-7-26 13:46

某天看到牛顿迭代法了……
作者: happy886rr    时间: 2018-11-12 21:08

高中时代的523066680




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2