java an introduction to problem solving and programming There appears to be a pr
ID: 3653931 • Letter: J
Question
java an introduction to problem solving and programming
There appears to be a problem with the last 2 lines of code:
import java.util.*;
public class Temperature
{
private String scale;
private float temp;
/***************************************************************/
public Temperature()
{
scale = "Celcius";
temp = 0;
}
public Temperature(float newTemp)
{
if (scale.equalsIgnoreCase("C"))
{
float temp = (5 * (newTemp - 32) / 9);
newTemp = temp;
}
else if (scale.equalsIgnoreCase("F"))
{
float temp = (9 * (newTemp / 5 ) + 32 );
newTemp = temp;
}
else
System.out.println ("You entered an incorrect temperature scale. Converion can not be done. Try again.");
}
public Temperature(String newScale)
{
if (scale.equalsIgnoreCase("C"))
newScale = "Celcius";
else if (scale.equalsIgnoreCase("F"))
newScale = "Fahrenheit";
else
System.out.println ("You entered an incorrect temperature scale. Try again.");
}
public Temperature(String newScale, float newTemp)
{
if (scale.equalsIgnoreCase("C"))
{
newScale = "Celcius";
float temp = (5 * (newTemp - 32) / 9);
newTemp = temp;
}
else if (scale.equalsIgnoreCase("F"))
{
newScale = "Fahrenheit";
float temp = (9 * (newTemp / 5 ) + 32 );
newTemp = temp;
}
else
System.out.println ("Oops, something went wrong. Try again.");
}
/***************************************************************/
public String toString ()
{
return ("The temperature scale you entered is: " + scale + " "
+ "The number of degrees you entered is: " + temp + " ");
}
/***************************************************************/
public void readInput()
{
Scanner keyboard = new Scanner(System.in);
System.out.println("What is the degree system which you are using? Enter the first letter.");
scale = keyboard.nextLine();
String newScale = scale;
System.out.println("What is the number of degrees?");
temp = keyboard.nextFloat();
float newTemp = temp;
}
/***************************************************************/
/***************************************************************/
public void writeOutput()
{
System.out.println("Temperature scale that you are using: " + scale + " ");
System.out.println("Number of degrees: " + temp + " ");
}
/***************************************************************/
/***************************************************************/
public void setTemp(float newTemp)
{
temp = newTemp;
}
public void setScale(String newScale)
{
scale = newScale;
}
public void setTempAndScale(String newScale, float newTemp)
{
temp = newTemp;
scale = newScale;
}
/***************************************************************/
/***************************************************************/
public String getScale( )
{
return scale;
}
public float getTemp( )
{
return temp;
}
public String getTempAndScale( )
{
return (temp + scale);
}
/***************************************************************/
/***************************************************************/
public static void main(String[] args)
{
Temperature trialOne = new Temperature();
Scanner keyboard = new Scanner(System.in);
trialOne.readInput();
trialOne.writeOutput();
System.out.println("Set Scale is: "+ scale);
System.out.println("Set Temp is: "+ temp);
}
/***************************************************************/
/***************************************************************/
}
Explanation / Answer
please rate - thanks
I can't do the rounding, I don't have that code.
import java.util.Scanner;
public class TemperatureTest
{
public static void main(String[] args)
{Temperature b=new Temperature();
Temperature a=new Temperature((float)0.,'C');
Temperature c=new Temperature((float)32.,'F');
Temperature d=new Temperature('F');
Temperature e=new Temperature((float)80.);
if(c.equals(a))
System.out.println(c.getCelsius()+"="+a.getCelsius());
else
System.out.println(c.getCelsius()+"!="+a.getCelsius());
if(c.less(a))
System.out.println(c.getCelsius()+"<"+a.getCelsius());
else
System.out.println(c.getCelsius()+">="+a.getCelsius());
if(c.greater(a))
System.out.println(c.getCelsius()+">"+a.getCelsius());
else
System.out.println(c.getCelsius()+"<="+a.getCelsius());
c.setBoth((float)-40,'C');
a.setBoth((float)-40,'F');
if(c.equals(a))
System.out.println(c.getCelsius()+"="+a.getCelsius());
else
System.out.println(c.getCelsius()+"!="+a.getCelsius());
if(c.less(a))
System.out.println(c.getCelsius()+"<"+a.getCelsius());
else
System.out.println(c.getCelsius()+">="+a.getCelsius());
if(c.greater(a))
System.out.println(c.getCelsius()+">"+a.getCelsius());
else
System.out.println(c.getCelsius()+"<="+a.getCelsius());
c.setBoth(100,'C');
a.setBoth(212,'F');
if(c.equals(a))
System.out.println(c.getCelsius()+"="+a.getCelsius());
else
System.out.println(c.getCelsius()+"!="+a.getCelsius());
if(c.less(a))
System.out.println(c.getCelsius()+"<"+a.getCelsius());
else
System.out.println(c.getCelsius()+">="+a.getCelsius());
if(c.greater(a))
System.out.println(c.getCelsius()+">"+a.getCelsius());
else
System.out.println(c.getCelsius()+"<="+a.getCelsius());
}
}
-----------------------------------------
class Temperature
{
private float temp;
private char scale;
public Temperature()
{temp=0;
scale='C';
}
public Temperature(float t,char c)
{temp=t;
scale=c ;
}
public Temperature(float t)
{temp=t;
scale='C';
}
public Temperature(char c)
{temp=0;
scale=c ;
}
float getCelsius()
{if(scale=='C')
return temp;
return (float)(temp-32.)*(float)(5./9.);
}
float getFahrenheit()
{if(scale=='F')
return temp;
return temp*(float)(5./9.)+32;
}
void setTemp(float t)
{temp=t;
}
void setScale(char s)
{scale=s;
}
void setBoth(float t,char s)
{scale=s;
temp=t;
}
boolean equals(Temperature t)
{if(scale==t.scale)
if(temp==t.temp)
return true;
else
return false;
if(scale=='C')
if(temp==(t.temp-32.)*(float)(5./9.))
return true;
else
return false;
else
if(t.temp==(temp-32.)*(float)(5./9.))
return true;
else
return false;
}
boolean greater(Temperature t)
{if(scale==t.scale)
if(temp>t.temp)
return true;
else
return false;
if(scale=='C')
if(temp>(t.temp-32.)*(float)(5./9.))
return true;
else
return false;
else
if(t.temp>(temp-32.)*(float)(5./9.))
return true;
else
return false;
}
boolean less(Temperature t)
{if(scale==t.scale)
if(temp<t.temp)
return true;
else
return false;
if(scale=='C')
if(temp<(t.temp-32.)*(float)(5./9.))
return true;
else
return false;
else
if(t.temp<(temp-32.)*(float)(5./9.))
return true;
else
return false;
}
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.