我是初学者程序员

我有一个作业是
编写一个程序,使用以下公式将华氏度转换为摄氏:
摄氏=(5/9)(华氏-32)

问题是无论我在输入中提供什么值,我总是得到相同的值-17.78。

这是我的代码!

package com.temperatureconversion;

import java.util.Scanner;


public class TemperatureConversion {

public static void main(String[] args) {
    Scanner input = new Scanner(System.in);

    double F = 0.0;    // Temperature in Fahrenheit
    double C = 0.0;          // Temperature in celsius
    C = 5.0 /9 * (F - 32);

    System.out.print("Enter temperature in fahrenheit: ");
    F = input.nextDouble();

    System.out.printf("The celsius value of %10.2f is %2.2f", F, C);




}

}


上面的代码有什么问题?

最佳答案

您的F值始终是相同的0.0,因为您在计算后会要求提供它的值,因此您需要在计算之前移动获取的F值。

double F = 0.0;    // Temperature in Fahrenheit
double C = 0.0;          // Temperature in celsius

//ASK for value.
System.out.print("Enter temperature in fahrenheit: ");
F = input.nextDouble();

// Do your calculations.
C = 5.0 /9 * (F - 32);

关于java - Java错误输出(华氏到摄氏度转换程序)!,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22425008/

10-14 13:21