本节书摘来自华章社区《C语言程序设计:问题与求解方法》一书中的第3章,第3.2节用计算机求解问题的步骤,作者:何 勤,更多章节内容可以访问云栖社区“华章社区”公众号查看
3.2 用计算机求解问题的步骤
前面介绍了很多有关C语言的基础语法知识,但仍然让人感觉千头万绪,不知从何处下手。其实,在进行编程时,只需重点关注变量、表达式、赋值语句(等少数几类语句)、输入数据到变量和输出变量(或者表达式)的值。其中,变量是我们解决实际编程问题时的核心和主线。
遇到编程问题,思考的要点是:
1)对此问题需要定义哪些类型的几个变量。
2)哪些变量的值需要输入,即哪些已知的变量需要初始化。
3)如何根据已知的变量构造出合适的表达式,从而用赋值语句来求出未知变量的值。
4)将求出的变量(或表达式的)值输出。
如果需要对一些语句进行有选择的执行或者是重复执行,还需要用到第4章、第5章所学的知识。
我们在前几章所学过其他知识,主要是起着一个背景作用,不必死记硬背。这些知识可以使得我们在编程时少犯错误,出现错误时使我们有能力尽快将其查找出来。
用计算机求解问题的一般过程是:
1)用普通语言简要并尽可能精确地叙述问题。
2)确定问题中已知的量有几个,其中有哪几个量随求解的具体应用场合会发生变化(这些量应当定义为变量),有哪几个量不会发生变化(这些量可用符号常量或数值常量来表示)。其中会变化的已知量一般应当在程序中用到此数据之前,通过输入库函数调用(有的高级语言使用输入语句)进行数据输入。
3)问题中需要求解出的有几个量,这些量也应当定义为变量。
4)从已知的量如何得到需要求解出的量?有何公式可以利用?有何方程式可以利用?如果有公式,就可以直接将其转换为赋值语句,只需把公式右边的数学表达式转换为高级语言的算术表达式即可。如果是方程式,通常则需要你自己亲自将方程式求解,得到最后的公式,然后将其转换为赋值语句,只有到了这一步,才可以将工作交给计算机做。
5)如果从已知的量求出最终结果需要一些中间变量,则需要在程序中定义这些中间变量,并且得到怎么从已知的量到中间变量的值的公式,最终由已知量、中间变量得到所要求的最终结果的公式,将所有这些公式转换为赋值语句。
6)将结果输出。
其中最为困难的是第4步和第5步,即如何从已知量求出未知量,这两步通常又称为寻找求解问题的算法。