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

 

20182228李卓伦 2020-2021-2 《Python程序设计》实验二报告

课程:《Python程序设计》

班级: 1822
姓名: 李卓伦
学号:20182228
实验教师:王志强
实验日期:2021年5月7日
必修/选修: 公选课

1.实验内容


 

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

 

2. 实验过程及结果


 

首先本次实验是设计一个计算器,而本次我实现的主要是一步一步的计算方式,只能通过一个计算式的计算,依次的把数据算出来,之后整个输出字符串来观察运算结果,做的比较简单

# 文件名:计算器设计
# 作者:20182228李卓伦
# 时间:2021.5.7

def operation(a,b,operation):
    if operation == "+":
return a+b
elif operation == "-":
return a-b
elif operation == "*":
return a*b
elif operation == "/":
return a/b
elif operation == "*":
return a*b
elif operation == "%":
return a%b
elif operation == "**":
return a**b
elif operation == "//":
return a//b


flag = 1
char = []
while flag == 1 :
char = []
a = int(input("第一个数 "))
char.append(a)
opera = input("输入运算符 +,-,/,*,%,**,//")
char.append(opera)
b = int(input("第二个数"))
char.append(b)
if opera == "+" or opera == "-" or opera == "*" or opera =="/" or opera =="*" or opera == "%" or opera =="**" or opera =="//": #or 和 and
print("结果为",operation(a,b,opera))
c = operation(a,b,opera)
flag = int(input("结束 (0) 还是重新开始(1)还是继续 (2)"))
if flag == 2:
while flag == 2 :
opera2 = input("输入运算符 +,-,/,*,%,**,//")
char.append(opera2)
d = int(input("数"))
char.append(d)
if opera2 == "+" or opera2 == "-" or opera2 == "*" or opera2 == "/" or opera2 =="*" or opera2 == "%" or opera2 =="**" or opera2 =="//": # or 和 and
print("结果为", operation(c,d,opera2))
c = operation(c, d, opera2)
flag = int(input("结束 (0) 还是重新开始(1)还是继续 (2)"))
if flag == 0:
k = 0
while k<len(char):
print(char[k],end="")
k= k + 1
print(" = ",c)
print("结束")

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


 


- 问题1:没有办法让print输出在一行上,表达式看着不舒服
- 问题1解决方案:通过百度查询,print("",end="")

- 问题2:数组有简单的压入方式
- 问题2解决方案:通过百度查询,使用append()函数可以直接添加到最后一位

- 问题3:数组的初始化方式
- 问题3解决方案:通过百度查询,数组 = [ ]

 

感悟、思考


 

本次实验完成比较简单,而通过晚上对计算器的查询,发现他们都使用的可视化的方式,而其实通过看他们的代码也是可以看懂的,只不过是很多函数需要搜索不知道什么意思,但是他们所写的大部分是为了可视化而写,计算过程主要是使用return eval(text) python函数直接算出来了,感觉与本次实验所练习的东西并不相同,但是以后有机会还是可以学习他们搭建窗口计算器的方式的,看起来更加炫酷而且也更会实用一点。

 

posted on 2021-05-07 15:57  坑坑爽  阅读(106)  评论(0编辑  收藏  举报