2

メインクラスから数値を取得して摂氏に変換することになっている華氏クラスがあります。変換部分以外はすべて機能します。数値を変換できるように呼び出すメソッドを作成しましたが、プログラムを実行すると、-0.0または0.0のいずれかが返されます(数値に関係なく)負の部分が正しいことはわかっていますが、必要なのは実際に変換された数を表示します。

なんらかのJavaプログラミングを行ってから1年が経ちましたが、まだ初心者です。Javaドキュメントを調べて復習し、ゲームに戻るための簡単なプログラムを作成しましたが、迷子になりました。これで。任意の入力が役立つと思います

ここにメインクラスがあります

public class test { 
  public static void main (String[] args) {
    double t = 100;

    Fahrenheit temp = new Fahrenheit(t);

    temp.convert();

  }
}

華氏クラス

public class Fahrenheit{

 private double tempF = 0;

 public Fahrenheit (double inputTemp){
    tempF = inputTemp;
 }

public double convert () {

    double c = 5/9*(tempF-32);

    System.out.println(c );
    return c;
 }
}
4

2 に答える 2

4
double c = 5/9*(tempF-32);

上記の行では、整数除算 - を実行しています。5 / 9その結果は0です。したがって、あなたは得0.0ました。

numeratorまたはのいずれかを変更できますdenominator: double value-

double c = 5.0 / 9 * (tempF-32);

または、最初に乗算を行うだけです: -

double c = 5 * (tempF-32) / 9 ;
于 2013-02-03T20:41:59.920 に答える
0
 double c = 5/9*(tempF-32);

上記の行では、整数除算 5 / 9 を実行しており、その結果は 0 です。

以下も使用できます。

double c = (double)5/9*(tempF-32);

また

double c = 5.0 / 9 * (tempF-32);
于 2013-02-03T20:58:17.270 に答える