20192419 2019-2020-2 《Python程序设计》实验2报告
课程:《Python程序设计》
班级:1924
姓名:万腾阳
学号:20192419
实验教师:王志强
实验日期:2020年4月12日
必修/选修: 公选课
1.实验内容
设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。
2. 实验过程及结果
先引入math库,才可以使用sin、cos、tan函数和π值。随后先运用while函数,这样可以让用户选择何时退出,之后让用户输入要使用的运算规则,使用if语句判断并进行该运算,输出结果就完成了一个小计算器。
代码:
n="1"
while(n!="end"):
print("选择运算功能:")
print("1.加法 2.减法 3.乘法 4.除法 5.sin值 6.cos值 7.tan值")
choice = int(input("选择数字为:"))
if choice == 1:
num1 = int(input("输入第一个数字: "))
num2 = int(input("输入第二个数字: "))
print(num1, "+", num2, "=", num1+num2)
if choice == 2:
num1 = int(input("输入被减数: "))
num2 = int(input("输入减数: "))
print(num1, "-", num2, "=", num1-num2)
if choice == 3:
num1 = int(input("输入第一个数字: "))
num2 = int(input("输入第二个数字: "))
print(num1, "×", num2, "=", num1*num2)
if choice == 4:
num1 = int(input("输入被除数: "))
num2 = int(input("输入除数: "))
print(num1, "÷", num2, "=", num1/num2)
if choice == 5:
num1 = int(input("输入度数:"))
num2 = math.radians(num1)
print("sin",num1,"=",math.sin(num2))
if choice == 6:
num1 = int(input("输入度数:"))
num2 = math.radians(num1)
print("cos",num1,"=",math.cos(num2))
if choice == 7:
num1 = int(input("输入度数:"))
num2 = math.radians(num1)
print("tan",num1,"=",math.tan(num2))
n=input("结束请输入end,输入其他继续:")
部分运行结果:
3. 实验过程中遇到的问题和解决过程
一开始我测试我的程序时,发现tan45°的值并不等于数学中的1,而是0.999999……
我便开始怀疑我的程序哪里出了问题,我首先思考我的弧度公式正不正确,上网搜索公式并无错误,我便怀疑可能python中公式转换时精度会缺失,于是我变测试该公式
我与电脑中的计算器比较并无错误,但还是怀疑,便上网搜索到了python中的角度转换弧度公式,发现仍无变化,于是我直接用弧度计算tan值,发现python本身tan函数存在就精度缺失
其他(感悟、思考等)
做实验,主要是培养自我得动手能力,实践出真理,这句话是没错的,所以做实验一定要亲历亲为,每个细节都需要我们去关注,就比如说这里的tan值的问题。
其次,我们做实验前不能盲目去做,一定得先去了解,虽然这次实验简单,但是要摸透其中的奥妙并不简单,所以我们得先去看看书,或者是上网百度搜索一下,这些都是有助于我们更快完成实验的。