0

私はJavaを始めたばかりなので、たくさんの間違いを犯しています。それらの多くを解決して理解しましたが、今は入力に問題があります。入力には InputBufferedReader と Scanner の 2 種類があることがわかりましたが、前者の方が優れていると読んだので (理由はまだわかりません)、それを使用しています。

私が得るエラーは次のとおりです。 IO例外

コード

import java.io.InputStreamReader;
import java.io.BufferedReader;

public class Cerchio{

  private float r;
  private float area;
  private float cfr;
  final double pi = 3.14;


  public static void main(String[] args){
    System.out.println("Programma cerchio\n");

    Cerchio cerchio = new Cerchio(); 
    cerchio.getR();
    cerchio.c_cfr();
    cerchio.c_area();
    System.out.println("La circonferenza è: " + cerchio.cfr);
    System.out.println("L area è: " + cerchio.area);
  }

  private float getR(){
    InputStreamReader input = new InputStreamReader(System.in);
    BufferedReader num = new BufferedReader(input);

    try{
      String sr = num.readLine();
      r = Float.valueOf(sr).floatValue();
    } catch(NumberFormatException nfe){
        System.out.println("Incorrect!!!");
      }
    return r;
  }

  private float c_cfr(){
    cfr =(float)(2 * pi * r); //casting
    return cfr;
  }

  private float c_area(){
    area = (float)(pi * (r*r));
    return area;
 }

}

おそらく他にもミススタックがあると思いますが、これをどうやって乗り越えればいいのかわかりません。

どうしたの?ありがとうございました!

PS: これを読みましたが、なぜ、どのように機能するのか理解できませんでした

4

3 に答える 3