vfp中计算问题

来源:百度知道 编辑:UC知道 时间:2024/06/08 01:07:25
最近做个实验,处理数据比较复杂,我这编了一个简单的计算程序,很久没学vfp了,可能思路和语法不是很好,请贵人修改下,,
本人测试结论如下
(1)我要输出的数据达到10E-14。但本人不知道怎么定义科学计数法输出,所以总是输出的数据是0.000000000000000。
(2)测试过程中没有出现任何提示窗口,程序无语法错误。
问题附上,,,我要达到的效果——>处理10组t,v数据
用c=(1.43E-14)/(((a*(1+0.0196*sqrt(a)))^1.5)*b) 这个公式计算出q1,q2,q3,....q10,然后算出dq =q2-q1 。然后用qj(q1,q2,q3...)分别除以dq得到n值,然后再对n四舍五入取整得到zn,然后用qi除以zni(q1/zn1,q2/zn2...)分别得到e1,e2 e3,e4,e5,,,,然后再求e1,e2,e3....的平均值,,,(可能这个地方程序不精简)。。
求助,,,帮帮我,,,,
-----------------------------------------------------------------
clear
set talk off
j="1"
do while val(j)<=10
q&j=0
input "ÇëÊäÈët&j=" to t&j
input "ÇëÊäÈëv&j=" to v&j
do guocheng with t&j,v&j,q&j
j=alltrim(str(val(j)+1))
enddo
? v4 ,q5

dq=q2-q1
? dq

i="1"
do while val(i)<=10
public q&j as double
n&i=q&i/dq
zn&i=ro

你的问题我帮你解决
你HI我吧
前几天做了一个这样的问题
--------------
你的思路很清晰
你的语法真的很烂(不要打我)

SET DECIMALS TO 20
这个语句会很有用的

如果是我的话,会用移位相加,移位想减的方法计算超过计算机表达能力的数字,否则会受精度控制无法得到正确的结果!
即计算结果早就被四舍五入了!
具体计算方法,参考二进制乘法的算法!