回 帖 发 新 帖 刷新版面

主题:请教数值传递

先生您好,我想设计一段计算如下数学式子的代码:
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了,)谢谢先生

回复列表 (共5个回复)

沙发

有问题,找专家,就来问问堂!

板凳

请教问问堂先生,我以上的问题如何修改,谢谢

3 楼

菜单 - 工具 - 调试器 - F8 - 逐步运行,逐步检查变量的变化过程.

4 楼

input '请输入字母个数:' to x 
n=0
m=x-5
m_str=""
FOR i = 1 TO x
    n=n+IIF(i=x,1,i+1)
    m_str=m_str+"a"+STR(i,1)+"*a"+STR(n,1)+"/(a"+STR(n,1);
    +"+a"+STR(i-m,1)+")*(a"+STR(i-m,1)+"+a"+STR(i,1)+IIF(i=x,")",")+")
    m=1
    n=0
NEXT 
?m_str

5 楼

不好意思,是我没有表达清楚

我来回复

您尚未登录,请登录后再回复。点此登录或注册