#23444: C++ 用else if的解法與說明


piaopiao114@gmail.com (piao)

學校 : 不指定學校
編號 : 139225
來源 : [36.230.224.171]
最後登入時間 :
2020-12-02 23:53:12
a003. 兩光法師占卜術 | From: [36.225.80.213] | 發表日期 : 2020-11-18 06:03

以下為我的解法與說明。

 

做完參考其他人的解法後,依照我的解法兩個else可加可不加都不影響結果。

把else if(S == 1){ 改成 if(S == 1){

把else if(S == 2){ 改成 if(S == 2){

 

另外,提醒檢查分號還有if內的條件記得要兩個==,只有一個=的話評分會是NA

 

1: 10% WA (line:1) // 以這題為例 (1*2+10) % 3 正確答案是普通,但只要餘數是0答案都會變成吉,有高手知道原因的話希望能講解下,感謝。

您的答案為: 吉

正確答案為: 普通

-----------------------------------------------------

#include <iostream>

using namespace std;

 

int main(){

int M,D,S; //將M、D、S分別用int宣告成整數變數

cin>>M>>D; //分別輸入M、D的數字

S = (M*2+D) % 3 ; //將(M*2+D) % 3 的計算結果存入S

if(S == 0){  //如果結果是0的話

    cout<<"普通"<< endl; //顯示普通

}

else if(S == 1){  //如果結果是1的話

    cout<<"吉"<< endl;  //顯示吉

}

else if(S == 2){  //如果結果是2的話

    cout<<"大吉"<< endl;  //顯示大吉

}

return 0;

}

 
ZeroJudge Forum