生成厄米多项式的程序包为什么编译不了?
mathematica吧
全部回复
仅看楼主
level 1
冰雪末日 楼主
BeginPackage["EM`"]
EM::usage =
"输入EM[X,N]显示N阶厄米多项式"
Begin["`Private`"]
EM[x_,0] = {1}
EM[x_,1] = {x}
EM[x_,n_Integer] = Do[
Print[EM[x,m]=2*x*EM[x,m-1]-2*(m-1)*EM[x,m-2]],{m,2,n}
]
End[ ]
EndPackage[ ]
提示Do::iterb: Iterator {m,2,n} does not have appropriate bounds.
新手初学mathematica
2015年12月21日 13点12分 1
level 7
你可能需要 HermiteH ?
2015年12月21日 14点12分 3
level 10
m,n,应该是具体的数吧!
2015年12月22日 00点12分 4
我意思是输入一个任意n,然后显示厄米多项式。。。
2015年12月22日 01点12分
回复 冰雪末日 :do函数不可以是任意数吧
2015年12月22日 04点12分
回复
史麦戈fly
:那用什么函数比较好呢?
2015年12月22日 04点12分
level 10
还有,usage后面不是赋值语句吧,是==号吧!
2015年12月22日 00点12分 5
level 2
计算物理b吧………为什么不直接用递归呢………
2015年12月22日 15点12分 6
已经做完。。。C写多了。。。
2015年12月22日 16点12分
吧务
level 15
当然
编译不了,因为Mathematica是动态语言,它的.m文件和C语言的.c,C++的.cpp,Fortran的.f乃至MATLAB的.m都是完全不同的东西,如果你编写程序包只是为了延续你在这些语言中养成的习惯的话(从6楼来看就是如此吧),那么,现在就停手,把基础打好再说。
2016年01月02日 06点01分 7
level 1
请问这个报错是什么原因
2020年06月14日 10点06分 9
1