上半年用Mathematica解一组线性方程,CPU风扇狂转了两个钟头,解出来还是错的。只有求助算法工程师,matlab解了几分钟就出来,居然是对的。印象中matlab的符号运算是收购的一家二线厂商,能力很弱,不知道为啥会有此差距。。
到今天苦战了大概1个星期,算是初步感受了MMA的强大和变态。这个软件国内极其小众,被很多人认为纯粹是大学物理数学老师用来当做超级计算器的软件而已。而事实上这个软件根本不是计算器的概念,它包罗万象无所不能,它就是任何人都可以享用的超级运算神器,甚至包括文学家,比如用来进行词汇分析统计计算等等,它就是科研领域的Google。
但不可否认,这个强大的变态的软件这么多年一直冷门,不是没有理由的,它的语法实在是有点反人类,我这个星期脑袋一直处于充血,疼痛的状态,如此高强度的脑力风暴,也仍然掌握不了它语法的精髓,只能在别人的代码上磕磕碰碰的拼凑修改,完全无法自己构思出那一串一串的类似这种外星语言的“(*//.//##/@@&^(*&%^(&*%"运算符串。估计要真正理解运用,起码1年的苦练才行,这种学习成本远超过任何一种传统编程语言。
不过我今天发现了MMA又一个震撼之处,它居然可以用中文符号,这实在太棒了。要知道任何一种正规的传统编程语言,最无法克服的一个门槛就是:英文,任何代码的尽头,都是一篇一篇的英语文章。特别是如今以java为代表的对象语言,那成千上万的类名,方法名,变量名,那N个对象单词互相嵌套形成的对象链,整个就是一大段的英语短文。用这些语言,我等业余爱好者最头疼就是取名字,永远都只能x1,x2,n,i,j,k。。。。悲催得很。
MMA的中文支持,加上它独特的语法规则,导致编程解题的思路很容易打开,就像用中文在分析解决一个问题,如果不考虑语法难题,那真是爽得不要不要的。
就像如下的一个推理题,用传统语言来解决的话,编码是很难的,起码要专业程序员级别。而用MMA,几行代码就搞定了。当然也可以试着用人肉运算硬刚。。哈哈
根据这15个条件,最终分析出哪个妹子喜欢研究能材。
1. 5间房从左到右按1,2,3,4,5顺序编号,一间房住一个来自5个省的妹子,且每个妹子对应一个饮料,一种水果,一种爱好。
2. 小红是四川妹子
3. 重庆妹子爱好是养狗
4. 小青喜欢喝红牛
5. 云南妹子喜欢的饮料是雪碧
6. 小青住在小菊右边隔壁那间房
7. 爱吃苹果的妹子平时爱好是刷斗音
8. 小兰喜欢的水果是梨子
9. 3号房妹子喜欢的饮料是奶茶
10. 贵州妹子住1号房
11. 爱吃芒果的妹子住在爱好养猫的妹子隔壁
12. 爱吃梨子的妹子住在爱好打扑克的妹子隔壁
13. 爱吃榴莲的妹子喜欢的饮料是啤酒
14. 湖南妹子喜欢的水果是菠萝
15. 贵州妹子住在小翠的隔壁
上半年用Mathematica解一组线性方程,CPU风扇狂转了两个钟头,解出来还是错的。只有求助算法工程师,matlab解了几分钟就出来,居然是对的。印象中matlab的符号运算是收购的一家二线厂商,能力很弱,不知道为啥会有此差距。。
讨厌用mma来算方程,算微积分之类的,哈哈,因为这就是这个软件一直冷门的根本原因,被局限在这些应用上了。
不过在这段时间学习它的过程中,有顺带看到网上帖子说矩阵运算mma完全比不过matlab,管它呢,反正我对这些纯数学的东东毫无兴趣
代码大概就是这样的
这两天随着学习的深入,越发感到吃力了,毕竟上了年纪,面对这样复杂和灵活的语言,确实力不从心。哎~~
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |
200字以内,仅用于支线交流,主线讨论请采用回复功能。