本帖最后由 lymww 于 2022-10-14 11:40 编辑
使用最基础的语句写的
'''
8:
编写一个程序,产生一个在[5,20]之间的随机实数。
假设该随机数是一个圆锥的底面半径,已知高度为10,
请计算该圆锥的体积。将底面半径、高和体积输出到屏幕上,
输出时每个值占10列,保留3位小数,右对齐
'''
import random
h = 10
pi = 3.14
# 随机获取圆锥的地面半径
r = random.randint(5,20)
S = pi * pow(r,2)
# 圆锥的体积
V = 1/3*S*h
print('圆锥的地面半径为:%10.3f' % r)
print('圆锥的高为:%10.3f' % h)
print('圆锥的体积为:%10.3f' % V)
'''
9:
公园要修一道长x米,宽y米,高z米的围墙,每立方米用砖600块。
编写一个程序,提示用户从键盘输入x、y和z,
输出所需砖块的数量。(尺寸为浮点数,砖块为整数)
'''
z = 600
l = float(input('请输入围墙的长:'))
h = float(input('请输入围墙的高:'))
w = float(input('请输入围墙的宽:'))
sum = int((l*w + h*w*2 + h*l*2) * z)
print('长{}宽{}高{}的围墙,所需的砖块总数为:{}'.format(l,w,h,sum))
'''
10:
一只大象口渴了,要喝20升水才能解渴,但现在只有一个深h厘米,
底面半径为r厘米的小圆桶(h和r都是整数)。问大象至少要喝多少桶水才会解渴。
编写程序输入半径和高度,输出需要的桶数(一定是整数)
'''
import math
# 因为最后结果是整数,那么就要向上取整,所有引用math模块中的ceil函数
g = 20
h = int(input('请输入水桶的深度:'))
r = int(input('请输入水桶的低面半径:'))
m = r*h
sum = math.ceil(g/m)
print('体积为{}的圆桶,大象需要喝{}桶'.format(m,sum))
'''
11:
编写一个程序,提示用户输入两个平面上点的坐标A (x1,y1)、B(x2,y2),
然后计算该两点间的距离。|AB=√((x1-x2)^2+(y1-y2)^2 )
'''
import math
# 因为两点距离计算中要涉及到开根号,就要用到math模块中的sqrt函数
z = input('请输入两个平面上点的坐标(输入4个数字,分别用空格隔开:)')
z_list = z.split(' ')
x1 = int(z_list[0])
y1 = int(z_list[1])
x2 = int(z_list[2])
y2 = int(z_list[3])
AB = math.sqrt(pow(x1-x2, 2) + pow(y1-y2, 2))
print('AB两点间的距离为:{}'.format(AB))
'''
12:
编写一个程序,提示用户输入三角形的三个顶点(x1,y1)、(x2,y2)、(x3,y3),
然后计算三角形面积,这里假定输入的三个点能构成三角形。将面积输出到屏幕,
要求输出占7列,保留2位小数,左对齐。
三角形面积公式如下:s=(side1+side2+side3)/2,area=√(s(s-side1)(s-side2)(s-side3))
其中: side1,side2,side3表示三角形三条边的长度
'''
# 这题就要用到12题中的两点距离公式,计算出边长,如果12题写成函数,这里可以直接调用,现在我是使用最基本的写法
z = input('请输入三角形的三个顶点的坐标(输入6个数字,分别用空格隔开:)')
z_list = z.split(' ')
x1 = int(z_list[0])
y1 = int(z_list[1])
x2 = int(z_list[2])
y2 = int(z_list[3])
x3 = int(z_list[4])
y3 = int(z_list[5])
side12 = math.sqrt(pow(x1-x2, 2) + pow(y1-y2, 2))
side23 = math.sqrt(pow(x2-x3, 2) + pow(y2-y3, 2))
side31 = math.sqrt(pow(x3-x1, 2) + pow(y3-y1, 2))
s = (side12+side23+side31)/2
area =math.sqrt(s*(s-side12)*(s-side23)*(s-side31))
print('该三角形的面积为:%-7.2f'% area)
'''
14:
假设每月存100元到一个年利率为6%的储蓄账户。因此,月利率为0.06/12=0.005。
a)第一个月后,账户的存款金额为: 100*(1+0.005)=100.5
b)第二个月后,账户的存款金额为: (100+100.5)*(1+0.005)=201.5025
c)第三个月后,账户的存款金额为: (100+201.5025)*(1+0.005)=303.3115
d)请编写程序计算5个月后,该储蓄账户的存款金额是多少,并显示在屏幕上,要求保留5位小数,右对齐。
计算总体收益相对总体本金的收益率(此收益率值:总收益/总本金),
并显示在屏幕上,要求以百分数形式显示,保留2位小数,右对齐
'''
a = 100 * (1+0.005) # 第一个月存款金额
b = (100 + a)*(1+0.005) # 第二个月存款金额
c = (100 + b)*(1+0.005) # 第三个月存款金额
d = (100 + c)*(1+0.005) # 第四个月存款金额
e = (100 + d)*(1+0.005) # 第五个月存款金额
print('第五个月后,该储蓄账户的存款金额为:%.5f'% e )
s = (e-100)/100
print('总体收益相对总体本金的收益率为:%.2f%%'% (s*100))
|