2010-06-27 23 views
1

我參加在線Java類和老師已要求如下: 寫的菜單程序,詢問用戶的數字,表示四個基本的數學方程式(加法,減法,乘法,除法)。使用if/else結構來執行所需的操作,請求用戶輸入並解出等式。 我是新來的,但我看不到的的if/else了點,但我想這是irrelavent。如何結合開關,如果else語句

如果我使用情況1,2,3,4,如下確定操作,我怎麼REFFERENCE用「如果聲明」的情況?

int userSelection; 
double x;   
double y;   
double answer; 

switch (userSelection) { 
    case 1: 
     TextIO.putln("Let's add! "); 
     TextIO.putln(); 
     TextIO.putln("Enter the first number: "); 
     x = TextIO.getlnDouble(); 
    TextIO.putln("Enter the second number: "); 
     y = TextIO.getlnDouble(); 
     break; 

//我以爲我可以提前使用 '如果' 像這樣

 if (case 1); // I don't know how to refference this correctly 
     answer = x + y; 
     TextIO.putln(x 'plus' y 'equals' answer); 

謝謝!

回答

0

這樣看來,我認爲你的老師不希望你使用switch語句開始的,但只要使用if流量控制結構:

if(booleanExpression) 
{ 

} 
else if(booleanExpression2) 
{ 

} 
+0

如果您使用的是直的,如果向上聲明,你怎麼處理這個要求:「要求一個數字,表示四個基本的數學等式用戶」? – Chris 2010-06-27 14:59:47

+0

我不確定詢問用戶這些問題與使用if語句解決方程式的要求直接相關。 – Oded 2010-06-27 17:45:09

+0

我這樣做很難,我不必使用switch語句。只要列出選項。我無法看到所有樹木的森林。 謝謝大家! – jjason89 2010-06-27 22:30:21

1

下面是一個CASE聲明的重寫的presudo代碼:

IF (Case==1) THEN 
    *What to do when Case==1.* 
ELSE IF (Case==2) THEN 
    *What to do when Case==2.* 
ELSE IF (Case==3) THEN 
    *What to do when Case==3.* 
ELSE IF (Case==4) THEN 
    *What to do when Case==4.* 
END IF 

你必須在Java中,雖然實現代碼。 :)祝你好運,你的任務。

+0

看起來你的第一個'if'具有從JavaScript – barrowc 2010-06-27 23:20:43

+0

@barrowc了''===難民 - 哎呀......這是一個錯字。固定。謝謝。 :) – 2010-06-27 23:26:57

1

switch是用來對付一個給定的變量/表達式,然後案件它是什麼價值,但因爲你沒有測試單個變量/表達式,這是不適用的使用,你應該使用if-elseif-else結構,而不是。

1

開關case語句是使用嵌套的if..else要爲一個數值或enumerical數據類型的不同值運行目前存在的邏輯語句的結構的替代方案。它不與if .. else相結合,2是解決條件問題的不同方法。哪一個更適合取決於你正在評估的條件。

如果我正確理解你的代碼,那麼我認爲你正在尋找的東西是這樣的:

switch (userSelection) { 
case 1: 
    TextIO.putln("Let's add! "); 
    TextIO.putln(); 
    TextIO.putln("Enter the first number: "); 
    x = TextIO.getlnDouble(); 
    TextIO.putln("Enter the second number: "); 
    y = TextIO.getlnDouble(); 
    answer = x + y;  
    TextIO.putln(x + " plus " + y + " equals " + answer); 
    break; 
case 2: 
    ... //oh, I don't know. but I would guess: let's subtract! 
    break; 
case 3: 
    ... //let's multiply! 
    break; 
case 4: 
    ... //let's divide! 
    break; 

}

+0

這就是我開始的方式,但是因爲她想選擇一個字母選擇操作,並且if/else操作我認爲我會使用Case語句來獲取用戶輸入。 1爲加,2爲減等等。然後,如果我可以使用IF'case = 1',那麼執行下面的數學運算。 – jjason89 2010-06-27 20:36:24

1

userSelection正在切換所以userSelection的值已經你需要;你可以通過引用userSelection變量參考值:

if (userSelection == 1) { 
    // add 
} else if (userSelection == 2) { 
    // subtract 
} else if (userSelection == 3) { 
    // multiply 
} else if (userSelection == 2) { 
    // divide 
}