我的编程实验室标准输出错误

时间:2015-10-02 23:46:15

标签: java output system

我一直在研究这个代码,一切似乎都在工作,但是当MyProgrammingLab实际运行我的代码时,它表示我的标准输出存在问题。

以下是问题:

写一个温度等级,它将保持华氏温度,并提供以华氏温度,摄氏温度和开尔文温度来获取温度的方法。这堂课应该有 以下字段:

•ftemp:持有华氏温度的双倍。

该课程应具备以下方法:

•构造函数:构造函数接受华氏温度(作为double)并将其存储在ftemp字段中。 •setFahrenheit:设置的华氏温度方法接受华氏温度(作为双精度)并将其存储在ftemp字段中。 •getFahrenheit:将ftemp字段的值返回为华氏温度(无需转换) •getCelsius:返回转换为Celsius的ftemp字段的值。使用以下公式转换为摄氏度: 摄氏度=(5/9)*(华氏度--32) •getKelvin:返回转换为开尔文的ftemp字段的值。使用以下公式转换为开尔文: 开尔文=((5/9)*(华氏温度-32))+ 273

通过编写一个要求用户输入的单独程序来演示Temperature类 华氏温度。该程序应该创建一个Temperature类的实例, 使用用户输入的值传递给构造函数。那么该计划应该 调用对象的方法以下列格式显示温度(例如, 如果华氏温度为-40℃:

华氏温度为-40.0 摄氏温度为-40.0 以开尔文为单位的温度为233.0℃

现在这是我的代码:



import java.io.*;
import java.util.Scanner;


public class Temperature
{
	private double ftemp;
	
	public Temperature(double ftemp)
	{
		this.ftemp = ftemp;
	}
	public void setFahrenheit(double ftemp)
	{
		this.ftemp = ftemp;
	}
	public double getFahrenheit()
	{
		return ftemp;
	}
	public double getCelsius()
	{
		return (5.0/9.0) * (ftemp - 32.0);
	}
	public double getKelvin()
	{
		return (5.0/9.0) * ((ftemp - 32.0) + 273.0);
	}
}


class myTemperature
{
    public static void main(String[] args)
	{
		
		Scanner keyboard = new Scanner(System.in);
		double input;
		
		System.out.print("Enter a Fahrenheit temperature:");
		
		input = keyboard.nextDouble();
		
		Temperature temp1 = new Temperature(input);
		
		System.out.println("The temperature in Fahrenheit is " + temp1.getFahrenheit());
		System.out.println("The temperature in Celsius is " + temp1.getCelsius());
		System.out.println("The temperature in Kelvin is " + temp1.getKelvin());
	}
}




这些是它给我的错误:

http://imgur.com/gallery/0D2RkW7/new

我没有足够的代表发布图片,抱歉!

我真的不明白问题是什么,任何帮助都会非常感激。

1 个答案:

答案 0 :(得分:1)

public double getKelvin()
{
    return ((5.0/9.0) * (ftemp - 32.0)) + 273.0;
}

请注意()

中的更改