【PTA】【Java】基本文法-浮動小数点数計算(next()とnextLine()の違い、BigDecimal解説)
9097 ワード
コンピュータ科学技術専門Javaプログラム設計練習集
7-1 jmu-Java-02基本構文-05-浮動小数点数計算(10点)2つの浮動小数点数を入力し、
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()の違い)説明参考リンク
2.Java BigDecimal説明参考リンク:
3.注意:PTAにJavaコードを提出するにはpublicクラス名をMainに変更する必要があります
コード1.この問題の直感的なやり方を見る(本コードは間違っていて、提出が通過しない.理由はJava BigDecimalの紹介を参照)
2.BigDecimalを使用した後のコード(正しく動作)
7-1 jmu-Java-02基本構文-05-浮動小数点数計算(10点)2つの浮動小数点数を入力し、
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);
}
}
}