西西河

主题:【整理】关于编程改革 -- 代码ABC

共:💬53 🌺271
全看树展主题 · 分页首页 上页
/ 4
下页 末页
家园 计算机不用手开试商法,用的是级数

高等数学的内容

家园 十分肯定的回答您

能。

编程本身和数学其实没啥关系。编程,就是编写程序,程序是什么?百度上的解释:“程序(program)是为实现特定目标或解决特定问题而用计算机语言编写的命令序列的集合。”也就是说,编程实际上是个用“程序”解决问题的过程,关键是解决问题的能力,数学在这个过程中只是用来作为解决问题的方法来出现的。

其实“程序”也不单是计算机程序,任何需要一步一步解决的东西都是程序,比如烧水需要:准备水壶-往水壶灌水-把水壶放到火炉上-打开火炉生火,这就是个程序(这个程序只用了“顺序”执行一种程序结构,如果加上“选择”和“(无限)循环”结构,理论上就可以解决所有的可以解决的“计算”问题)。只要您能很好地把一个问题“程序化”,就是个好程序员。

至于高等数学,尤其是微积分,在实际编程中的应用是非常少的。编程中常用的“算法”,也就是比较固定的“程序”,大多数都用不到高深的数学,高中甚至初中就完全足够,因为“计算”这个概念本身就是脱胎于最简单的数列--自然数的(但是对算法的分析往往需要比较高深的数学)。

当然,解决或者理解某些问题,是需要一些数学背景,但是实际上这样的问题程序员的日常工作中估计连10%(平均)都不到。

通宝推:铁手,
家园 编程的革命很多

但是本质的矛盾是人的思维方式和计算机运行方式的不同。 除非计算机构架有改变,恐怕短期内很难有本质的变化。就像人工智能一样,说了很久了,但是距离智能还遥远的很。

家园 数学退化正说明大多数编程的要求是小学数学

平时用不到的,才会随着时间而被遗忘,所谓退化。所以程序员的数学退化,正说明编程不需要高级数学。

一般程序员需要的是组织分类能力。你如果能把包饺子細分成:买菜,买肉,买面粉,买佐料,洗菜,洗肉,和面,剁馅,拌馅,剥蒜,擀皮,包饺子,烧水,下锅,点水,捞饺子,点醋,开吃。

其中有很多是不断数数的,剁一刀,剁两刀...100刀;一张皮儿,两张皮二...200张皮儿;包一个饺子,包两个饺子,包三个饺子...200个饺子。

那么,恭喜您,您完全胜任编程。而且编程就是这么繁复,把一个包饺子的概念,具体化到十几,几十道具体步骤,就是编程。

函数库就是早有人把这前十几个步骤完成了,打包好了。您只要买了冷冻饺子回家煮着吃,蒸着吃,煎着吃就行了。

使用到的数学就是:几斤面配几斤肉,多少菜,几勺盐。100刀剁肉,50刀剁菜,肉馅拌均搅200下去,揉面150下,擀皮一个擀5下,擀200张皮,重复包馅动作200下。煮饺子点三次水。这些就是一个包饺子程序用到的所有数学。

还有一些逻辑,比如:面多了加馅,馅多了加面。饺子没熟多煮两分钟。

90%的程序里,数学都是这么用的,能数到100就可以了。

事实上,偷菜之类的游戏的编程,还不就是这个分解步骤的现实版?无限的耐心才是程序员最重要的素质。

如果能再加两个凉菜,那么您就是美化用户界面了,比别人的程序更能吸引用户,销售量大幅提高。

大多的商业编程基本上就是使用函数库不断的循环,本身没有什么数学,只要会数数,1+1, 1+2, 1+3...就是了。

算法理论上除了少数追求速度的专门行业,其他的只有大学计算机系的人才去研究。

何况编程还分为程序设计和具体写码的码工。真要追求速度,研究算法,也是设计师的事儿。

代码工就是博士后,最后也得退化成小学未毕业。

通宝推:黄土布衣,铁手,
家园 还有更汗的....

