|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 Minecraft程序猿 于 2020-12-23 12:00 编辑
最近化学科目经常计算化学式中元素质量分数,相对质量,元素质量之比等,几乎全是小数,手算算到要吐,所以用Python写了一个求解的程序
p.s.最初是手写到纸上的,后来转到了主机上
代码修改后未经测试,不一定稳定运行不报错,应该是正常的
- from os import system
- system("title 质量分数和元素质量求解 && color a")
- print("--------质量分数和元素质量求解--------")
- key = input("输入关键元素相对质量:")
- num = input("输入关键元素数量:")
- try:
- key = int(key)
- num = int(num)
- except ValueError:
- print("输入有误")
- except:
- print("出现未知错误")
- else:
- a = input("是否启用质量计算(1/0):")
- if a == '1':
- t = input("输入物质总量:")
- b = input("输入单位:")
- try:
- t = int(t)
- except ValueError:
- print("输入有误")
- except:
- print("出现未知错误")
- else:
- pass
- else:
- t = 1
- b = ''
- def functionx(*others, keyx):
- a = 0
- for each in others:
- a += each
- a += keyx
- b = (t * keyx) / a
- return b
- listx = []
- listin = '0'
- while listin != "":
- listin = input("输入非关键元素相对质量:")
- listnum = input("该元素在化合物中的原子数目:")
- try:
- listin = int(listin)
- listnum = int(listnum)
- except:
- if listin == "":
- listin = 0
- listnum = 0
- break
- else:
- print("输入有误")
- else:
- listx.append(listin * listnum)
- print("计算结果:", functionx(*list, keyx=key*num), b, "\n结果仅供参考")
- system("pause")
复制代码 |
|