python中分支与循环的必刷经典例题(附参考答案)

python中分支与循环的必刷经典例题(附参考答案

分支与循环在应用时是非常灵活的,可以单独使用,也可以相互嵌套循环使用,而且对于一个问题来讲,就像做一个数学题,虽然答案只有一个,但是解决问题的思路和方法并不是唯一只有一种,可能现在认为最优的解决方式都并非在100年之后还是,最佳的解决算法,所以写程序也是如此,并非有一种思想它就是解决这个问题的最佳方式,而它只是目前在所有算法中最而已。记住,解决一个问题,一定是先采用能解决问题的方法解决它(哪怕当前方法很笨),而后才是在此基础上思考解决此问题更优的方式,不要由于一开始就在思考一个“最佳”的方案才开始解决。

想要学好编程,多加练习是不可或缺的一环,那么,学习分支与循环后(没看过的赶紧打开( 3分钟带你了解Python中分支与循环1),当然也是少不了练习,在这里,我总结了很多在学习分支与循环的必刷的经典例题,一起来看看。可以先试着写一下,参考代码在后面

1.对1到100的求和

2.求1到100之间是3或者5的倍数的整数

3.输入一个非负整数 n ,输出它的阶层n!

4.输入两个正整数 n和 m,找它们的最大公因数

5.使用for 循环打印出下列样式

 *
 **
 ***
 ****
 *****

6.打印乘法九九表

7.输入n,输出n个斐波拉切数(不知道的赶紧百度百度斐波拉切数)

8.百钱白鸡问题

鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一,欲百钱买百鸡,鸡翁、鸡母、鸡雏各几何?

用人话讲就是,公鸡五块一只,母鸡三块一只,小鸡一块钱三只,用100块钱买100只鸡,公鸡、母鸡和小鸡各能买多少只?

  1. 输入一个正整数,判断它是不是质数

10.输入10个1-100之间的数,计算这10个数的平均数,找出最大值、最小值

11.猜随机数游戏

机器产生一个随机数(假设在1,100之间),用户每次输入一个数字,当猜对后结束,如果猜7次都没有猜对,输出“智商有待充值”

12.找出100到999之间的水仙花数

各个 位数的立方之和等于这个数本身它就是水仙花数,如153 = 1 ^ 3 + 5 ^ 3 + 3 ^ 3

13.数字的反转

例如,用户输入1234,计算机输出4321

14.找出1-10000的完美数

除自身外的所有因子之和等于这个数它就是完美数,如6的因子1,2,3,有1 + 2 + 3 = 6

15.分鱼求和问题

A、B、C、D、E这5个人合伙夜间捕鱼,凌晨时都已经疲惫不堪,于是各自在河边的树丛中找地方睡着了。第二天日上三竿时,A第一个醒来,他将鱼平分为5份,把多余的一条扔回河中,然后拿着自己的一份回家去了;B第二个醒来,但不知道A已经拿走了一份鱼,于是他将剩下的鱼平分为5份,扔掉多余的一条,然后只拿走了自己的一份;接着C、D、E依次醒来,也都按同样的办法分鱼。问这5人至少合伙捕到多少条鱼?

16.输入三角形的三条边的长度,如果是三角形,算出它的面积,否则让用户重新输入

(算面积采用海伦公式)

在这里插入图片描述

参考代码:

(不一定最优,有更好的写法留在评论区哦)

1.对1到100的求和

total = 0   # 定义一个变量total来进行和的存储
for i in range(1,101):
    total += i
print(f"1-100的累加和为{total}")

2.求1到100之间是3或者5的倍数的整数

for i in range(1,101):
    if i % 3 == 0 or i % 5 == 0:
        print(i)

3.输入一个非负整数 n ,输出它的阶层n!

n = int(input("输入非负整数n:"))   # 接收用户输入的整数
total = 1                         # 用total存储累积
for i in range(2, n + 1):
    total *= i
print(f"{n}的阶层 = {total}")

4.输入两个正整数 n和 m,找它们的最大公因数

print("输入两个正整数")
n = int(input("输入正整数1:"))
m = int(input("输入正整数2:"))
min = 0
if m > n:
    min = n
else:
    min = m
for i in range(min,0,-1):
    if n % i == 0 and m % i == 0:
        print
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Python和数据分析

钟意作者

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值