一个水分子的质量是3.0*10-23克,一夸脱水的质量是950克。写一个程序输入水的夸脱数n(0 <= n <= 1e10),然后输出水分子的总数。
输入
109.43
输出
3.465283E+027
写这道题时小编头大了,怎么计算这么长的数值呢,可是查看了double的取值范围一看,呵呵,笑了
我们可以直接计算啊,然后以科学技术法输出就行了啊!!!
仔细一看不行,因为题意中科学计数法的指数不足3位要补0,故采用以下方法
package Main;
import java.util.*;
public class Main {
public static void main(String []args) {
Scanner input=new Scanner(System.in);
double a=input.nextDouble();
double c=a*950/(3.0e-23);
int b=0;
while(c>=10)
{c/=10;
b++;
}
if(b<10)
System.out.printf("%6fE+00%d",c,b);
else if(b<100)
System.out.printf("%6fE+0%d",c,b);
else
System.out.printf("%6fE+%d",c,b);
}
}
在这里插入代码片