# 20244201邢家源 2024-2025-2 《Python程序设计》实验二报告
课程:《Python程序设计》
班级: 2442
姓名: 邢家源
学号:2024201
实验教师:王志强
实验日期:2024年4月6日
必修/选修:公选课4
1.实验内容
(1)设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。
(2)考核基本语法、判定语句、循环语句、逻辑运算等知识点。
2. 实验过程及结果
仿照课堂教学的程序进行编程
(1)编写计算函数
包含加减乘除运算,取模运算,幂运算,整除运算,log运算
if symbol == '+':
return a + b
elif symbol == '-':
return a - b
elif symbol == '*':
return a * b
elif symbol == '/':
return a / b if b != 0 else "除数不能为0!"
elif symbol == "//":
return a // b
elif symbol == '**':
return a ** b
elif symbol == '%':
return a % b if b != 0 else "后者不能为0!"
elif symbol == "logab":
return math.log(a, b)
else:
return "你输入的是啥?!"
(2)编写主程序
包含实数运算与复数运算的区分,利用while()支持多次运算
while o:
if input("要进行复数计算还是实数计算:") == "复数":
num_first = complex(input("请输入第一个数"))
num_second = complex(input("请输入第二个数"))
else:
num_first = int(input("请输入第一个数:"))
num_second = int(input("请输入第二个数:"))
symbol = input("请输入计算符号:+ - * / % // ** logab:")
if symbol == "logab":
print(f"log{num_first} {num_second}",cal(num_second,num_first))
else:
print(f"{num_first} {symbol} {num_second} =", cal(num_first, num_second))
continu = input("是否需要继续计算? Y or N:")
if continu == "N" or conti == "n":
break
(3)程序美化
输出个人信息以及版权信息
title = '''
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ $
$ Calculator Ver.1.0.0 $
$ copyright:Leo $
$ ALL RIGHTS RESERVED $
$ $
$ $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
'''
print(title)
完整程序
title = '''
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$ $
$ Calculator Ver.1.0.0 $
$ copyright:Leo $
$ ALL RIGHTS RESERVED $
$ $
$ $
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
'''
print(title)
def cal(a, b):
if symbol == '+':
return a + b
elif symbol == '-':
return a - b
elif symbol == '*':
return a * b
elif symbol == '/':
return a / b if b != 0 else "除数不能为0!"
elif symbol == "//":
return a // b
elif symbol == '**':
return a ** b
elif symbol == '%':
return a % b if b != 0 else "后者不能为0!"
elif symbol == "logab":
return math.log(a, b)
else:
return "你输入的是啥?!"
o = True
while o:
if input("要进行复数计算还是实数计算:") == "复数":
num_first = complex(input("请输入第一个数"))
num_second = complex(input("请输入第二个数"))
else:
num_first = int(input("请输入第一个数:"))
num_second = int(input("请输入第二个数:"))
symbol = input("请输入计算符号:+ - * / % // ** logab:")
if symbol == "logab":
print(f"log{num_first} {num_second}",cal(num_second,num_first))
else:
print(f"{num_first} {symbol} {num_second} =", cal(num_first, num_second))
continu = input("是否需要继续计算? Y or N:")
if continu == "N" or conti == "n":
break
3. 实验过程中遇到的问题和解决过程
暂无
其他(感悟、思考等)
在仿写课堂程序的过程中,我进行了函数编写的实践,掌握了新的输出方式,同时也对之前学过的知识进行了巩固。我发现编写Python程序并非易事,必须认真理解课堂上所教授的函数内容,并且在课后做好复习。未来,我会以更加严谨的态度投入到Python课程的学习中,深入钻研Python知识,以便在后续的实验中能够更加游刃有余。