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相关知识,让以后的实验更加得心应手。

posted @ 2025-04-01 20:46  hcxhkkx  阅读(62)  评论(0)    收藏  举报