# 20211121 2021-2022-2 《Python程序设计》实验二报告

## 1.实验内容

·设计并完成一个完整的应用程序，完成加减乘除模等运算，功能多多益善。
·考核基本语法、判定语句、循环语句、逻辑运算等知识点

## 2. 实验过程及结果

·2.1

·2.2

print("岭轻的计算器1代") op = input("请输入希望的运算(+,-,*,/,%,//)\n") a = int(input("请输入操作数a\n")) b = int(input("请输入操作数b\n")) if op == "+": result = a + b elif op == "-": result = a - b elif op == "*": result = a * b elif op == "/": result = a / b elif op == "%": result = a % b elif op == "//": result = a // b elif op == "0": flag = False else: print("输入有误，请再试一次\n") print(a, op, b, "=", result, "\n")
·2.3加入简单的循环语句

print("岭轻的计算器1代") flag = True while flag == True: op = input("请输入希望的运算(+,-,*,/,%,//)\n") if op == "0": break a = int(input("请输入操作数a\n")) b = int(input("请输入操作数b\n")) +result = 0 if op == "+": result = a + b elif op == "-": result = a - b elif op == "*": result = a * b elif op == "/": result = a / b elif op == "%": result = a % b elif op == "//": result = a // b elif op == "0": flag = False else: print("输入有误，请再试一次\n") continue print(a,op,b,"=", result,"\n")
·2.4再将计算器扩充至可以计算复数的计算器

print("岭轻的计算器1代") flag = True while flag == True: choice = input("请选择你想要的计算器类型：0为基础版、1为复数版\n") op = input("请输入希望的运算(+,-,*,/,%,//)\n") if op == "0": break if choice == "0": a = int(input("请输入操作数a\n")) b = int(input("请输入操作数b\n")) elif choice == "1": a = complex(input("请输入第一个复数\n")) b = complex(input("请输入第二个复数\n")) result = 0 if op == "+": result = a + b elif op == "-": result = a - b elif op == "*": result = a * b elif op == "/": result = a / b elif op == "%": result = a % b elif op == "//": result = a // b elif op == "0": flag = False else: print("输入有误，请再试一次\n") continue print(a,op,b,"=", result,"\n")
·2.5

·2.6

print("岭轻的计算器1代") flag = True while flag == True: choice = input("请选择你想要的计算器类型：0为基础版、1为复数版\n") op = input("请输入希望的运算(+,-,*,/,%,//)\n") if op == "0": break if choice == "0": a = int(input("请输入操作数a\n")) b = int(input("请输入操作数b\n")) elif choice == "1": a = complex(input("请输入第一个复数\n")) b = complex(input("请输入第二个复数\n")) result = 0 if op == "+": result = a + b elif op == "-": result = a - b elif op == "*": result = a * b elif op == "/": result = a / b elif op == "%": result = a % b elif op == "//": result = a // b elif op == "0": flag = False else: print("输入有误，请再试一次\n") continue print(a,op,b,"=", result,"\n")
·2.7最终调试完毕的计算器可以进行复数域以内的加减乘除模等运算

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

• 问题1：计算器基本代码编写不够流畅
• 问题1解决方案：跟随老师进行代码重写
• 问题2：采用的循环无法正常运行
• 问题2解决方案：将循环语句的代码列对齐，以正常运行
• 问题3：计算器未输出结果便进入下一次循环
• 问题3解决方案：将丢失的结果输出代码补全
• 问题4：将计算器类型选择代码放在循环外导致无法选择
• 问题4解决方案：将代码放入循环内

## 参考资料

posted @ 2022-04-02 17:21  梅花落南山  阅读(140)  评论(0编辑  收藏  举报