题目大意
给出一个科学计数法表示的数,现在要求将它转换为正常的数字表示法,并保留所有的有效数字
输入
每组包含一个测试用例,在一行中给出科学计数法表示的数。这个数的长度大小不超过9999字节,且指数的绝对值不超过9999
输出
对每个测试用例输出对应的正常数字表示法所表示的数字,并保留所有有效数字
样例输入
+1.23400E-03
-1.2E+10
样例输出
0.00123400
-12000000000
解析
先找到E
的下标,然后根据E
两边的数字分别进行转换即可
# -*- coding: utf-8 -*-
# @Time : 2019/7/1 9:24
# @Author : ValarMorghulis
# @File : 1073.py
def solve():
s = input()
posE = s.find('E')
if s[0] == '-':
print('-', end='')
cnt = int(s[posE + 2:])
if s[posE + 1] == '-':
print('0.', end='')
print('0' * (cnt - 1), end='')
for i in range(posE):
if '0' <= s[i] <= '9':
print(s[i], end='')
print('')
else:
cnt += 1
for i in range(posE):
if cnt == 0:
print('.', end='')
if '0' <= s[i] <= '9':
print(s[i], end='')
cnt -= 1
print('0' * cnt)
if __name__ == "__main__":
solve()