主题:请教数值传递
先生您好,我想设计一段计算如下数学式子的代码:
a1*a2/(a2+a3)*(a3+a1)+a2*a3/(a3+a1)*(a1+a2)+a3*a1/(a1+a2)*(a2+a3)
代码如下:
CLEAR
*input '请输入字母个数:' to M
m=3
Dimension A(m),分子(m),分母(m),商(m),分母准备(m)
*----------------------给初始值开始
FOR i=1 TO m
A(i)=i
ENDFOR
*----------------------给初始值结束
*----------------------分母准备开始
FOR i=1 TO m
分母准备=0
for j=i to i+m-2
分母准备=分母准备+A(mod(j,m)+1)
ENDFOR
? 分母准备
ENDFOR
?'分母准备结束'
*----------------------分母准备结束
*------------------------------分子
for i=1 to m
分子 = 1
for j=i to i+m-2
分子 =分子*A(mod(j-1,m)+1)
ENDFOR
?分子
ENDFOR
?'分子结束'
*--------------------------分子结束
*--------------------------分母开始
for i=1 to m
分母 = 1
for j=i to i+m-2
分母=分母*分母准备(mod(j-1,m)+1)
ENDFOR
?分母
ENDFOR
?'分母结束'
*--------------------------分母结束
*--------------------------求商开始
for i=1 to m
商(i)=(分子(i)/分母(i))
K='商'+ALLTRIM(STR(i))+'='
KK=K+ALLTRIM(STR(商(i),10,10))
?KK
ENDFOR
*--------------------------求商结束
但运行下来“分母准备”的数组值显示时是对的,分别为5、4、3,但在计算“分母”时传到的值怎么是3、3、3了,而不是5、4、3,请先生指点,(同时“分子”显示的值分别为:2、6、3,但在计算商时分子传到的数也不是2、6、3了,)谢谢先生
a1*a2/(a2+a3)*(a3+a1)+a2*a3/(a3+a1)*(a1+a2)+a3*a1/(a1+a2)*(a2+a3)
代码如下:
CLEAR
*input '请输入字母个数:' to M
m=3
Dimension A(m),分子(m),分母(m),商(m),分母准备(m)
*----------------------给初始值开始
FOR i=1 TO m
A(i)=i
ENDFOR
*----------------------给初始值结束
*----------------------分母准备开始
FOR i=1 TO m
分母准备=0
for j=i to i+m-2
分母准备=分母准备+A(mod(j,m)+1)
ENDFOR
? 分母准备
ENDFOR
?'分母准备结束'
*----------------------分母准备结束
*------------------------------分子
for i=1 to m
分子 = 1
for j=i to i+m-2
分子 =分子*A(mod(j-1,m)+1)
ENDFOR
?分子
ENDFOR
?'分子结束'
*--------------------------分子结束
*--------------------------分母开始
for i=1 to m
分母 = 1
for j=i to i+m-2
分母=分母*分母准备(mod(j-1,m)+1)
ENDFOR
?分母
ENDFOR
?'分母结束'
*--------------------------分母结束
*--------------------------求商开始
for i=1 to m
商(i)=(分子(i)/分母(i))
K='商'+ALLTRIM(STR(i))+'='
KK=K+ALLTRIM(STR(商(i),10,10))
?KK
ENDFOR
*--------------------------求商结束
但运行下来“分母准备”的数组值显示时是对的,分别为5、4、3,但在计算“分母”时传到的值怎么是3、3、3了,而不是5、4、3,请先生指点,(同时“分子”显示的值分别为:2、6、3,但在计算商时分子传到的数也不是2、6、3了,)谢谢先生