1.编程实现汇率的双向兑换(1美元=6人民币)。
huilv = 6 #设置汇率
def renzhaunmei(num): #定义人民币转换为美元
return num / huilv
def meizhuanren(num): #定义美元转换为人民币
return num * huilv
a = input("请输入一个以¥或者$结尾的数字:")
if a[-1] == "$":
a = float(a[0:-1])
print(f"{a}美元转换为人民币的数额为:", round(meizhuanren(a), 2))
elif a[-1] == "¥":
a = float(a[0:-1])
print(f"{a}人民币转换为美元的数额为:", round(renzhuanmei(a), 2))
else:
print("您输入的数字格式有误,请重新输入!")
2.使用turtle模块绘制奥运五环图形。
import turtle
# 设置窗口大小
turtle.setup(800, 600)
# 设置画笔
pen = turtle.Turtle()
pen.width(10)
# 绘制蓝色圆环
pen.color('blue')
pen.penup()
pen.goto(-200, -50)
pen.pendown()
pen.circle(100)
# 绘制黑色圆环
pen.color('black')
pen.penup()
pen.goto(50, -50)
pen.pendown()
pen.circle(100)
# 绘制红色圆环
pen.color('red')
pen.penup()
pen.goto(300, -50)
pen.pendown()
pen.circle(100)
# 绘制黄色圆环
pen.color('orange')
pen.penup()
pen.goto(-80, -150)
pen.pendown()
pen.circle(100)
# 绘制绿色圆环
pen.color('green')
pen.penup()
pen.goto(180, -150)
pen.pendown()
pen.circle(100)
# 隐藏画笔
pen.hideturtle()
# 保持窗口不关闭
turtle.done()
3.输出任一百分制成绩所对应的等级:90分以上为“优秀”,80-90分为“良好”,70-80分为“中等”,60-70分为“及格”,60分以下为“不及格”。
score = int(input("请输入百分制成绩:"))
if score >= 90:
print("优秀")
elif score >= 80:
print("良好")
elif score >= 70:
print("中等")
elif score >= 60:
print("及格")
else:
print("不及格")
4.输出1-100之间所有偶数的和。
result = 0 #初始化结果
for i in range(1, 101): #遍历1-100之间的数,判断是否为偶数,如果是偶数就加在一起
if i % 2 == 0:
result += i
print("1-100之间所有的偶数和为:", result)
5.从1开始顺序数数,数到有5或者包含5倍数的数字拍手。编程输出100以内需要拍手的数字。
for num in range(1, 101): #遍历循环1-100之间的数
temp = num
while temp > 0:
a = temp % 10
if num % 5 == 0: #判断该数字是否为5的倍数
print(num)
break
elif a == 5: #判断该数字中是否含有5
print(num)
temp //= 10
6.输出所有的“水仙花数”。所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。
for num in range(100, 1000): #遍历循环所有的三位数
result = 0 #初始化结果
n = len(str(num)) #计算数字的位数
temp = num #循环计算每个数字的n次方和
while temp > 0:
a = temp % 10
result += a**n
temp //= 10
if num == result: #判断是否为水仙花数 [该数的n次方和等于该数]
print(num)
7.定义一个函数,返回三个数(从键盘输入的整数)中的最大值。
a = float(input("请输入第一个数:"))
b = float(input("请输入第二个数:"))
c = float(input("请输入第三个数:"))
if a >= b and a >= c:
print("最大值为:", a)
elif b >= a and b >= c:
print("最大值为:", b)
elif c >= a and c >= b:
print("最大值为:", c)
8.编写函数,判断用户输入的整数是否为回文数。回文数是一个正向和逆向都相同的整数,如123454321。
a = str(input("请输入整数:"))
if a == a[::-1]:
print(f"{a}是一个回文数")
else:
print(f"{a}不是一个回文数")
9.编程实现求n!
def jiecheng(num):
if num == 0:
return 1
else:
return num * jiecheng(num-1)
a = int(input("请输入一个数:"))
print(f"{a}的阶乘为:", jiecheng(a))
10. 基本统计值计算,给出一组数据,计算它们的和、平均值、标准差、中位数。
import numpy
data = []
while True:
try:
a = int(input("请输入数组元素,以任意非数字结束:"))
data += [a]
except:
break
def he(data):
return sum(data)
def average(data):
l = len(data)
return sum(data) / l
def biaozhuncha(data):
return numpy.std(data)
def center(data):
data.sort()
l = len(data)
if l % 2 == 0:
l = l // 2
s = (data[l - 1] + data[l]) / 2
return s
else:
l = l // 2
return data[l]
print(f"{data}的和为:", he(data))
print(f"{data}的平均值为:", average(data))
print(f"{data}的标准差为:", biaozhuncha(data))
print(f"{data}的中位数为:", center(data))