计算机科学技术专业Java程序设计练习集
7-1 jmu-Java-02基本语法-05-浮点数计算 (10 分) 输入两个浮点数,
如 69.1 0.02 输出其和与乘积
输入样例:
69.1
0.02
1.99
2.01
输出样例:
69.12
1.382
4.00
3.9999作者: 郑如滨 单位: 集美大学
时间限制: 400 ms 内存限制: 64 MB 代码长度限制: 16 KB
知识点
1.Scanner 类(next() 与 nextLine() 区别)讲解参考链接
next():
1、一定要读取到有效字符后才可以结束输入。
2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符,next() 不能得到带有空格的字符串。
nextLine():
1、以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。
2、可以获得空白。
2.Java BigDecimal讲解参考链接:
// BigDecimal类主要使用步骤
1.插入类 import java.math.BigDecimal;
2.构造对象 BigDecimal a1=new BigDecimal(a);//这里a的类型建议优先使用String
3.相关函数使用:b1.multiply(a1);
4.输出结果:System.out.println(b1.multiply(a1));
3.提醒:在PTA上提交Java代码应该把public类名改成Main
代码
1.看到这题直观的做法(本代码是错的,提交不通过,原因见Java BigDecimal介绍)
import java.util.Scanner;
public class Practice1{//提交时记得修改类名为Main
public static void main(String args[]){
Scanner reader=new Scanner(System.in);
double x=reader.nextFloat();
double y=reader.nextFloat();
System.out.println(x+y);
System.out.println(x*y);
//System.out.printf("%lf",x+y);
//System.out.printf("%lf",x*y);
}
}
2.使用BigDecimal的后的代码(运行正确)
import java.math.BigDecimal;
import java.util.Scanner;
public class P1
{
public static void main(String args[])
{
Scanner reader=new Scanner(System.in);
while(reader.hasNext())
{
String a=reader.nextLine();
String b=reader.nextLine();
BigDecimal a1=new BigDecimal(a);
BigDecimal b1=new BigDecimal(b);
System.out.println(b1.add(a1));
System.out.println(b1.multiply(a1));
///System.out.println(a1+b1);
///System.out.println(a1*b1);
}
}
}