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

#学号 2019-2020-2 《Python程序设计》实验一报告

课程:《Python程序设计》 班级: 1812

姓名: 周昱涵 学号:20181235

实验教师:王志强

实验日期:2020年4月11日

必修/选修: 公选课

## 1.实验内容

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

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

## 2. 实验过程及结果 该实验我制作的小型计算器,一共有5个功能,能够实现加减乘除和进制转换的要求,可以是小数。可以判断除数是否为0

实验结果截图如下:

 

源码:

def jiafa(a,b):
    return a+b
def chengfa(a,b):
    return a*b
def chufa(a,b):
    return  a/b
def s2e():
    e = [0,0,0,0,0,0,0,0]
    s = int(input("请输入一个十位数:"))
    for i in range(0,8,1):
        e[i] = int(s%2)
        s=s//2
    e.reverse()
    return e


def e2s():
    s=[0,0,0,0,0,0,0,0]
    a=0
    s=list(input("请输入一个二进制数:"))
    s.reverse()
    for i in range(0,len(s),1):
        if int(s[i]) == 1:
            a+=pow(2,i)
    return a


biaozi=1
while biaozi==1:
    biaoti="""***************欢迎来到20181235制作的计算器***************
*******************该计数器有以下功能********************
1.加法功能
2.减法功能
3.除法功能
4.乘法功能
5.十进制转二进制
6.二进制转十进制
"""
    print(biaoti)
    xz1=int(input("请输入您要使用的功能:"))
    if xz1 !=5 and xz1!=6:
        shu1=float(input("请输入第一个数:"))
        shu2=float(input("请输入第二个数:"))
    if xz1==1:
        jieguo=jiafa(shu1,shu2)
    elif xz1==2:
        shu2=shu2*-1
        jieguo=jiafa(shu1,shu2)
    elif xz1==3:
        if shu1==0:
            print("除数不能为0")
            shu2=float(input("请再次输入除数:"))
        jieguo=chufa(shu1,shu2)
    elif xz1==4:
        jieguo=chengfa(shu1,shu2)
    elif xz1==5:
        e=s2e()
    elif xz1==6:
        a=e2s()
    if xz1 !=5 and xz1!=6:
        print("计算结果为{}".format(jieguo))
    elif xz1==5:
        print("二进制数为:", e)
    elif xz1==6:
        print("十进制数是:", a)
    biaozi2=int(input("请问您是否需要再次使用输入1再次使用2停止使用:"))
    if biaozi2==2:
        break

 

## 3. 实验过程中遇到的问题和解决过程 - 问题1:if判断语句如何判断俩个条件 - 问题1解决方案:进行百度我百度搜索答案加上自己的调试,最终在俩个条件中间加and并非or就可以实现 - 问题2:用什么去存储二进制数 - 问题2解决方案:不断调试加以往经验,认为可以运用列表来存储二进制数 - ...

## 其他(感悟、思考等)

这次实验我认识到了我自己对基础语法的掌握程度不够,if语句的多个判断卡了我很久,经过百度和不断的调试我终于找到了解决方案,我认为python就需要多练习才能达到熟练的程度。

## 参考资料

[python3条件判断](https://www.runoob.com/python3/python3-conditional-statements.html

[判断多条件的方法](https://www.cnblogs.com/fingerling/p/8397695.html

 码云地址:https://gitee.com/python_programming/zhouyuhan20181235/blob/master/20181235%E5%91%A8%E6%98%B1%E6%B6%B520200411.py

posted @ 2020-04-11 10:32  20181235  阅读(301)  评论(0编辑  收藏  举报