正在加载图片...
第2单元控制结构 输出: The even number4=2+2 The even number 6=3+3 The even number 8=3+5 The even number 10=3+7 The even number 9998=31+9967 The even number 10000=59+9941 分析:上述程序在4到10,001的范围内验证了哥德巴赫猜想,发现在这个范围内的 所有偶数均可以分解为两个素数之和。当然,这还不能说明哥德巴赫猜想确实成立。鉴于这 种方法只能检验有限个偶数,而偶数的个数是无限的,所以如果想做出一个“伟大的发现” 就只有指望在所检验的范围内能出现一个确实不能被分解为两个素数之和的偶数了(此时 可以宣布哥德巴赫猜想不成立,同样是解决了这个问题)。很遗憾,使用上面的程序,在 M=32,000时仍然没能发现一个这样的偶数。超过这个限度,就要对程序的结构进行修改才 能继续运行。 自学内容 25结构化程序设计方法简介 在计算机问世以后的最初几年,其价格非常昂贵,而运算能力很差,可靠性也很低。由 于当时计算机的速度慢、内存小,加之为计算机编写软件主要使用机器指令代码或者汇编语 言,所以当时研究程序设计方法的重点是如何通过运用一些编程技巧尽量节约内存空间,提 高运算速度。后来虽然也出现了 FORTRAN、 ALGOL等高级程序设计语言,为提高程序员 的算法表达能力和降低劳动强度提供了一定条件,但是由于这一时期计算机的主要任务是 进行科学计算,而且程序的规模一般都比较小,因此从程序设计方法上来看并没有发生什么 根本的变化。总的来说,程序设计被看成是一种技巧性很强的工作,程序员们大都采用手工 工艺式的、精雕细凿的设计方法。 60年代以后,计算机硬件的发展速度异常迅猛,其速度和存储容量不断提高,成本急剧 下降。但程序员要解决的问题却变得更加复杂,程序的规模越来越大,出现了一些需要几十 甚至上百人年的工作量才能完成的大型软件,远远超出了程序员的个人能力。这类程序必须 由多个程序员密切合作才能完成。由于旧的程序设计方法很少考虑程序员之间交流协作的需 要,所以不能适应新形势的发展因此编出的软件中的错误随者软件规模的增大而迅速增加, 造成调试时间和成本也迅速上升,甚至许多软件尚未出品便已因故障率太高而宣布报废。当 时人们认为,这是由于计算机的效率远远超过人(程序员)的效率造成的,而随着技术的发 展,计算机的效率还可不断地提高,人的效率却无法有大的改进,因此由人编写的软件的规 模和复杂度就会有一个上限,软、硬件之间的效率差别会越来越大,从而会限制计算机的发 展。这就是通常所说的“软件危机”第 2 单元 控制结构 - 28 - 输 出: The even number 4 = 2 + 2 The even number 6 = 3 + 3 The even number 8 = 3 + 5 The even number 10 = 3 + 7 … ... The even number 9998 = 31 + 9967 The even number 10000 = 59 + 9941 分 析: 上述程序在4到10,001的范围内验证了哥德巴赫猜想, 发现在这个范围内的 所有偶数均可以分解为两个素数之和。当然, 这还不能说明哥德巴赫猜想确实成立。鉴于这 种方法只能检验有限个偶数, 而偶数的个数是无限的, 所以如果想做出一个“伟大的发现”, 就只有指望在所检验的范围内能出现一个确实不能被分解为两个素数之和的偶数了 (此时 可以宣布哥德巴赫猜想不成立, 同样是解决了这个问题)。很遗憾, 使用上面的程序, 在 M=32,000 时仍然没能发现一个这样的偶数。超过这个限度, 就要对程序的结构进行修改才 能继续运行。 自学内容 2.5 结构化程序设计方法简介 在计算机问世以后的最初几年, 其价格非常昂贵, 而运算能力很差, 可靠性也很低。由 于当时计算机的速度慢、内存小, 加之为计算机编写软件主要使用机器指令代码或者汇编语 言, 所以当时研究程序设计方法的重点是如何通过运用一些编程技巧尽量节约内存空间, 提 高运算速度。后来虽然也出现了 FORTRAN、ALGOL 等高级程序设计语言, 为提高程序员 的算法表达能力和降低劳动强度提供了一定条件, 但是由于这一时期计算机的主要任务是 进行科学计算, 而且程序的规模一般都比较小, 因此从程序设计方法上来看并没有发生什么 根本的变化。总的来说, 程序设计被看成是一种技巧性很强的工作, 程序员们大都采用手工 工艺式的、精雕细凿的设计方法。 60 年代以后, 计算机硬件的发展速度异常迅猛, 其速度和存储容量不断提高, 成本急剧 下降。但程序员要解决的问题却变得更加复杂, 程序的规模越来越大, 出现了一些需要几十 甚至上百人年的工作量才能完成的大型软件, 远远超出了程序员的个人能力。这类程序必须 由多个程序员密切合作才能完成。由于旧的程序设计方法很少考虑程序员之间交流协作的需 要, 所以不能适应新形势的发展, 因此编出的软件中的错误随者软件规模的增大而迅速增加, 造成调试时间和成本也迅速上升, 甚至许多软件尚未出品便已因故障率太高而宣布报废。当 时人们认为, 这是由于计算机的效率远远超过人 (程序员) 的效率造成的, 而随着技术的发 展, 计算机的效率还可不断地提高, 人的效率却无法有大的改进, 因此由人编写的软件的规 模和复杂度就会有一个上限, 软、硬件之间的效率差别会越来越大, 从而会限制计算机的发 展。这就是通常所说的“软件危机
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有