半职业学生 发表于 2010-10-16 19:56:56

在群里没搞清楚,上论坛发帖,关于等差数列的javascript:;

已知有关等差数列a1,an,d,n,sn中任意三个求另外两个
Define a.p()=
Prgm
:Local a1,an,d,n,sn,x1,x2
:RequestStr "请输入未知项1",x1,0
:RequestStr "请输入未知项2",x2,0
:If x1="a1" and x2="an" Then
:Request "公差d",d,0
:Request "项数n",n,0
:Request "前n项的和sn",sn,0
:a1:=((sn-d*n*((n-1)/(2)))/(n))
:an:=a1+(n-1)*d
:Disp "a1=",a1
:Disp "an=",an
:Stop
:EndIf
:If x1="an" and x2="a1" Then
:Request "公差d",d,0
:Request "项数n",n,0
:Request "前n项的和sn",sn,0
:a1:=((sn-d*n*((n-1)/(2)))/(n))
:an:=a1+(n-1)*d
:Disp "a1=",a1
:Disp "an=",an
:Stop
:EndIf
:If x1="a1" and x2="d" Then
:Request "第n项的值",an,0
:Request "项数n",n,0
:Request "前n项的和sn",sn,0
:a1:=((2*sn)/(n))-an
:d:=((an-a1)/(n-1))
:Disp "a1=",a1
:Disp "d=",d
:Stop
:EndIf
:If x1="d" and x2="a1" Then
:Request "第n项的值",an,0
:Request "项数n",n,0
:Request "前n项的和sn",sn,0
:a1:=((2*sn)/(n))-an
:d:=((an-a1)/(n-1))
:Disp "a1=",a1
:Disp "d=",d
:Stop
:EndIf
:If x1="a1" and x2="n" Then
:Request "第n项的值",an,0
:Request "公差d",n,0
:Request "前n项的和sn",sn,0
:Disp solve(system(a1=d*(n-1)-an,n=((sn)/(a1+((d*(n-1))/(2))))),a1,n)
:Stop
:EndIf
:EndPrgm当然还没完成,到这里我的最后一个If出错了,求教错在哪里,该怎么改

Cyvre 发表于 2010-10-16 19:59:24

这个……是ns?说说错误提示是怎么写的?

半职业学生 发表于 2010-10-16 20:02:41

"Error: Variable is not defined"

imath 发表于 2010-10-16 20:09:23

改成这个试试:Disp instring(solve(system(a1=d*(n-1)-an,n=((sn)/(a1+((d*(n-1))/(2))))),a1,n))

半职业学生 发表于 2010-10-16 20:12:11

如果只是在这句话改的话,..........检查没通过

imath 发表于 2010-10-16 20:14:20

list:=zeros(system(a1-d*(n-1)+an,n-((sn)/(a1+((d*(n-1))/2)))),a1,an)

半职业学生 发表于 2010-10-16 20:14:40

这句放哪里?

半职业学生 发表于 2010-10-16 20:15:46

给我个完整点的,把我最后的那个If完整的改动下,谢谢

imath 发表于 2010-10-16 20:50:00

把Disp solve(system(a1=d*(n-1)-an,n=((sn)/(a1+((d*(n-1))/(2))))),a1,n)替换掉.
然后disp list,list

半职业学生 发表于 2010-10-16 20:54:05

不懂啊,imath能不能把Disp后面直到EndIf都打出来给我看看

Cyvre 发表于 2010-10-16 20:54:16

"Error: Variable is not defined"
半职业学生 发表于 2010-10-16 20:02 http://www.cncalc.org/images/common/back.gifvariable not defined?检查一下有没有打错字?

imath 发表于 2010-10-16 21:00:50

variable not defined一般不是字打错的错误

半职业学生 发表于 2010-10-16 21:04:54

在最后一个if之前是绝对没错的

Cyvre 发表于 2010-10-16 21:07:47

不懂啊,imath能不能把Disp后面直到EndIf都打出来给我看看
半职业学生 发表于 2010-10-16 20:54 http://www.cncalc.org/images/common/back.gifimath的那两句夹在request和stop之间(如果我没理解错的话)

半职业学生 发表于 2010-10-16 21:09:52

imath的句子检查通不过,我是直接复制的

Cyvre 发表于 2010-10-16 21:17:22

imath的句子检查通不过,我是直接复制的
半职业学生 发表于 2010-10-16 21:09 http://www.cncalc.org/images/common/back.gif这就是他的不对了……用system联立的式子怎么能用zeros解……

半职业学生 发表于 2010-10-16 21:19:19

那怎么办,给个完整的代码,从Disp到EndIf的,好吗

imath 发表于 2010-10-16 21:21:03

这就是他的不对了……用system联立的式子怎么能用zeros解……
Cyvre 发表于 2010-10-16 21:17 http://www.cncalc.org/images/common/back.gif
怎么不能用zeros了.

imath 发表于 2010-10-16 21:21:33

list:=zeros({a1-d*(n-1)+an,n-((sn)/(a1+((d*(n-1))/2))))},a1,an)
这样伐

半职业学生 发表于 2010-10-16 21:25:17

老大,不要一句一句给好不好,我搞不清要放哪里啊,最好从Disp到EndIf一起给我
页: [1]
查看完整版本: 在群里没搞清楚,上论坛发帖,关于等差数列的javascript:;