- 在线时间
- 2 小时
- 最后登录
- 2011-9-4
- 注册时间
- 2011-8-15
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 21 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 9
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 5
- 主题
- 2
- 精华
- 0
- 分享
- 0
- 好友
- 0
升级   4.21% 该用户从未签到
 |
因为研究的需要,需要学习Mathematica软件,最近一周在看一些资料,有些很初级的问题很困惑。因为初学,可能表达不是很清楚。还请坛里的有经验的兄弟能帮帮忙,解答一下,不甚感激。
; _1 c1 ?! w% I' w* t1. 首先是符号的问题。看了一些资料,没有看到对Mathematica里面符号的运用说的很明白。9 I7 x# U5 b$ D( R) Z( V% Q B5 d
最让我困惑的是循环语句啊,条件语句中“;”和“,”的使用。不像C语言,语句结束就只用“;”,对符号的运用基本上都有限定的模板。
% Z$ d$ E, O' ^# r/ E- w9 t就我自己的理解“;”的作用感觉是不立即处理(就是写上一个语句,末尾+“;”摁Shift+Enter不会计算出结果)
3 j+ I m7 [0 x' N$ z/ m, P类似于定义函数的时候“:=”的意义,不知道对不对。
l# ~7 M; [. Q& {- e! l比如定义Do型结构,它的一般形式是Do[body,{n}]
. N8 a- ^) \9 B, V: D' M. e7 ]但一个文档上的例子:t=1; Do[t=t*k rint[t];If[k<3,Continue[]];t=t+2,{k,5}],这里面什么时候用“;”,什么时候用“,”$ n& ?1 p# y: a7 V! u9 U, i
还有一个例子,文档上面说for的格式是For[start,test,incr,body],格式上都是用逗号隔开的,但例句却是For[i=8,!PrimeQ,Print;i=i+1],请问这个Ptint;后面的分号是怎么回事?和定义的标准格式不一样啊。还有个例句:For[i=1,i<5,A[]=2i rint["a[",i,"]*“,a"];i++],这里面又是逗号,又是分号的,让人很不解。 到底什么时候该用“;”,什么时候用“,”呢? 不同的循环结构,条件结构,逗号,分号的使用不一样吗?/ {( Y9 q& \ C6 e6 c' h/ E8 ^8 I n, g
上面这些语句里面又是“;”又是“,” 根本不知道哪个时候用“;”,哪个时候用“,”。 这到底有什么区别。类似于循环语句中,分号,逗号分别起到什么作用? 8 C4 H1 g$ |( D7 I$ |; }
其次还有{}和(),感觉()只在运算或者某几个函数组合在一起的时候用到,其他绝大多数情况下都用{},这些符号的运用是不是需要记忆?
7 D; [" U' B7 ~2 [- _7 z2.关于写程序的问题。 我理解的程序包是一些函数的集合,类似于C++中的类。一旦定义好了,以后就能调用里面的函数用来功能的实现。有一个问题就是建立程序包的问题,是不是必须选择“文件-新建-程序包(.m)文件”,建立程序包然后保存。下次需要用的时候就“<<**Package”调用呢? 我老师给了我一些程序,是.nb格式的,也就是笔记本格式,我装的是8.0中文版,那程序是在老版本里面写的,内容是几个标题,每个标题下都有代码,然后第一个标题就是写的一个程序包,没有单独采取我上面的那种形式,下面的标题里面就直接调用程序包里设定的函数,这样也可以吗?更奇怪的是,一打开那个程序,没有"In[*]: Out[*] "这样的输入输出标识,但却用Show函数显示出了图形。这是怎么一回事?不是一般摁Shift+Enter就会出现那样的标识吗? 然后我在菜单栏上选择“计算-计算笔记本”才出现那样的标识,但"In[*]: Out[*] "却不是从"In[1]: Out[1]"开始的,也很奇怪。还有Mathematica的程序在笔记本里编写都没有像C,C++那样有运行,调试的标志,只能采取摁Shift+Enter,或者“计算-计算笔记本”这样的步骤出结果吗?Mathematica是不是不能编写像MFC那样有界面的程序,而只能像C那样类似于控制台的程序? 是不是只能编写出出计算结果,出出显示图像那样的程序?
0 m; \2 _6 ]! f, a3.能不能把Mathematica程序改写成用Fortran或者C语言写的程序,生成.exe 的执行文件?困不困难?
0 h( Q3 V( M) T, D( |! ]& Q问题很初级,表达也不是很清楚流畅,希望弹力的兄弟帮忙解答一下,谢谢了! |
zan
|