20231326 2023-2024-2 《Python程序设计》实验2

20231326 2023-2024-2 《Python程序设计》实验2


课程:《Python程序设计》
班级: 2313
姓名: 王荣盛
学号:20231326
实验教师:王志强
实验日期:2024年3月27日
必修/选修: 公选课

1.实验内容

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

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

2. 实验过程及结果

源代码:

import math

print("         Welcome to use my Caculator\n")
print("         Author: Gisli\n")
print("         Email: gisliwong@outlook.com\n")
print("         Copyright © 2024 Gisli")
print("----------------------------------------------")


def add(x, y):
    return x + y


def sub(x, y):
    return x + y


def mult(x, y):
    return x * y


def div(x, y):
    return x / y


def mod(x, y):
    return x % y


def power(x, y):
    return x ** y


def square(x):
    return math.sqrt(x)




while True:
    a = eval(input("Enter num a:"))
    b = eval(input("Enter num b:"))

    operation = input("Enter operation(+ - * / % ^):")
    if operation == "+":
        print("a+b = ", add(a, b))
    elif operation == "-":
        print("a-b = ", sub(a, b))
    elif operation == "*":
        print("a*b = ", mult(a, b))
    elif operation == "/":
        if b != 0:
            print("a/b = ", div(a, b))
        else:
            print("ZeroDivisionError: b is zero\n")
    elif operation == "%":
        print("a%b = ", mod(a, b))
    elif operation == "^":
        print("a^b = ", power(a, b))
    else:
        print("Invalid Operation\n")

    q = input("Enter W to exit:")
    if q == "W" or q == "w":
        break

结果:

D:\Projects\python\my-program\Python\.venv\Scripts\python.exe D:\Projects\python\my-program\Python\Caculator.py 
         Welcome to use my Caculator

         Author: Gisli

         Email: gisliwong@outlook.com

         Copyright © 2024 Gisli
----------------------------------------------
Enter num a:23
Enter num b:4
Enter operation(+ - * / % ^):w
Invalid Operation

Enter W to exit:e
Enter num a:23
Enter num b:4
Enter operation(+ - * / % ^):+
a+b =  27
Enter W to exit:
Enter num a:56
Enter num b:4
Enter operation(+ - * / % ^):/
a/b =  14.0
Enter W to exit:
Enter num a:567
Enter num b:4
Enter operation(+ - * / % ^):%
a%b =  3
Enter W to exit:
Enter num a:5
Enter num b:15
Enter operation(+ - * / % ^):^
a^b =  30517578125
Enter W to exit:w

进程已结束,退出代码为 0

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

  • 问题1:控制退出的循环写法错误,本想使用flag控制退出,但是总是没写对
  • 问题1解决方案:改用while True
  • 问题2:设定输入W或w退出,实际上按其他建也会退出
  • 问题2解决方案:or语法使用不恰当,修改就对了
  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值