20244202 实验二 《Python程序设计》实验报告
学号 20244202 《Python程序设计》实验二报告
课程:《Python程序设计》
班级: 2442
姓名: 董凯瑞
学号:20244202
实验教师:王志强
实验日期:2025年4月1日
必修/选修: 公选课
1.实验内容
(1)设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。
(2)考核基本语法、判定语句、循环语句、逻辑运算等知识点
2. 实验过程及结果
仿照课堂教学的程序进行编程
(1)编写计算函数
包含加减乘除运算,取模运算,幂运算,整除运算,log运算
点击查看代码
def cal(a,b):
if symbol == "+":
return a + b
if symbol == "-":
return a - b
if symbol == "*":
return a * b
if symbol == "/":
return a / b
if symbol == "%":
return a % b
if symbol == "//":
return a // b
if symbol == "**":
return a ** b
if symbol == "logab":
return math.log(a,b)
(2)编写主程序
包含实数运算与复数运算的区分,利用while()支持多次运算
点击查看代码
t = True
while t:
if input("请问您要进行复数计算还是实数计算呢\n") == "复数":
num_first = complex(input("请输入第一个数"))
num_second = complex(input("请输入第二个数"))
else:
num_first = int(input("请输入第一个数"))
num_second = int(input("请输入第二个数"))
symbol = input("请输入操作:+ - * / % // ** logab\n")
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))
conti = input("是否需要继续计算? Y or N")
if conti == "N" or conti == "n":
break
(3)程序美化
输出个人信息以及座右铭
点击查看代码
print('''
*************************
** 计算器V1.0 **
** 学号:20244202 **
** 姓名:董凯瑞 **
** 座右铭:无限进步 **
*************************
''')
完成程序的编写
import math
def cal(a,b):
if symbol == "+":
return a + b
if symbol == "-":
return a - b
if symbol == "*":
return a * b
if symbol == "/":
return a / b
if symbol == "%":
return a % b
if symbol == "//":
return a // b
if symbol == "**":
return a ** b
if symbol == "logab":
return math.log(a,b)
print('''
*************************
** 计算器V1.0 **
** 学号:20244202 **
** 姓名:董凯瑞 **
** 座右铭:无限进步 **
*************************
''')
t = True
while t:
if input("请问您要进行复数计算还是实数计算呢\n") == "复数":
num_first = complex(input("请输入第一个数"))
num_second = complex(input("请输入第二个数"))
else:
num_first = int(input("请输入第一个数"))
num_second = int(input("请输入第二个数"))
symbol = input("请输入操作:+ - * / % // ** logab\n")
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))
conti = input("是否需要继续计算? Y or N")
if conti == "N" or conti == "n":
break
程序运行情况展示。

3. 实验过程中遇到的问题和解决过程
无问题
其他(感悟、思考等)
通过对课堂程序的仿写,我尝试了函数编写,学习了输出的新形式,并巩固了先前所学。我意识到Python程序的编写并不容易,需要认真加下课堂教授的函数,并在课下复习巩固。日后,我要以更认真的态度参与Python课堂,深入学习Python相关知识,让以后的实验更加得心应手。
浙公网安备 33010602011771号