购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

第7课
星号金字塔
(双变量累加)

有这样一座星号金字塔,每一层都由奇数个星号组成。第一层1个,第二层3个,第三层5个,以此类推。

现在我们需要计算出这个星号金字塔一共有多少个星号,试着编写程序来完成吧!

温故知新

列等式计算。

(1) "1+3+5+7+9=" :这是字符串,列了一个字符串等式。

(2) 1+3+5+7+9 :这是进行5个数字的加法运算。

(3)多个 << 将内容拼接输出。

累加求和

挑战一个有难度的计算,如果星号一共有100层,那么一共有多少个星号?将数字一个一个地写出来就太烦琐了,需要找到简便的方法。

之前计数的时候是每次加1,现在的求和是+1、+3、+5、+7、+9…每次加的数字都不同。

(1) sum = 0 :声明了一个变量sum,用它来存储星号的总数,计算前初始值是0。

(2)将每层的星号数量加起来:

划重点

观察sum的变化,每行代码执行后, sum 值都发生了变化。

双变量

把后面加的数字1、3、5、7、9换成变量 i 的话, sum = sum + i 的意思就是把原来 sum 的值加上 i 的值,再赋值给 sum 得到一个新的值。如果 sum 从0开始,就相当于把所有的 i 都加起来了, sum 就是所有 i 的总和。

再感受一番累加,从0开始+1、+3、+5、+7、+9。

     sum = 0
     sum = sum + 1;  0 + 1 = 1 (完成加1)
     sum = sum + 3;  1 + 3 = 4(计算的结果继续加3)
     sum = sum + 5;  4 + 5 = 9(计算的结果继续加5)
     sum = sum + 7;  9 + 7 = 16(计算的结果继续加7)
     sum = sum + 9;  16 + 9 = 25(计算的结果继续加9)

星号的数量统计,不仅 sum 有规律,后面增加的数字也有规律,它们都是依次增加的奇数。尝试将后面的加数也用一个变量来替代。

每次累加后, i 都增加2,将 i = i + 2 写入程序。

巩固练习

(1)以下哪个式子的计算结果和程序输出结果相等?( )

A.0 + 1 + 3 + 6 + 9 =

B.0 + 4 + 10 + 19 =

C.0 + 1 + 4 + 10 + 19 =

D.0 + 1 + 4 + 10 =

(2)星号塔每层都有偶数个星号,第一层2个,第二层4个,第三个6个,第四层8个,第五层10个。同样使用之前的程序代码计算总星号数,但是程序有些小问题,需要你来修改一下。

(3)运用双变量累加的方式,求1+2+3+4+5+6+7+8+9+10的运算结果。

探索思考

100层星塔中星号的总数还没有计算出来,留给你探索一番。这里需要用到循环,试着运用我们之前学习的 while (true) { } 来完成吧! l6Je+1E6en2DogoHXgE6yB4q+lteuU6/4oSRAQPMatDAXS7rJ1D0azBOEpE1grKc

点击中间区域
呼出菜单
上一章
目录
下一章
×