###前提・実現したいこと
Zellerの公式を使って曜日を算出するメソッドを作ってみたのですが、以下のようなエラーが出てしまいました。
エラーメッセージから察するに、分岐によって値を返せていないときがあるのではと思ったのですが、それがどこなのかわかりません。
7通りしかないはずの w の値で全部のパターンをカバーできているつもりだったのですが・・・。
よろしくお願いいたします。
###発生している問題・エラーメッセージ
値を返さないコード パスがあります
###該当のソースコード
visualC#
1 //曜日を求める 2 //(仮引数)year:西暦年 month:月 day:日 3 //(返却値)曜日 4 private string dayCalculate(int year, int month, int day) 5 { 6 int w; 7 8 if (month == 1) 9 { 10 month = 13; 11 year -= 1; 12 } 13 if (month == 2) 14 { 15 month = 14; 16 year -= 1; 17 } //1月、2月の時は前年の13月、14月に 18 19 w = (5 * year / 4 - year / 100 + year / 400 + (26 * month + 16) / 10 + day) % 7; //Zellerの公式 20 21 switch(w) 22 { 23 case 0: 24 return "日曜日です"; 25 case 1: 26 return "月曜日です"; 27 case 2: 28 return "火曜日です"; 29 case 3: 30 return "水曜日です"; 31 case 4: 32 return "木曜日です"; 33 case 5: 34 return "金曜日です"; 35 case 6: 36 return "土曜日です"; 37 } 38 }
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。