English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

(a)celsius方法利用公式C=5.0/9.0*(F-32)傳回華氏溫度對應的攝氏溫度
(b)fahrenheit方法利用公式F=9.0/5.0*C+32傳回攝氏溫度對應的華氏溫度
(c)使用(a)和(b)寫的部份方法撰寫一個應用程式,讓使用者可以選擇輸入華氏溫度換算攝氏溫度;或輸入攝氏溫度換算華氏溫度

我寫完了,可是無法編譯...不知道為什麼...所以我也沒辦法測試程式其它地方寫得對不對,希望能幫我解答一下無法編譯的問題,可以的話順便告訴我其他地方有沒有寫錯,因為對於呼叫的部份我還滿搞不清楚的@@"~謝謝~~

======主程式(可編譯)======

public class HW4_CH6_22ab
{
//宣告變數
private double C;
private double F;

//傳回華氏溫度所對應之攝氏溫度
 public double celsius(double fahrenheit)
{
F=fahrenheit;
C=5.0/9.0*(F-32);
System.out.println(C);
}


//傳回攝氏溫度所對應之華氏溫度
 public double fahrenheit(double celsius)
{
C=celsius;
F=9.0/5.0*C+32;
System.out.println(F);
}

}//end class

=====副程式(無法編譯)=======
import java.util.Scanner;

public class HW4_CH6_22c
{
public static void main(String arg[])
{
HW4_CH6_22ab temp = new HW4_CH6_22ab();

System.out.println("欲將華氏溫度換算成攝氏溫度,請輸入a;欲將攝氏溫度換算華氏溫度成,請輸入b");
Scanner input = new Scanner( System.in );
String ab = input.nextLine();

if (ab==a)
System.out.println("請輸入華氏溫度");
Scanner inputF = new Scanner( System.in );
double fahrenheit = inputF.nextDouble(); // 讀取華氏溫度
temp.celsius( fahrenheit ); // 呼叫celsius方法以印出對應攝氏溫度

if (ab==b)
System.out.println("請輸入攝氏溫度");
Scanner inputC = new Scanner( System.in );
double celsius = inputC.nextDoublee(); // 讀取攝氏溫度
temp.fahrenheit( celsius ); // 呼叫fahrenheit方法以印出對應華氏溫度
}
}

=====副程式編譯錯誤訊息======
HW4_CH6_22ab.java:8: illegal character: \12288
 public double celsius(double fahrenheit)
^
HW4_CH6_22ab.java:17: illegal character: \12288
 public double fahrenheit(double celsius)
^
2 errors

2007-10-27 12:49:54 · 2 個解答 · 發問者 走奔客 3 in 電腦與網際網路 程式設計

哇啊...我把主程式跟副程式的程式碼貼反了...
主程式可編譯,副程式無法編譯,
麻煩各位解答了,非常謝謝!

2007-10-27 12:55:57 · update #1

可以的話...我要的是除錯...
寫給我參考的也很感激
不過盡量加上註解啦
感激不盡QQ...

2007-10-27 13:59:18 · update #2

2 個解答

import java.io.*;
import java.util.*;
public class TEST
//檔名:TEST.java
{
public static void main(String[] args)
{
PrintStream o=new PrintStream(System.out);
Scanner in=new Scanner(System.in);
o.print("Temperature Options:\n1)C to F\n2)F to C\nOtherwise)Exit\n");
o.print("(1/2/otherwise): ");
String opt=in.nextLine();
switch(opt.charAt(0))
{
case '1':
o.printf("Input C: ");
double c=in.nextDouble();
o.printf("%.1f C= %.1f F\n",c,f(c));
break;
case '2':
o.printf("Input F: ");
double f=in.nextDouble();
o.printf("%.1f F= %.1f C\n",f,c(f));
break;
default:
o.printf("Program Terminated.\n");
break;
}
}
public static double f(double c)
{
return 9.0*c/5+32;
}
public static double c(double f)
{
return 5.0*(f-32)/9;
}
}

2007-10-27 13:11:37 · answer #1 · answered by Big_John-tw 7 · 0 0

【亞洲36588合法彩券公司直營 官網: A36588.NET 】

【 最新活動→迎接新會員,首存狂送20% 】

【運動→電子→對戰→現場→彩球 】

【免費服務 →電影區、討論區、KTV歡唱、運動轉播、即時比分、24H客服 】

【亞洲36588合法彩券公司直營 官網: A36588.NET 】

2014-08-31 03:35:23 · answer #2 · answered by Anonymous · 0 0

fedest.com, questions and answers