以下為我的解法與說明。
做完參考其他人的解法後,依照我的解法兩個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;
}