# 10/13 勉強会 ## 問題 入力された年月日の曜日を出力して下さい。 イメージ 入力:2022/10/13 出力:木曜日 ツェラーの公式を用いて年月日の曜日を求める。 https://ja.wikipedia.org/wiki/%E3%83%84%E3%82%A7%E3%83%A9%E3%83%BC%E3%81%AE%E5%85%AC%E5%BC%8F ツェラーの公式 ![](https://i.imgur.com/jTgijXk.png) ## 処理具体例 この公式の手順を簡略化したものが下記になります。 入力内容:YYYY/MM/DD ❶入力された年に対して、西暦の下二桁と、西暦の下二桁を4で割った商(あまりは無視)を保持する。ただし、入力された月が、1月または2月の場合は前年で計算します。 (例:2000/01/01が入力された場合は1999年で計算するため、下二桁は99、4で割った商は24) ❷入力された月に対応する数字を保持する。(下記参照) |1月|2月|3月|4月|5月|6月|7月|8月|9月|10月|11月|12月| |:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:|:-:| | 1 | 4 | 3 | 6 | 1 | 4 | 6 | 2 | 5 | 0 | 3 | 5 | ❸ ❶で求めた、西暦の下二桁、西暦の下二桁を4で割った商、❷で求めた、月に対応する数字、入力された日、を合計する ❹入力された年月日が2000年より前の場合、❸の数字に+1する ❺出てきた値を7で割り、そのあまりの数を下記に当てはめたものが曜日となる |0|1|2|3|4|5|6| |:-:|:-:|:-:|:-:|:-:|:-:|:-:| | 土 |日 | 月 | 火 | 水 | 木 | 金 | 【例】 入力:2022/10/13 出力:木曜日 入力:1994/09/09 出力:金曜日 ## 標準出力のサンプルコード ・Java https://paiza.io/projects/Xz3-73sYcnx2InQmbnCnPw ・C https://paiza.io/projects/-21Nwo0atZRhzobzvWSZwA その他 値取得・出力サンプルコード https://paiza.jp/guide/samplecode ## 出典 https://ja.wikipedia.org/wiki/%E3%83%84%E3%82%A7%E3%83%A9%E3%83%BC%E3%81%AE%E5%85%AC%E5%BC%8F https://web.quizknock.com/birthday-weekday