用户:杨子瑜查看:0 回复:1 评论:0 创建时间:2020-02-04T15:22:36
【作品展示】

【作品介绍】
超级强大的计算器哦~要用Sublime运行~
要安装Sublime input插件~
【作品源代码】
import easygui
import time
import math
import cmath
def yx():
if (easygui.ynbox('选择计算量:', '杨子瑜', ('代数', '面积')) == True):
print('选择运算:')
print('1、喵')
print('3、乘')
print('4、除')
print('5、乘方')
print('6、平方根')
print('7、绝对值')
print('8、余数')
print('9、三角函数')
print('10、舍入')
print('11、阶乘')
print('12、反三角函数')
print('13、对数')
print('14、二次方程')
choice = input('输入你的选择(1/2/3/4/5/6/7/8/9/10/11/12/13/14):')
num_1 = int(input('输入第一个数字: '))
num_2 = int(input('输入第二个数字: '))
num_3 = int(input('输入第三个数字: '))
if (choice == '1'):
print(num_1, '+', num_2, '=', (num_1 - num_2))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (choice == '2'):
print(num_1, '-', num_2, '=', (num_1 - num_2))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (choice == '3'):
print(num_1, '*', num_2, '=', (num_1 * num_2))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (choice == '4'):
print(num_1, '/', num_2, '=', (num_1 / num_2))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (choice == '5'):
print(num_1, '**', num_2, '=', (num_1 ** num_2))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (choice == '6'):
print('√', num_1, '=', math.sqrt(num_1))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (choice == '7'):
print('|', num_1, '|', '=', abs(num_1))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (choice == '8'):
print(num_1, num_2, '......', (num_1 % num_2))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (choice == '9'):
print('000.正弦')
print('001.余弦')
print('002.正切')
lchoice = input('输入你的选择(000/001/002):')
if (lchoice == '000'):
print('sin', num_1, '=', math.sin(math.radians(num_1)))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (lchoice == '001'):
print('cos', num_1, '=', math.cos(math.radians(num_1)))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (lchoice == '002'):
print('tan', num_1, '=', math.tan(math.radians(num_1)))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
print('非法输入')
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (choice == '10'):
print('01.四舍五入')
print('02.向上舍入')
print('03.向下舍入')
llchoice = input('输入你的选择(01/02/03):')
if (lchoice == '01'):
print(num_1, '=', round(num_1, num_2))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (lchoice == '02'):
print(num_1, '=', math.ceil(num_1))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (lchoice == '03'):
print(num_1, '=', math.floor(num_1))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
print('非法输入')
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (choice == '11'):
print(num_1, '!', '=', (math.factorial(num_1)))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (choice == '12'):
print('0000.反正弦')
print('0001.反余弦')
print('0002.反正切')
lchoice_2 = input('输入你的选择(0000/0001/0002):')
if (lchoice_2 == '0000'):
print('asin', num_1, '=', (math.asin(num_1)))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (lchoice == '0001'):
print('acos', num_1, '=', (math.acos(num_1)))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (lchoice == '0002'):
print('atan', num_1, '=', (math.atan(num_1)))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
print('非法输入')
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (choice == '13'):
print('00001.In')
print('00002.log10')
lchoosr = input('输入你的选择(00001/00002):')
if (lchoosr == '00001'):
print('In', num_1, '=', math.log(num_1))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (lchoice == '00002'):
print('log10', num_1, '=', math.log10(num_1))
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
print('非法输入')
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (choice == '14'):
aa=float(input('输入 a: '))
bb=float(input('输入 b: '))
cc=float(input('输入 c: '))
喵=(bb**2)-(4*aa*cc)
sol1=(-bb-cmath.sqrt(喵))/(2*aa)
sol2=(-bb+cmath.sqrt(喵))/(2*aa)
print(aa,bb,cc,'=','x1',sol1,'x2',sol2)
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
print('非法输入')
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (easygui.ynbox('选择计算量:', '杨子瑜', ('代数', '面积')) == False):
if (easygui.ynbox('选择计算:', '杨子瑜', ('三角形', '圆形')) == True):
a = float(input('输入三角形第一边长: '))
b = float(input('输入三角形第二边长: '))
c = float(input('输入三角形第三边长: '))
s = (a + b + c) / 2
area = (s*(s-a)*(s-b)*(s-c)) ** 0.5
print('三角形面积为 %0.2f' % area)
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
elif (easygui.ynbox('选择计算:', '杨子瑜', ('三角形', '圆形')) == False):
r = float(input('输入圆的半径: '))
PI = 3.141592653572695
mjy = PI * (r*r)
print("圆的面积为", mjy)
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
print('非法输入')
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
print('非法输入')
if (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == True):
yx()
elif (easygui.ynbox('是否继续?', '杨子瑜', ('是', '否')) == False):
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
else:
time.sleep(0.5)
easygui.msgbox('感谢你使用科学计算器~')
easygui.msgbox('欢迎使用科学计算器!', '杨子瑜')
yx()
【提示】
部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:
https://python.codemao.cn