本来想不用高精度过掉的,现在要被 python 的各种玄学问题逼疯了,求助玄关。
from decimal import *
import sys
getcontext().prec=200
la=0
lb=-1
while 1:
qaq=input()
w=len(qaq)
for i in range(w-1):
if qaq[i]==' ':
a=Decimal(qaq[:i])
b=Decimal(qaq[i+1:])
if la==a and lb==b:
exit(0)
c=str(a**b)
d=len(c)
for i in range(d-1,-1,-1):
if c[i]=='0' :
c=c[:i]
else:
break
d=len(c)
siz=0
for i in range(d-1,-1,-1):
if c[i]=='E':
siz=int(c[i+2:])
c=c[:i]
if siz>0:
print('.',end='')
for i in range(siz-1):
print(0,end='')
d=len(c)
for i in range(d):
if c[i]=='.':
c=c[:i]+c[i+1:]
break
print(c)
else:
print(c)
la=a
lb=b