微信公众号 
图码生活

每天发布有五花八门的文章,各种有趣的知识等,期待您的订阅与参与
电脑报 1992-2001 十年文章全集
电脑报 1992-2001 十年文章全集
包含从 1992 年 - 2001 年间,两万余篇期刊文章,查询最少输入两个字符
随便看看
读取中
读取中
标题高精度除法运算的实现
栏目软件操作与技巧
作者蒲小勤
发布1994-03-18
  笔者设计了一种算法,可以实现除法的高精度运算,理论上可精确到小数点后无限位。该算法突破了计算机中除法运算的一般概念,不是向计算机直接输入运算式,由计算机运算后得到结果,而是利用了计算机运算速度快的特点,用计算机模仿除法运算的实际步骤,先用被除数除以除数,得到一个整数商和一个余数,将整数商记录下来作为结果,将余数乘以10后作为下一步运算的被除数,继续运算,并往复循环。
  将每一步运算得到的整数商转换成字符串存储在字符串变量中,当运算到用户给定的精度时,输出字符串变量的内容即为运算结果。
  本文所附程序用高级BASIC语言写成,在Super PC/286微机上运行通过。
  
  5 CLS
  10 PRINT "A/B=?"
  20 INPUT "input A="; a
  30 INPUT "input B="; b
  35 INPUT "stop at :"; n
  40 IF b = 0 THEN PRINT "error: divided by zero!": BEEP: GOTO 10
  50 aa = a
  55 s = INT(aa / b)
  60 first$ = STR$(s)
  70 FOR i = 1 TO n
  80 aa = (aa - b * s) * 10
  90 s = INT(aa / b)
  100 rst$ = rst$ + STR$(s)
  110 NEXT i
  120 PRINT STR$(a); "/"; STR$(b); "="; first$; "."; rst$
  130 END