20191130 2020-2021-2 《Python程序设计》实验二报告
课程:《Python程序设计》
班级:1911
姓名: 李月
学号:20191130
实验教师:王志强
实验日期:2021年4月26日
必修/选修: 公选课
(一)实验内容
-
设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。
- 考核基本语法、判定语句、循环语句、逻辑运算等知识点
(二)实验过程及结果
1、完成基本四则运算
2、添加取模运算
3、求阶乘
4、求解二元一次方程
5、运行结果
6、主要程序
import math
def arithmetic(a, b, operator):
if operator == "+":
return a + b
elif operator == "-":
return a - b
elif operator == "*":
return a * b
elif operator == "/":
return a / b
elif operator == "//":
return a // b
elif operator == "%":
return a % b
def operation1():
print("现在进行 1.基本四则运算")
operator = input("请输入你要做的运算:+,-,*,/:")
a = int(input("输入一个数a:"))
b = int(input("输入一个数b:"))
print("a" + operator + "b = ", arithmetic(a, b, operator))
def operation2():
print("现在进行 2.取模运算")
x = int(input("请输入被除数:"))
y = int(input("请输入除数:"))
while y == 0:
print("输入错误!除数不能为0!")
y = int(input("请重新输入整数除数:"))
print(x % y)
def operation3():
print("现在进行 3.求阶乘")
n = int(input("请输入一个整数:"))
print(n, "! = ", math.factorial(n))
def operation4():
print("现在进行 4.解一元二次方程")
a = float(input("请输入a:"))
b = float(input("请输入b:"))
c = float(input("请输入c:"))
d = b * b - 4 * a * c
if d >= 0:
x1 = (-b + math.sqrt(d)) / (2 * a)
x2 = (-b - math.sqrt(d)) / (2 * a)
if d == 0:
print("X1 = X2 = " + str(x1))
else:
print("X1 = " + str(x1) + '\t' + "X2 = " + str(x2))
else:
x1 = str(-b / (2 * a)) + '+' + str(math.sqrt(-d) / (2 * a)) + 'i'
x2 = str(-b / (2 * a)) + '-' + str(math.sqrt(-d) / (2 * a)) + 'i'
print("X1 = " + x1 + '\t' + "X2 = " + x2)
flag = 1
while flag == 1:
print("欢迎使用计算器!")
print("-----------菜单------------")
print("1.基本四则运算")
print("2.取模运算")
print("3.求阶乘")
print("4.解一元二次方程")
print("如您想退出使用,请输入-1")
print("--------------------------")
t = int(input("请从中选择您想要实现的功能,输入对应的数字"))
if t == 1:
operation1()
elif t == 2:
operation2()
elif t == 3:
operation3()
elif t == 4:
operation4()
flag = int(input("继续请输入1,退出请输入-1"))
(三)实验过程中遇到的问题和解决过程
问题1:对于复杂运算不能写好
解决方案:通过参考一些代码自己理解去写
(四)其他(感悟、思考等)
python程序语句较为直观,编写起来相对容易,希望可以继续努力学习,写出可用的python代码!