编程的基础是计算机科学,而计算机科学的基础是数学。因此,学习数学有助于巩固编程的基础,写出健壮的程序。程序员的数学第二版尽可能减少了“大家不想看的算式”,也没有过多的定义、定理和证明。有兴趣的小伙伴就快来七达网下载程序员的数学电子书试试看吧!
条件分支和逻辑
在编程时,我们按照条件将处理方法分为多个“分支”。
对此,C语言和Java语言等很多编程语言中使用的是if语句。
具体方法为:当满足条件时执行这条语句,不满足条件时执行另一条语句。
这时,我们就使用了数学领域的“逻辑”来控制程序。
因此,编程时必须熟练掌握“与”“或”“非”“蕴涵”等逻辑构成元素。
循环和数学归纳法
我们在处理大量的信息时,使用程序进行“循环”操作。
比如使用for语句可以循环处理大量数据。
循环中使用的就是“数学归纳法”。
分类和计数方法
在将许多条件和数据“分类”时,程序员必须注意不能有遗漏。
这时加法法则、乘法法则、排列、组合等“计数方法”将助你一臂之力。
这是程序员应该熟记于心的数学工具。
通过本书,也可以学到递归、指数、对数、余数等重要的基础数学概念。
人类和计算机的共同战线
我们写程序是为了解决人类解决不了的问题。程序员理解问题,编写程序;计算机运行程序,解决问题。
人类不擅长重复劳动,很容易厌倦,有时还会出错,但人类擅长解决问题。与此相对,计算机擅长重复劳动,但不能自行解决问题。
于是,人机合力,如虎添翼。
遇到难题,光靠人类不能解决,光靠计算机也不能解决。而人机合力就能解决问题。这也是本书要传达的主旨之一。
不过,编写程序也非易事,无论人类和计算机如何齐心合力,总有解决不了的问题。本书也对人类和计算机的极限进行了分析。
希望你在读完本书后能对以程序为媒介的人机合作有更深刻的理解。
∨ 展开