1.输入n,求1+2+3+……+n
题目分析:使用循环实现。
for循环实现:
n = eval(input("输入n的值:"))
sum = 0
for x in range(1, n+1):
sum += x
print("结果为:", sum)
while循环实现:
num = eval(input("请输入数字n:"))
num_sum = 0
i = 1
while i <= num:
num_sum += i
i += 1
print("结果为:", num_sum)
示例:输入5,输出结果为15。
2.输出100到200之间能被7整除但不能被5整除的数.
题目分析:使用循环遍历100~200,使用if语句判断符合条件的数。
代码实现:
"""
describe:输出100到200之间能被7整除但不能被5整除的数.
"""
num = 0
for x in range(100, 201):
if x % 7 == 0 and x % 5 != 0:
print(x) # 输出
num += 1
print("共有%d个数" % num)
运行结果:
3.求解鸡兔同笼问题.
题目描述:今有雉(鸡)兔同笼,上有三十五头,下有九十四足。问雉兔各几何。
使用双重循环 :
for x in range(1, 36):
for y in range(1, 36):
if x+y == 35 and 2*x+4*y == 94:
print("可有鸡:%d头,兔子:%d头" % (x, y))
使用单循环:
"""
describe:求解鸡兔同笼问题.今有雉(鸡)兔同笼,上有三十五头,下有九十四足。问雉兔各几何。
"""
for i in range(1, 36):
if i * 2 + (35 - i) * 4 == 94:
print("可有鸡:%d头,兔子:%d头" % (i, 35 - i))
break
运行结果:
4. 输入5个学生成绩,求平均分。
while实现:
i = 0
sum = 0
while i < 5: # 输入五个成绩后退出
sum += eval(input())
i += 1
print("平均成绩为:%.2f" % (sum/i)) # 输出成绩
for循环实现:
"""
describe:输入5个学生成绩,求平均分。
"""
score_sum = 0
for i in range(5):
score_sum += eval(input("请输入第%d个学生的成绩:" % (i + 1)))
avg = score_sum * 1.0 / 5
print("5个学生的平均成绩为:{:.2f}分".format(avg))
输出结果为:
5.以一个人第一天的能力值en为基数,记为1.0,当好好学习时能力值相比前一天提高1‰,问每天努力学习,一年(365天)后的能力值en有多少?
使用while循环:
"""
describe:以一个人第一天的能力值en为基数,记为1.0,
当好好学习时能力值相比前一天提高1‰,问每天努力学习,一年(365天)后的能力值en有多少?
"""
en = 1.0
i = 1
while i <= 365:
en *= 1.001
i += 1
print("能力值en为:", en)
使用 math.pow函数:
print("能力值en为:", pow(1.001, 365))
运行结果:
天天向上!!!
6.谨防校园贷
题目描述:
你看中了一款大概要八千多元的手机,但是你家里面没有给你这个预算。现在有一种“校园贷”,如果贷10000元,签订8个月的偿还期限,日利率只有8‰。你觉得怎么样,想不想了解一下在8个月后需要偿还多少钱?在引例的基础上,如果贷10000元,日利率8‰,请计算还款金额多少天后就超过100000(十万)元了?
代码实现:
"""
describe:你看中了一款大概要八千多元的手机,但是你家里面没有给你这个预算。
现在有一种“校园贷”,如果贷10000元,签订8个月的偿还期限,日利率只有8‰。
你觉得怎么样,想不想了解一下在8个月后需要偿还多少钱?
在引例的基础上,如果贷10000元,日利率8‰,请计算还款金额多少天后就超过100000(十万)元了?
"""
# 假设一个月有30天
print("8个月后需要偿:{:.2f}万元".format(pow(1.008, 30 * 8)))
print("*****************************")
day = 1
money = 10000
while money <= 100000:
money *= 1.008
day += 1
print(f"还款金额{day}天就超过100000(十万)元了!!!")
输出结果为:
所以说尽量不要借校园贷,你还不起。。。
7.求参会人数
酒会上,如果每人与其他与会者只碰杯一次,并且知道碰杯声为903下,写程序求出出席酒会的人数。
稍微分析一下,第一个人可碰(n-1)次,第二个人可碰(n-2)次,依次类推。。。
代码实现:
"""
describe:酒会上,如果每人与其他与会者只碰杯一次,并且知道碰杯声为903下,写程序求出出席酒会的人数。
"""
n = 1
while n * (n - 1) != 2 * 903:
n += 1
print("出席酒会的人数为:", n)
出席酒会的人数为: 43