题解 | 特殊的科学计数法

特殊的科学计数法

https://www.nowcoder.com/practice/ca0962879d3b40d8bb598fb9a905ac7a



import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner=new Scanner(System.in);
		String string=scanner.next();
		int c=string.length()-1;
		int len=string.length();
		int d1=string.charAt(0)-'0';
		int d2=string.charAt(1)-'0';
		int d3=string.charAt(2)-'0';
		if(d3<5) {
			System.out.println(d1+"."+d2+"*10^"+c);
		}else if(d3>=5) {
			if(d2<9) {
				System.out.println(d1+"."+(d2+1)+"*10^"+c);
			}else {
				d2=0;
				d1++;
				if(d1<10) {
					System.out.println(d1+"."+(d2)+"*10^"+c);
				}else {
					c++;
					System.out.println("1.0*10^"+c);
				}
				System.out.println("");
			}
		}
		
		

	}

}

根据前三位的情况,来决定最后的数字前面的情况,要注意995这种特殊情况,它会使得最后指数++,并且开头为1.0

全部评论

相关推荐

04-03 15:12
已编辑
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务