1024 科學計數法 (20 分)
阿新 • • 發佈:2018-11-23
#include <iostream> #include <string> #include <cmath> using namespace std; int main() { string s1,s2; int sum=0; int flag; cin>>s1; for(int i=0;i<s1.length();i++){ if(s1[i]=='E'){ flag=i+1; break; } } int j=0; for(int i=s1.length()-1;i>flag;i--){ int temp=(int)s1[i]-48; sum+=temp*pow(10,j); j++; } if(s1[0]=='-'){ cout<<"-"; } if(s1[flag]=='-'){ s2[0]='0'; s2[1]='.'; int h=2; for(int i=0;i<sum-1;i++){ s2[h]='0'; h++; } for(int i=0;i<h;i++){ cout<<s2[i]; } for(int i=1;i<flag-1;i++){ if(i==2){ continue; } cout<<s1[i]; } }else{ for(int i=1;i<flag-1;i++){ if(i==2||s1[i]=='0'){ continue; } cout<<s1[i]; } int h=0; for(int i=0;i<sum-flag+5;i++){ s2[h]='0'; h++; } for(int i=0;i<h;i++){ cout<<s2[i]; } } return 0; }