2.20 程序理解和时间分析
很多同学自己会写不少程序,但是往往看不懂别人写的程序。碰到程序需要理解时,都到电脑上去试验,或者用单步跟踪的办法来调试。如果程序运行的时间很长,那我们要等电脑运行几天几夜么?用人脑行不行呢?在面试的时候,面试者也会考一考应聘者对程序的理解能力,下面就是一个这样的题目。
不用电脑的帮助,回答下面的问题:
代码清单2-38 C#代码
问题1:这个程序要找的是符合什么条件的数?
问题2:这样的数存在么?符合这一条件的最小数是什么?
问题3:在电脑上运行这一程序,你估计多长时间才能输出第一个结果?时间精确到分钟(电脑:单核CPU2.0GHz,内存和硬盘等资源充足)。
这道题目没有分析,也没有答案。读者得靠自己的力量来搞定。