开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第11天,点击查看活动详情
第四章 Python程序控制结构
1.实验目的
(1)掌握if语句的用法****
(2)掌握while语句用法
(3)掌握for语句用法
2.实验内容
通过9个题目,深入了解if,while,for语句的应用。
3.实验过程
A 从键盘里输入一个年份,判断是否是闰年****
这题其实是对if语句的一个运用,看这个数满不满足被400整除或者不被100整除但是被4整除。
B 编写程序,输入一个数,如果在 60 以下,输出不及格,否则输出及格****
****
对if,else语句考察。
C 人年龄 60 及以上输出老年人, 40 到 60 输出中年人, 18 到 40 输出青年人, 18 以下输出未成年****
及对if和elif的考察,然后括号里写判断条件
D 输出斐波那契数列的前 20 项****
****
这题我的主要思路就是用一个计数器cnt,基础项为0,1每次输出两项,然后再分别每次叠加,这里就体现出while循环的重要性,在cnt<=18的时候,都可以输出(在等于18时候进入循环,刚好可以输出20项。
E .输出 20 到 100 之间能被 6 整除但是不能被 8 整除的所有数****
****
这题就是个很简单的for循环,从20扫到100,用if语句判断如果满足以上条件,就输出。
F 在一个字符串中,查找某个字符,如果成功,就显示所在索引号,否则显示没有。****
****
这里我的思路是用到字符串的一个函数find,如果找到返回索引,否则返回-1。****
G 寻找并打印所有三位数的素数****
****
这题对for循环的应用很深刻,第一个循环是遍历所有的三位数,第二个循环是来遍历所有从2到i-1的数,如果能被j整除,那么说明不是素数,如果一轮循环下来,ok还等于0说明是素数,就输出。
H. 再最后一项大于等于 10 的 -8 次方的前提下,计算自然底数 e 的近似值,并输出最后一个 n 。****
****
这题就是while循环的一个简单运用,我们维护一个ans,每次循环成前面的n,然后当1/ans比10的-8次方大的时候,就循环叠加,最后出来循环只后n-1就是最后一项的n,然后再把e的近似值打印出来。
I 打印所有的水仙花数****
****
水仙花数是一个经典的多重循环问题,要注意第一重循环百位的时候i不能从0开始,其他的位可以从0开始,然后就是一个if判断一下,如果可以,就输出。
4.实验过程中遇到的问题
这次实验其实没有遇到大问题,因为python里面for,if,while的应用于C++里面的比较相似,因此,编写这些程序还是比较轻松的,就是那个自然底数那个地方,我开始用了一个函数实现阶乘,后来发现不需要,可以之间用ans加while。
5.实验收获
这次实验使得我对if,for,while语句有了很深刻的理解,对分支和循环语句也有了很深刻的了解,也能使用这些语句解决一些简单和有一定难度的问题,很具有实际意义。