0

華氏を摂氏に変換しようとしています。摂氏から華氏に変換すると正しい結果が得られますが、華氏から摂氏に変換しようとすると間違った答えが返されます。たとえば、華氏 98.7 と入力すると、37 度ではなく 81 度になります。私のコード

if (RadioFah.Checked) 
{
  {
    double F = 0;    

    F = (double.Parse(textBox1.Text) - 32 * 5/9);

    textBox2.Text = F.ToString() + " °C ";

    //String s = String.Format( "{0:0,00}", F );
    //F = Convert.ToDouble(textBox1.Text) -32 * (5/9);
    //TxtBoxCelsius.Text = s + " °C ";
  }
}
else if (RadioCelsius.Checked)
{
  //if (double.TryParse(textBox2.Text.Text, out C))
  {
    double C = 0;    

    C = (double.Parse(textBox2.Text) * (9.0 / 5.0) + 32);

    textBox1.Text = C.ToString("N1") + " °F ";
  }
}
4

3 に答える 3

3

ブラケットがありません

F = ((double.Parse(textBox1.Text) - 32) * 5/9)
于 2013-11-06T02:53:40.290 に答える
1

あなたの方程式は正しくありません。代わりにベローを試してください。

Celsius = (Fahrenheit  -  32)  x  5/9 

かっこで囲んでいますFahrenheit - 32

于 2013-11-06T02:52:50.460 に答える
0

これは、値を正しく取得するために使用できる簡単なヘルパー メソッドです。

static double ConvertToFahrenheit(double value)
{
    return ((value * 9) / 5) + 32;
}

static double ConvertToCelsius(double value)
{
    return ((value - 32) * 5) / 9;
}
于 2013-11-06T02:57:38.733 に答える