数学中国

 找回密码
 注册
搜索
热搜: 活动 交友 discuz
查看: 4390|回复: 223

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

[复制链接]
发表于 2013-9-3 09:36 | 显示全部楼层 |阅读模式
[这个贴子最后由天山草在 2013/09/13 01:11pm 第 4 次编辑]


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

Mathematica20D6D_1378172161.gif

63.01 KB, 下载次数: 5

发表于 2013-9-3 11:27 | 显示全部楼层

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

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

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

你分号逗号乱试,则可能改变了一个计算单元中的要素项的数量,
比如,逗号变分号,则不仅要素项的数量变少,而且分号前的那个可能会被完全忽略,有些只接受逗号前的,不接受要素项中的并列项[指分号分隔]
以上只是我的印象,具体应该试验
 楼主| 发表于 2013-9-3 19:09 | 显示全部楼层

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

下面引用由ataorj2013/09/03 11:27am 发表的内容:
2 我认为你这里不用使用N[],甚至不使用Print[],直接s即可
直接 s 显示的是 55/111,不是小数格式。
发表于 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
发表于 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 编程方法,期望学习该软件的网友积极参与


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

1111111111111111_1378274301.gif

10.15 KB, 下载次数: 2

 楼主| 发表于 2013-9-4 14:08 | 显示全部楼层

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

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

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

1111111111111111_1378275042.gif

10.25 KB, 下载次数: 2

发表于 2013-9-4 14:11 | 显示全部楼层

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

老师邮件收到了吗?谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|数学中国 ( 京ICP备05040119号 )

GMT+8, 2019-12-6 05:38 , Processed in 0.312046 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表