天山草 发表于 2013-9-3 09:36

【分享】交流一下 Mathematica 编程方法,期望学习该软件的网友积极参与

[这个贴子最后由天山草在 2013/09/13 01:11pm 第 4 次编辑]


交流一下 Mathematica 编程方法,希望此帖长期生存。期待懂得 Mathematica 的网友积极参与,把你们的好经验、好方法、好程序介绍给大家。
今天本人先抛砖引玉,说一个 n++; 与 n++, 的区别。

ataorj 发表于 2013-9-3 11:27

【分享】交流一下 Mathematica 编程方法,期望学习该软件的网友积极参与

1 谢谢.我是前一阵见你提起它才接触了的.
2 我认为你这里不用使用N[],甚至不使用Print[],直接s即可
3 我理解逗号,是一个计算单元中的要素项序列分隔符;而分号是计算单元间的分隔符.同一处要素有多项时也用分号分隔.系统一个完整输入即"In="的结尾若使用分号,则执行时不显示其最后"计算"项的结果,除非其语法含有显示属性.
4 有人说它的帮助写得很好.我认为不错,但是仍有点复杂.概括性和例子,我不很满意.有时就不想坚持看了.
5 我暂时不会常用它,用时查查而已.
6 我暂时当它做为lisp方言来了解它,是我研究语言的一个参考.

ataorj 发表于 2013-9-3 13:37

【分享】交流一下 Mathematica 编程方法,期望学习该软件的网友积极参与

你分号逗号乱试,则可能改变了一个计算单元中的要素项的数量,
比如,逗号变分号,则不仅要素项的数量变少,而且分号前的那个可能会被完全忽略,有些只接受逗号前的,不接受要素项中的并列项[指分号分隔]
以上只是我的印象,具体应该试验

天山草 发表于 2013-9-3 19:09

【分享】交流一下 Mathematica 编程方法,期望学习该软件的网友积极参与

下面引用由ataorj在 2013/09/03 11:27am 发表的内容:
2 我认为你这里不用使用N[],甚至不使用Print[],直接s即可

直接 s 显示的是 55/111,不是小数格式。

zhaolu48 发表于 2013-9-4 02:11

【分享】交流一下 Mathematica 编程方法,期望学习该软件的网友积极参与

[这个贴子最后由zhaolu48在 2013/09/04 02:40am 第 2 次编辑]

在下根本没学过“ Mathematica”,只对VF略知皮毛
下面在VF下编程为
CLEAR
CLEAR ALL
s=0
n=10
FOR i=1 to n
a=i*i
b=a*a
c=10*i/(b+a+1)
s=s+c
endf
a=INT(s)
b=(s-a)*1000000000000000
c=';0.';+STR(a,1)+STR(b,15)
?';s=';+c
n=10时输出结果为
0.4954954954954955
看来是以495为循环节的循环小数。
程序中用了‘c=10*i/(b+a+1)’及
a=INT(s)
b=(s-a)*1000000000000000
c=';0.';+STR(a,1)+STR(b,15)
?';s=';+c
是为了使输出结果多一位小数,即是16位小数
而VF自身只能显示15位小数
当n=100时输出的结果为
0.4999504999505005
看来结果应以499950为循环节的循环小数。
当n=1000输出的结果为
0.4999995004999991
由此可猜想,以“a(n)”为通项的级数收敛为0.5
即当n→∞时和为0.5

zhaolu48 发表于 2013-9-4 02:43

【分享】交流一下 Mathematica 编程方法,期望学习该软件的网友积极参与

下面程序
s=0
n=10000000
FOR i=1 to n
a=i*i
b=a*a
c=i/(b+a+1)
s=s+c
endf
?s*1.00000000000000
输出结果为
0.499999999996316

天山草 发表于 2013-9-4 13:56

【分享】交流一下 Mathematica 编程方法,期望学习该软件的网友积极参与

热烈欢迎赵老师光临。不知 6 楼程序运行了多长时间?【n 等于 1 千万时】

天山草 发表于 2013-9-4 13:58

【分享】交流一下 Mathematica 编程方法,期望学习该软件的网友积极参与


上述程序大约需要运行三、五分钟吧。

天山草 发表于 2013-9-4 14:08

【分享】交流一下 Mathematica 编程方法,期望学习该软件的网友积极参与

[这个贴子最后由天山草在 2013/09/04 02:10pm 第 1 次编辑]

While 【直到】语句的用法:
写一个演示 3x + 1 猜想的语句,使用 While 最合适。此时用 For 语句或 Do 语句则不易编程。

重生888 发表于 2013-9-4 14:11

【分享】交流一下 Mathematica 编程方法,期望学习该软件的网友积极参与

老师邮件收到了吗?谢谢!
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 【分享】交流一下 Mathematica 编程方法,期望学习该软件的网友积极参与