Jerry的学习以学校为主,老何从来不给他找课外补习班。老何只看Jerry的数学考试卷,有错的地方给儿子讲讲为什么错了,让他搞懂。认为有必要时,出几个类似的题让他巩固一下。

辅导数学时,曾经发生过一个小插曲。五年级的时候,数学老师在考试卷上有一道题,要求写出一个1/3的equivalent,Jerry的答案是3/9。老师打了叉,边上写一个2/6。老何觉得3/9也是1/3的equivalent,想必是老师一时糊涂,搞错了。就在题边写上:“3/9也是1/3的equivalent”。告诉儿子明天去和老师说,让她改过来。没有想到这位老师写了一个纸条给老何,不但坚持3/9不是1/3的equivalent,口气还很硬。老何觉得这不是小事,马上给Case Manager打电话,反映数学老师的无知与傲慢。并发email给她和校长,附上数学老师的纸条的image。希望学校做出反应。

第二天,数学老师就发email, 并电话留言给老何表示她错了。学校校长与主管数学的老师,还有Case Manager与老何面谈。他们都一致认为数学老师错了,数学概念还有态度都错了。决定安排送她在适当的时候去进修培训。老何指出,从她对分数的理解来看,她根本没有资格做数学老师,学校怎么处理那是学校的事,但应该给Jerry另外安排合格的老师。她们表示同意,但考虑到她还年轻,其他方面也还不错,请老何原谅她,给她改正的机会。现在换老师有困难,数学主管会多帮助她的备课。

老何觉得再坚持也没有什么意思,孩子的数学自己多得费点心就是了。

外链出处

亏的老爸是老中, 老美的孩子们不就是这样学的数学...


本帖一共被 3 帖 引用 (帖内工具实现)
家园 正经算法当然跟初中不一样...

我是说基础教育不扎实的人才会觉得拿加减乘除算开方这件事情很神奇。初中还教查对数表,哈哈

家园 当真是更汗啊……

1/3的equivalent必须是2/6?就这样当数学老师……

家园 大开眼界
家园 谢谢
家园 谢谢指教
家园 谢谢
家园 谢谢,门外汉觉得好神奇哦
家园 编程能力我想最重要是看说明书和收拾屋子勤快的能力。

实际问题转换成数学问题不是编程的人干的。转换成数学问题之后的算法问题也不是编程的人干的。最后确定算法之,变成功能模块后,编程的人才可以组合这些模块。至于组合的好坏,调错,需要一些数理逻辑。这就是为什么一个小学数学不及格但是能够收拾屋子人可以编程不错。计算机的出现就是把以前难的问题变成简单的手段。当然只能是越来越简单,让更多的笨人可以享受牛人的风光。牛人可能会有失落感,以前费了牛劲出来的东西,被一帮本人几下就搞定了。不过真正的牛人不会失落的,他们可以牛新的东西。笨人享受了短暂的风光,比如说很快就可以算出开方出来之类的。然后,仍然是笨。这个世界就是牛人永远是牛人,笨人永远是本人,如果你觉得编程很牛,很高深那么你什么东西都会觉得很高深,如果你什么东西都觉得很简单,那么你就是牛人了!关键是你牛不牛,不是高不高深。

通宝推:打铁的,铁手,
家园 我希望的编程革命是象siri一样

只要对着它说几句话,它根据你的话来猜。有可能一句话它就猜到了,也有可能要多说几句才能明白。但总之是我们给出一个不是很精确的描述,它给出一个精确的答案。那么自然语言转换成计算机语言也就成为可能。

这让我想起我以前有过的一个想法,自然语言搜索函数。也许我们可以作一下。

家园 差学校的小学老师有可能

俺老板的儿子上小学三四年级的时候,有个社区大学毕业的代课老师,只要一往黑板上写字下面的小孩就得给她挑拼写错误....还有留的social study 的题目,我老板认为她肯定喝多了,问的是为什么说密西西比河像条绳子。后来家长联合投诉了

全看树展主题 · 分页首页 上页
/ 4
下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河