20192416 《Python程序设计》实验二报告
20192416 《Python程序设计》实验二报告
课程:《Python程序设计》
班级:1924
姓名:不愿透露姓名的はんたくさん
学号:20192416
实验教师:王志强老师
实验日期:2020年4月11日
必修/选修: 公选课
1.实验内容
- 设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。
- 考核基本语法、判定语句、循环语句、逻辑运算等知识点
2. 实验过程及结果
经过一段时间的努力,完成了一个较为简单的计算器。可以完成加、减、乘、除、模、三角函数、平方根。对于一些不符合规范的情况进行了error报错,提高了用户(只有我)的使用体验。
import math
print("这是一个巨菜的计算器:")
a = int (input("输入0:结束 输入1:加 输入2:减 输入3:乘 输入4:除 输入5:模 输入6:三角函数 输入7:求平方根\n"))
if a==0:
print("结束")
elif a==1:
print("输入相加的数,最后一个数为0时结束")
b = float(input())
c=0
while(b!=0):
c=c+b
b = float(input())
print("他们的和为",c)
elif(a==2):
print("先输入被减数,依次输入减数,最后一个数为0时结束")
b = float(input())
c=b*2
while(b!=0):
c=c-b
b = float(input())
print("结果为",c)
elif a==3:
print("输入相乘的数,最后一个数为1时结束")
b = float(input())
c=1
while(b!=1):
c=c*b
b = float(input())
print("他们的积为",c)
elif a==4:
print("先输入被除数,依次输入除数,最后一个数为1时结束")
b = float(input())
c = b*b
while(b!=1 and b!=0):
c=c/b
b = float(input())
else:
print("error")
print("他们的结果为",c)
elif a==5:
print("分别输入a和b,将输出结果a%b")
b=float(input())
c=float(input())
print(b,"%",c,"=",b%c)
elif a==6:
print("下面进行三角函数的计算")
a = float (input("输入1:sin 输入2:cos 输入3:tan "))
b = float (input("输入要进行计算的角度:"))
c = b/180*math.pi
if a==1:
print("sin(",b,"°)=",round(math.sin(c),3))
if a==2:
print("sin(",b,"°)=",round(math.cos(c),3))
if a==3:
print("sin(",b,"°)=",round(math.tan(c),3))
elif a==7:
b= float(input("输入要计算的数:"))
if (b>=0):
print("结果为:",math.sqrt(b))
else:
print("error")
3. 实验过程中遇到的问题和解决过程
- 问题1:数学方面根号、三角函数不知如何表示。
- 问题1解决方案:通过import math载入了各类特殊运算符。如:math.sqrt() 、 math.sin()、math.pi等
- 问题2:三角函数那里保留位数过多,不好看。
- 问题2解决方案:使用了round(a,b)a为需处理的数,b为保留的有效数字。
感悟
本次实验比较顺利,但因为能力有限,无法做出比较复杂的混合运算(知识的贫穷限制了我的想像),非常可惜。希望在接下来的学习中获得更强的编程能力,写出更加优秀的代码。