猫史档案馆


【Python作品分享】计算器【作业帖】

用户:你好2050_反防沉迷_反岛三出图形化你好2050_反防沉迷_反岛三出图形化查看:1 回复:1 评论:1 创建时间:2020-07-27T18:34:43


【作品展示】

center_image

 

【作品介绍】

这个计算机可以连续四则运算

 

【作品源代码】

import ybc_box
while True:
    startbox = ybc_box.choicebox('请选择你的算法', ['喵输入你的第一个加数')
        try:
            if '.' in num1:
                num1 = float(num1)
            else:
                num1 = int(num1)
        except ValueError:
            print('你输入的还不是数字哦')
        else:
            num2 = input('请输入你的第二个加数')
            try:
                if '.' in num2:
                    num2 = float(num2)
                else:
                    num2 = int(num2)
            except ValueError:
                print('你输入的还不是数字哦')
            else:
                num=num1+num2
                print(str(num1), '+', str(num2), '=',num)
    if startbox == '-':
        num1 = input('请输入你的被减数')
        try:
            if '.' in num1:
                num1 = float(num1)
            else:
                num1 = int(num1)
        except ValueError:
            print('你输入的还不是数字哦')
        else:
            num2 = input('请输入你的减数')
            try:
                if '.' in num2:
                    num2 = float(num2)
                else:
                    num2 = int(num2)
            except ValueError:
                print('你输入的还不是数字哦')
            else:
                num=num1-num2
                print(str(num1), '-', str(num2), '=',num)
    if startbox == '×':
        num1 = input('请输入你的第一个乘数')
        try:
            if '.' in num1:
                num1 = float(num1)
            else:
                num1 = int(num1)
        except ValueError:
            print('你输入的还不是数字哦')
        else:
            num2 = input('请输入你的第二个乘数')
            try:
                if '.' in num2:
                    num2 = float(num2)
                else:
                    num2 = int(num2)
            except ValueError:
                print('你输入的还不是数字哦')
            else:
                num=num1*num2
                print(str(num1), '×', str(num2), '=', num)
    if startbox == '÷':
        box = ybc_box.choicebox('请输入你的除法算法:', ['小数点', '有余数'])
        if box == '小数点':
            num1 = input('请输入你的被除数')
            try:
                if '.' in num1:
                    num1 = float(num1)
                else:
                    num1 = int(num1)
            except ValueError:
                print('你输入的还不是数字哦')
            else:
                num2 = input('请输入你的除数')
                try:
                    if '.' in num2:
                        num2 = float(num2)
                    else:
                        num2 = int(num2)
                except ValueError:
                    print('你输入的还不是数字哦')
                else:
                    num=num1/num2
                    print(str(num1), '÷', str(num2), '=',num)
        if box == '有余数':
            num1 = input('请输入你的被除数')
            try:
                if '.' in num1:
                    num1 = float(num1)
                else:
                    num1 = int(num1)
            except ValueError:
                print('你输入的还不是数字哦')
            else:
                num2 = input('请输入你的除数')
                try:
                    if '.' in num2:
                        num2 = float(num2)
                    else:
                        num2 = int(num2)
                except ValueError:
                    print('你输入的还不是数字哦')
                else:
                    num=int(num1/num2)
                    ys=num1%num2
                    print(str(num1), '÷', str(num2), '=', num, '......', ys)
    if startbox is None:
        break
    while True:
        res=ybc_box.buttonbox('是否继续输入?',['是','否,但是要算新的算式','否(直接退出)'])    
        if res=='是':
                if num==num1/num2 and ys==num1%num2:
                    nos=ybc_box.buttonbox('你的上一轮计算是除法,要取余数还是商进行计算?',['余数','商'])
                    if nos=='余数':
                        num=ys
                    else:
                        pass
                choice=ybc_box.choicebox('请你选择你的算法',['+','-','×','÷'])
                if choice=='+':
                    num3=input('请你输入加数')
                    try:
                        if '.' in num3:
                            num3=float(num3)
                        else:
                            num3=int(num3)
                    except ValueError:
                        print('你输入的还不是数字哦')
                    else:
                        print(str(num),'+',str(num3),'=',num+num3)
                        num=num+num3
                if choice=='-':
                    x=ybc_box.buttonbox('你要把旧的算式的得数当成被减数还是减数?',['被减数','减数'])
                    if x=='被减数':
                        num3=input('请输入减数')
                        try:
                            if '.'in num3:
                                num3=float(num3)
                            else:
                                num3=int(num3)
                        except ValueError:
                            print('你输入的还不是数字哦')
                        else:
                            print(str(num),'-',str(num3),'=',num-num3)
                            num=num-num3
                    if x=='减数':
                        num3=input('请输入被减数')
                        try:
                            if '.'in num3:
                                num3=float(num3)
                            else:
                                num3=int(num3)
                        except ValueError:
                            print('你输入的还不是数字哦')
                        else:
                            print(str(num3),'-',str(num),'=',num3-num)
                            num=num3-num
                if choice=='×':
                    num3=input('请你输入乘数')
                    try:
                        if '.' in num3:
                            num3=float(num3)
                        else:
                            num3=int(num3)
                    except ValueError:
                        print('你输入的还不是数字哦')
                    else:
                        print(str(num),'×',str(num3),'=',num*num3)
                        num=num*num3
                if choice=='÷':
                    s=ybc_box.buttonbox('你要计算余数还是小数点?',['余数','小数点'])
                    x=ybc_box.buttonbox('你要把旧的算式的得数当成被除数还是除数?',['被除数','除数'])
                    if s=='余数':
                        if x=='被除数':
                            num3=input('请输入减数')
                            try:
                                if '.'in num3:
                                    num3=float(num3)
                                else:
                                    num3=int(num3)
                            except ValueError:
                                print('你输入的还不是数字哦')
                            else:
                                print(str(num),'÷',str(num3),'=',num/num3,'......',num%num3)
                                num=num/num3
                                ys=num%num3
                        if x=='除数':
                            num3=input('请输入被除数')
                            try:
                                if '.'in num3:
                                    num3=float(num3)
                                else:
                                    num3=int(num3)
                            except ValueError:
                                print('你输入的还不是数字哦')
                            else:
                                print(str(num3),'÷',str(num),'=',num3/num,'......',num3%num)
                                num=num3/num
                                ys=num3%num
                        if x=='被除数':
                            num3=input('请输入减数')
                            try:
                                if '.'in num3:
                                    num3=float(num3)
                                else:
                                    num3=int(num3)
                            except ValueError:
                                print('你输入的还不是数字哦')
                            else:
                                print(str(num),'÷',str(num3),'=',num/num3)
                                num=num/num3
                        if x=='除数':
                            num3=input('请输入被除数')
                            try:
                                if '.'in num3:
                                    num3=float(num3)
                                else:
                                    num3=int(num3)
                            except ValueError:
                                print('你输入的还不是数字哦')
                            else:
                                print(str(num3),'÷',str(num),'=',num3/num)
                                num=num3/num
        else:
            break
    if res=='否(直接退出)' or res==None:
        break

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
FATAL_ERRORFATAL_ERROR

ybc?猿编程???

点赞0


评论