1024 科學計數法

2022-09-01 20:24:15 字數 1130 閱讀 3562

科學計數法是科學家用來表示很大或很小的數字的一種方便的方法,其滿足正規表示式 [+-][1-9].[0-9]+e[+-][0-9]+,即數字的整數部分只有 1 位,小數部分至少有 1 位,該數字及其指數部分的正負號即使對正數也必定明確給出。

現以科學計數法的格式給出實數 a,請編寫程式按普通數字表示法輸出 a,並保證所有有效位都被保留。

輸入格式

每個輸入包含 1 個測試用例,即乙個以科學計數法表示的實數 a。該數字的儲存長度不超過 9999 位元組,且其指數的絕對值不超過 9999。

輸出格式

對每個測試用例,在一行中按普通數字表示法輸出 a,並保證所有有效位都被保留,包括末尾的 0。

輸入樣例:

+1.23400e-03
輸出樣例:

0.00123400
輸入樣例:

-1.2e+10
輸出樣例:

-12000000000
蠻煩的一題,思路就是處理字串,先獲得指數大小,根據正負進行下一步

如果指數a>0,把小數點後面a位平移到前面來,並在後邊加上小數點

如果a<0,則一定先輸出"0.",後續再判斷要補幾個0,然後將原本字串e前順序輸出即可,注意跳過小數點

#include#include#includeusing namespace std;

int main();

cin >> s;

int loc = s.find('e');

int a = atoi(s.c_str()+loc + 1);//指數大小

for(i = 0 ; i = 0)

}str[i] = '.';

if(a >= len - 3) else

for(i = 0 ; i < l ; i ++)

}else

for(i = 1 ; i < len; i ++)

}}

1024 科學計數法

科學計數法是科學家用來表示很大或很小的數字的一種方便的方法,其滿足正規表示式 1 9 0 9 e 0 9 即數字的整數部分只有1位,小數部分至少有1位,該數字及其指數部分的正負號即使對正數也必定明確給出。現以科學計數法的格式給出實數a,請編寫程式按普通數字表示法輸出a,並保證所有有效位都被保留。輸入...

1024 科學計數法

科學計數法是科學家用來表示很大或很小的數字的一種方便的方法,其滿足正規表示式 1 9 0 9 e 0 9 即數字的整數部分只有1位,小數部分至少有1位,該數字及其指數部分的正負號即使對正數也必定明確給出。現以科學計數法的格式給出實數a,請編寫程式按普通數字表示法輸出a,並保證所有有效位都被保留。輸入...

1024 科學計數法

科學計數法是科學家用來表示很大或很小的數字的一種方便的方法,其滿足正規表示式 1 9 0 9 e 0 9 即數字的整數部分只有1位,小數部分至少有1位,該數字及其指數部分的正負號即使對正數也必定明確給出。現以科學計數法的格式給出實數a,請編寫程式按普通數字表示法輸出a,並保證所有有效位都被保留。輸入...