a021: 大數運算
參考 https://steam.oxxostudio.tw/category/python/zerojudge/a021.html
#a021: 大數運算
'''
我們都知道電腦擅長於各種數字的計算,可是,我們又知道
各種程式語言的變數又都有上限,比如整數只有232 或 264 個。
如果要計算更大的數字時又該如何計算呢?
就交給聰明的您來解決囉。
以 + 代表加法
以 - 代表減法
以 * 代表乘法
以 / 代表除法 (取商數)
輸入說明
輸入共一行,每一行包含兩個正整數的運算式,運算元及運算子之間以空格隔開
輸出說明
輸出兩個正整數的運算結果,總長度不超過 500 個位數
範例輸入 #1
2222222222222222222222222 + 1111111111111111111111111
範例輸出 #1
3333333333333333333333333
範例輸入 #3
2222222222222222222222222 * 1111111111111111111111111
範例輸出 #3
2469135802469135802469135308641975308641975308642
'''
print('#a021: 大數運算')
while True:
try:
s = input('兩個正整數的運算式,運算元及運算子之間以空格隔開--->').replace('/','//') # 轉換成除法求整數
output = int(eval(f'{s}')) # 使用 eval() 直接計算結果
print(output)
except:
break
>>> %Run a021.py
#a021: 大數運算
兩個正整數的運算式,運算元及運算子之間以空格隔開--->2222222222222222222222222 * 1111111111111111111111111
2469135802469135802469135308641975308641975308642
兩個正整數的運算式,運算元及運算子之間以空格隔開--->2222222222222222222222222 + 1111111111111111111111111
3333333333333333333333333
兩個正整數的運算式,運算元及運算子之間以空格隔開--->2222222222222222222222222 / 1111111111111111111111111
2
兩個正整數的運算式,運算元及運算子之間以空格隔開--->2222222222222222222222222 - 1111111111111111111111111
1111111111111111111111111
兩個正整數的運算式,運算元及運算子之間以空格隔開--->
>>>
沒有留言:
張貼留言