思路分析
:可以按逐一相加的程序进行,也可以运用公式1+2+3+…+n=解
:算法1:第一步:计算1+2得到结果3;
第二步:将上一步中的运算结果3与3相加得到结果6;
第三步:将上一步中的运算结果6与4相加得到结果10;
第四步:将上一步中的运算结果10与5相加得到结果15;
第五步:将上一步中的运算结果15与6相加得到结果21;
第六步:将上一步中的运算结果21与7相加得到结果28;
第七步:将上一步中的运算结果28与8相加得到结果36;
第八步:将上一步中的运算结果36与9相加得到结果45;
第九步:将上一步中的运算结果45与10相加得到结果55;
第十步:输出运算结果.
相应的流程图如图(1)所示.
(1)算法2:
第一步:取n=10;
第二步:计算;
第三步:输出运算结果.
相应的流程图如图(2)所示.
(2)思维启示
:两种算法的优劣是显而易见的,流程图的繁简也是非常明显的.算法1采用逐一相加的方法,需要10步,做了9步运算,人工输出9次,流程图用了10个图框,而算法2采用了利用公式的方法,只用了3步,人工输入了2次.可见在设计解决问题的算法时,需考虑多种算法,从中选出最优的、最简单的、最易于计算机执行、人工操作尽量少的算法,这一点是非常重要的.比如当本问题的加数增加到1 000时,再用算法1显然是不可行的.因为它太繁琐,而用算法2则不受加数多少的限制.因此在解决问题时,如果有或能总结出解决问题的公式,我们要尽量采用公式算法.