ADV-238 P0101

一个水分子的质量是3.0*10-23克,一夸脱水的质量是950克。写一个程序输入水的夸脱数n(0 <= n <= 1e10),然后输出水分子的总数。
输入
  109.43
输出
  3.465283E+027

#include<iostream>
#include<cmath>
using namespace std;
double eps=1e-9;
int main()
{
    double n;
    cin>>n;
    double ans=n*950/3.0;
    if(ans==0)
        cout<<"0.000000E+000"<<endl;
    else if(ans>=1)//eg:3.24
    {
        int k=log10(ans);
        printf("%.6lfE+%03d\n",ans/pow(10,k),23+k);
    }
    else//eg:0.124
    {
        int k=log10(ans)-1;//注意int型是向上赋值的
        printf("%.6lfE+%03d\n",ans/pow(10,k),23+k);
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_41242380/article/details/88682190