20193207 实验二《Python程序设计》实验报告
20193207 2019-2020-2 《Python程序设计》实验二报告
课程:《Python程序设计》
班级: 1932
姓名: 倪思涵
学号: 20193207
实验教师:王志强
实验日期:2020年4月11日
必修/选修: 公选课
1.实验内容
-
设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。
-
考核基本语法、判定语句、循环语句、逻辑运算等知识点
2. 实验过程及结果
-
先对计算器的基本功能进行了编写,能满足加减乘除,求a的b次方与求余运算;
-
在计算器中设置了输入-1结束循环来达到可控制进行多少次运算的程序;
-
加入在除法中判断除数是否为0的操作,并且在除数为0时可重新输入除数直到除数不为0
以下是源码:
**************Python Counter 1.0**************
Please input 1/2/3/4/5/6 to choose the mode:
1.plus 2.minus 3.multiply
4.divide 5.a^b 6.mod
-1.quit the counter
**********************************************
""")
mode = 0
while (mode != "-1"):
mode = input("Choose your mode:")
if (mode == "-1"):break;
a = float(input("Please input the first number:"))
b = float(input("Please input the second number:"))
ans = 1;
if mode == "1":
print(a, "+", b, "=", a+b)
elif mode == "2":
print(a, "-", b, "=", a-b)
elif mode == "3":
print(a, "*", b, "=", a*b)
elif mode == "4":
while (b == 0):b = float(input("You input a wrong number,please input another b:"))
print(a, "/", b, "=", a/b)
elif mode == "5":
for i in range(1,b+1):ans = ans*a
print(a,"^",b,"=",ans)
elif mode == "6":
print(a,"%",b,"=",a%b)
else:print("We don't have the mode yet.")
3. 实验过程中遇到的问题和解决过程
- 问题1:输入两个数a,b的数据类型错误导致除法运算结果错误
- 问题1解决方案:将a,b改为了float型
- 问题2:缩进错误导致除法运算时报错
- 问题2解决方案:改进了缩进,分清了层次
感悟
这次作业让我意识到了我在Python的程序缩进这一块上还有所不足,在输入时对变量的数据类型把握不够准确,没有考虑到程序全局来改变变量类型。