java - 华氏度到摄氏度的转换

标签 java double

我正在尝试编写一个程序,将以华氏度表示的温度转换为摄氏度。用户输入华氏度值,程序打印出摄氏度值。用户应该输入 212 作为华氏度值,程序应该计算 100.0 作为摄氏度值,但当我想要获得 100.0 时,我得到 0.0 作为摄氏度值

我不确定问题出在哪里。操作顺序有可能吗?

将摄氏温度转换为华氏温度的公式为:C = 5/9 (F - 32)

import acm.program.*; 

public class FahrenheitToCelsius extends ConsoleProgram {

    public void run() {
        println("This program converts Fahrenheit to Celsius");
        int fah = readInt("Enter Fahrenheit temperature: ");
        double ft = 5 / 9;
        double cel = ft * (fah - 32);
        println("Celsius equivalent = " + cel);
    }
}

最佳答案

5/9 是整数除法,因此即使您将其分配给 double,它也会返回 0
尝试 5.0/9

关于java - 华氏度到摄氏度的转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13282301/

相关文章:

java - 获取 javax.crypto.IllegalBlockSizeException : Input length must be multiple of 16 when decrypting with padded cipher?

java - <c :out> tag which allows more formatting like BBcode or Wiki 的替代方案

java - 如何将 Activity 的布局背景宽度设置为 100%

java - Java 中使用 double 保持精度

java - 在java中相应地打印 double 值

c++ - 如何检查字符串是否可以在 C++ 中转换为 double ?

java - Eclipse 和 cronTriggered 作业调试

java - 在 Android 中使用相机 Activity

c++ - 将 double 转换并连接到字节数组

java - 在 jTable 中添加数据列