20242319 实验二《Python程序设计》实验报告

20242319 2024-2025-2 《Python程序设计》实验二报告

课程:《Python程序设计》
班级: 2423
姓名: 万翔宇
学号:20242319
实验教师:王志强
实验日期:2025年3月26日
必修/选修: 公选课

一.实验内容

  • 设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善

  • 考核基本语法、判定语句、循环语句、逻辑运算等知识点

二. 实验过程及结果

1.设计一个完整的计算器程序,能完成多种不同的运算形式

(1)经过题目分析,程序具有如下功能:

  • 能进行复数和整数的运算,同时考虑到了复数运算和整数运算具有不同的运算符

  • 程序能进行加减乘除、取对数、取模、幂运算

  • 考虑到了用户进行除法运算时分母为0等特殊情况

(2)根据以上设计,代码设计如下:

import math

def Csum(num1,num2):
    return num1 + num2
def Csub(num1,num2):
    return num1 - num2
def Cmulti(num1,num2):
    return num1 * num2
def Cdiv(num1,num2):
    if num2 == 0:
        print("除数不能为0")
        return 0
    return num1 / num2
def Clog(num1,num2):
    return math.log(num2,num1)
def Crem(num1,num2):
    return num1 % num2
def Cind(num1,num2):
    return num1 ** num2

print("""▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
            程序名:计算机
           开发者:小万万元
       最后更新日期:2025/3/26
▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲""")
print("欢迎使用超级计算机!!!")
flag = True
while flag:
    cal = input("你要进行复数(1)还是整数(2)运算?:\n")
    if  cal == "1":
        num1 = complex(input("请输入一个数:"))
        num2 = complex(input("请输入另一个数:"))
        choice = input("请输入运算符(+、-、*、/):")
    else:
        num1 = int(input("请输入一个数:"))
        num2 = int(input("请输入另一个数:"))
        if num2 == 0:
            choice = input("请输入运算符(+、-、*、**(幂运算)):")
        elif num1 == 0:
            choice = input("请输入运算符(+、-、*、/、%(取模)、**(幂运算)):")
        else:
            choice = input("请输入运算符(+、-、*、/、log、%(取模)、**(幂运算)):")
    if choice == "+":
        print(num1,choice,num2,"=",Csum(num1,num2))
    elif choice == "-":
        print(num1,choice,num2,"=",Csub(num1,num2))
    elif choice == "*":
        print(num1,choice,num2,"=",Cmulti(num1,num2))
    elif choice == "/":
        print(num1,choice,num2,"=",Cdiv(num1,num2))
    elif choice == "log":
        print("log以",num1,"为底",num2,"的对数 = ",Clog(num1,num2))
    elif choice == "%":
        print(num1,choice,num2,"=",Crem(num1,num2))
    elif choice == "**":
        print(num1,"的",num2,"次方 =",Cind(num1,num2))
    conti = input("是否继续?(Y/N):")
    if conti == "Y" or conti == "y":
        flag = True
    else:
        flag = False
        print("哈哈哈,再见咯!!!")

(3)实验结果


(4)将代码上传至Gitee
Gitee仓库:https://gitee.com/wanxiangyu6/python


2.对基本语法、判定语句、循环语句、逻辑运算等知识点的熟悉与掌握

(1)基本语法练习​

创建 Python 文件,编写相应程序,涵盖整数、浮点数、字符串等多种数据类型。

同时熟悉print()函数,了解其在输出不同类型变量时的特性与使用规范。​

(2)判定语句实操​

编写计算器程序,使用if-elif-else语句对输入数据进行多条件判断。

通过此过程,掌握条件判断逻辑,学会运用判定语句嵌套,处理复杂的条件分支情况。​

(3)循环语句探索​

分别运用for循环与while循环,执行具有迭代特性的计算任务。

理解两种循环语句的执行机制,明确其适用场景,熟练掌握循环过程中的变量控制与更新方法。​

(4)逻辑运算融合​

将判定语句与逻辑运算符相结合,依据复杂的逻辑规则进行条件判断。

掌握运用逻辑运算符and、or、not等的使用方法。

三. 实验过程中遇到的问题和解决过程

  • 问题1:当计算器中用户输入num1或num2等于0时,计算器的就不能进行某些运算(如除法和取对数),但是在程序中依然会给用户提供此运算符选项

  • 问题1解决方案:在程序中写入if-elif-else语句,判断用户输入的数字可以使用哪种运算,并给出不同的提示,让用户可以正常地从选项中选择运算符进行运算

  • 问题2:某些运算符在计算机里的表达方式可能用户看不懂,产生误解

  • 问题2解决方案:将此类运算符加上注释,便于用户正确选择和使用

其他(感悟、思考等)

python真的是一门简单而又强大的语言,想要学好python,就得多多练习,多亲自上手操作。

Practice makes perfect!!!

😃

参考资料

posted @ 2025-03-27 22:47  小万万元  阅读(44)  评论(0)    收藏  举报