课程首页 › 第1部分 › 第8课

第8课 可怕的核废水

第1部分 初识 C++ · 顺序结构· 知识点:半衰与阶乘

可怕的核废水(半衰与阶乘)

核废水排入大海之所以可怕,主要是因为它包含有毒的放射性物质,这些辐射会对生态环境和海洋生物造成严重危害,同时威胁到人类健康。

其中氚就是一种有毒的放射性物质,每经历一个半衰期,氚的数量会减少一半。假设:氚的半衰期是12.32年,现在有128万亿个氚原子,经过36.96年,还剩多少氚原子?

思考分析

半衰期是12.32年,经过36.96年相当于经过了3个半衰期。每个半衰期放射性原子数量减少一半,经过一次半衰期后,氚原子数量=128万亿÷2,两次半衰期氚原子数量=128万亿÷2÷2,三次半衰期氚原子数量=128万亿÷2÷2÷2。

放射性的半衰期

经历3次半衰期后,氚原子数量减半、减半,再减半。

插图

运行程序:

经过36.93年,氚原子还剩:16万亿个。

count=count /2:表示将氚原子数量除以2的结果赋值给count。每行代码计算出每次半衰后剩余的氚原子数量。

敲黑板

图解变量count的数值变化。

插图

10的阶乘

阶乘是一个数学概念,用于表示一个正整数与小于它的所有正整数的乘积。阶乘通常用符号“!”表示。

比如:10的阶乘表示为10!

10!=10×9×8×7×6×5×4×3×2×1

现在我们需要计算10!的值。

插图

运行结果:

(1)factorial=1:因为是乘法运算,所以初始值不能设为0,不然每次乘积都是0了。

(2)factorial*=i:这句代码等同于factorial=factorial*i。=前面加上*运算符组合成*=复合赋值运算符。

*=、+=、-=、/=都是复合赋值运算符,用于将右侧的值与左侧的变量进行运算,并将结果赋值给左侧的变量。

factorial*=i这个操作相当于先执行乘法运算,然后将结果赋值给变量factorial。

划重点

新写法:

插图
插图

细菌分裂

假设A细菌进入人体后快速分裂,每隔2分钟一个细菌就会分裂成两个细菌。如果有1个细菌入侵人体,经过5分钟后会有多少个细菌?

(1)计算出经过5分钟后有多少次细菌分裂,5分钟=5 / 2=2次分裂。

(2)最初细菌数量是1个,int count=1。

经过1次分裂后,细菌数量=最初细菌数量×2,count*=2。

经过2次分裂后,细菌数量=1次分裂后细菌数量×2,count*=2。

插图
插图

巩固练习

(1)num\=i和num=num\i是同一个意思。()√()×

(2)阅读程序,请问最后输出的i值是多少?

插图

(3)有一根100厘米长的绳子,每过一分钟对折后剪断,请问3分钟后,绳子长度是多少?

为了解答这个问题,写了一个小程序,但是一不小心删除了部分代码,你能补上吗?

插图
插图