主要实验内容 print 、input 语句、pip 安装第三方库以及标准库的使用
##################print语句#####################
print('''
@@@@@@@@@@@
@@@@ @@@@
@@@ @ @@@
@@ @@@ @@
@@@ @ @@@
@@@@ @@@@
@@@@@@@@@@@
''')
print('''
+++++++++++
+ +
+++++++++++
''')
print('''
学Python,来传智播客黑马程序员
学Python,来传智播客黑马程序员
学Python,来传智播客黑马程序员
学Python,来传智播客黑马程序员
''')
###################input语句 2.1 直角三角形斜边长度########
import math
a = int(input('请输入边长a:'))
b = int(input("请输入边长b:"))
c = a**2+b**2
d = math.sqrt(c)
print('直角边长为:', d)
###################input语句 2.2 交换 ##################
a = eval(input('请输入第一个数a:'))
b = eval(input("请输入第二个数b:"))
c = a
a = b
b = c
print('请输入第一个数:', a)
print('输出第二个数:', b)
###################input语句 2.3#####################
import math
a = eval(input('请输入三门成绩:'))
b = eval(input())
c = eval(input())
sum1 = a + b + c
avg = sum1 / 3
print(f'总成绩:{sum1},平均成绩{avg}')
###################input语句 2.4 计算三角形面积###########
import math
a = eval(input("请输入a边长:"))
b = eval(input("请输入b边长:"))
c = eval(input("请输入c边长:"))
p = (a+b+c)/2
s = math.sqrt(p*(p-a)*(p-b)*(p-c))
print(f"三角形的面积是:{s:.4f}")
3. 综合操作
1、用户输入一个三位自然数,计算并输出其百位、十位和个位上的数字。
a = int(input("输入一个三位自然数:"))
sum1 = 0
if a < 100:
print('输入有误,请重新输入')
for i in range(0, 3):
m = int(a % 10)
a = a / 10
sum1 += m
print("各位数之和为:", sum1)
2、编写程序, 输入任意大的自然数, 输出各位数字之和。
a = int(input("输入任意自然数:"))
sum1 = 0
while a > 10:
m = a % 10
sum1 = sum1 + m
a = int(a / 10)
sum1 = sum1 + a
print("各位数之和为:", sum1)
3、编写程序,输入两个集合 setA 和 setB,分别输出它们的交集、并集和差集setA-setB。
setA = {1, 2, 3, 4, 5}
setB = {2, 3, 4, 5, 6}
intersection = setA & setB
union = setA | setB
ch = setA - setB
print("交集:", intersection)
print("并集:", union)
print("差集:", ch)
4、 编写程序, 输入一个自然数,输出它的二进制、八进制、十六进制表示形式。
a = int(input("输入一个自然数:"))
print(f'它的二进制数为{bin(a)}')
print(f'它的八进制数为{oct(a)}:')
print(f'它的十六进制数为{hex(a)}')
5、如下图所示,完成以下两个题目编写程序,输入本金、年利率和年份,计算复利(保留两位小数),运行结果如下图提示:用户可以使用 “ print(str.format(" 本金利率和为 :{0:2.2f}", amount))”的语句形式输出程序运行效果(结果保留两位小数)。
import math
benjin = float(input('请输入本金'))
ratio = float(input('请输入年利率'))
years = int(input('请输入年数'))
f = benjin * math.pow((1 + ratio / 100), years)
print(f'本金利率和为:{f:.2f}')
6 .编写程序,输入球的半径,计算球的表面积和体积 (结果保留两位小数)
提示:
(1)球的表面积的计算公式为4*π*r**2 ,球的体积的计算公式为 4/3*π*r**3
(2)用户可以使用 “ print(str.format(" 球 的 表面 积 为 :{0:2.2f},体 积 为:{1:2.2f}",area, volume))”的语句形式输出程序运行效果。
import math
r = float(input('请输入球的半径:'))
area = 4 * math.pi * r ** 2
volume = 4 / 3 * math.pi * r ** 3
print(f"球的表面积为:{area:2.2f},体积为:{volume:2.2f}")
7. 编写程序, 根据输入本金 b、年利率 r 和年数 n 计算最终收 v,v=b(1+r)";然后编写测试代码,提示输入本金、年利率和年数,显示最终收益(保留两位小数)。
b = float(input('请输入本金:'))
r = float(input('请输入年利率:'))
n = int(input('请输入年数:'))
v = b * ((1 + r / 100) ** n)
print(f'最终收益:{v:.2f}')
8.编写程序,求解一元二次方程 x*2 -10x+16=0,运行效果参见下图。
import math
a=float(input('请输入系数a:'))
b=float(input('请输入系数b:'))
c=float(input('请输入系数c:'))
d=b*b-4*a*c #判别式
if a==0 and b==0:
print('此方程无解!')
elif a==0 and b!=0:
print('此方程的解为:',end='')
x=-c/b
print(x)
elif d==0: #判别式等于0
print('此方程有两个相等实根:',end='')
x=(-b)/2*a
print(x)
elif d>0: #判别式大于0
print('此方程有两个不等实根:',end='')
x1=((-b)+math.sqrt(d))/2*a
x2=((-b)- math.sqrt(d))/2*a
print(x1,' 和 ',x2)
elif d<0: #判别式小于0
print('此方程有两个共轭复根:',end='')
real=(-b)/2*a #实部
imag=(math.sqrt(-d))/2*a #虚部
x1=complex(real,imag)
x2=complex(real,-imag)
print(x1,' 和 ',x2)
9.编写程序,提示输入姓名和出生年份,输出姓名和年龄,运行效果参见
提示:
(1)用户可以使用 datetime.date. today().year返回当年的年份值。
(2)用户可以使用“ print("您好!{0}。您{1}岁。". format( name,age)”的语句形式输出程序运行效果.
import datetime
name = input("请输入姓名:")
time = eval(input("请输入出生年份:"))
now = datetime.date.today().year
age = int(now - time)
print(f"你好!{name}.您{age}岁。")
10. 输入直角三角形的两个直角边,求三角形的周长和面积,以及两个锐角的角度。结果均保留一位小数。效果如下图。
提示:
(1)math.asin()函数返回正弦值为指定数字的弧度;math.acos()函数返回余弦值为指定数字的弧度。
(2)将弧度转换为角度的公式为角度=弧度*180/pi
(3)可以使用“ round(asin(sinA)*180/pi,0)”的语句形式求锐角A的度数
(4)可以使用“print(str. format("三角形的周长={0:1.1f},面积={1:1.1f}",p,area)”的语句形式按题目要求输出三角形的周长和面积。
import math
a = eval(input("a="))
b = eval(input("b="))
c = math.sqrt(a * a + b * b)
C = a + b + c
p = C / 2
S = math.sqrt(p * (p - a) * (p - b) * (p - c))
print(f"三角形周长为:{C:.1f}")
print(f"三角形面积为:{S:.1f}")
sinA = a / c
A1 = math.asin(sinA)
A = A1 * 180 / math.pi
sinB = b / c
B1 = math.asin(sinB)
B = B1 * 180 / math.pi
print("三角形两个锐角的度数分别为:", A, "和", B)