No.2ベストアンサー
- 回答日時:
またまたarthurです。
1月~12月までの各月の日数を12コの配列に入れ、
1月から入力してもらった月の1つ前の月までの日数を合計します。
例)9月と入力された場合
1月の日数(31日)+2月の日数(28日)+・・・+8月の日数(31日)
さらに入力された日にち分を加算します。
例)15日と入力された場合
1月~8月の合計日数+15日
その合計の値をさらに7(1週間=7日)で割ります。
7で割った余りの数字によって曜日を割り当てます。
1月1日(月)が最初なので、余りが1の時月曜日とすると、余りが2の時は・・・
と、まぁ、ヒントはここまでです^^;
後は自分の力でがんばってください。
この回答へのお礼
お礼日時:2001/01/24 20:31
ヒントありがとうございます。只今製作中です。しかしエラーが多くなかなか進みませんがarturさんのおかげで
ずいぶん進むことができました。
No.5
- 回答日時:
月と日だけではわかりませんので、年(西暦)も入力できるようにして
以下のURLを見てください。
EXCELで確認したところ完璧でした。
参考URL:http://www.top.or.jp/~cpop/sitiyo.htm
No.4
- 回答日時:
宿題の回答としては、
1.ある基準日(例えば1900/01/01)の曜日を調べておいて、その日から何日たっているかを閏年も考慮して計算して、7で割って計算する。
2.Zellerの公式を利用する。
の2つがあります。
演習問題としては、1が正しいアプローチのような気がしますが、Zellerの公式も紹介しておきます。
式は下記のようになります。intは、小数点以下切り捨てmodは剰余を求めます。
( [日] + int( ( [月] + 1 ) * 26 / 10 )
+ [年の下2桁] + int([年の下2桁]/4) + int([年の上2桁]/4) - 2*[年の上2桁] ) mod 7
※但し[月]が1月,2月の場合は「前年の13月、14月」として計算します。
むかし、むかし買ったPascalの自習書に乗っていました。
そうそう、Zellerの公式の結果は、土曜日が0になります。
No.1
- 回答日時:
あまり良い方法とは思っていませんが私は次のような方法を使っています。
これはWindowsでしか使えないのでご了承あれ。
SYSTEMTIME構造体の年、月、日その他もろもろを、代入ます。
それでSystemTimeToFileTime関数に渡してFILETIMEに変換します。
そのとき、曜日を指定してあっても無視されます。
得られたFILETIMEをFileTimeToSystemTime関数に渡して、再度SYSTEMTIMEに変換すれば、正しい曜日が入っていると言うわけです。
詳しくはSystemTimeToFileTime関数とFileTimeToSystemTime関数のヘルプを見ましょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java Java、配列の問題を教えて欲しいです。 ・日、月、火、水、木、金、土 ・各曜日の英語 を2次元配列 2 2023/07/10 19:14
- Visual Basic(VBA) VBA 毎日取得するデータを順番に反映していく方法 6 2023/08/26 16:22
- ダイヤルアップ Raspberry Piでアナログモデム経由で音声再生 1 2022/05/20 18:01
- C言語・C++・C# C言語 3 2022/10/04 15:07
- Excel(エクセル) Excel2019、2021の日付、曜日の表示について 2 2022/11/29 15:01
- 中学校 2学期実力テストの国語の勉強法 1 2022/08/01 00:17
- Excel(エクセル) EXCELピボットテーブル関数について 2 2023/04/10 20:35
- アルバイト・パート アルバイトをしている高校生(定時制)です。 アルバイトをして1年と半年が経ちました。 平日は木曜日と 3 2023/02/23 07:09
- Windows 10 Win10の起動が遅い(OSは最新)ハードを交換しても解決しない 5 2023/03/25 01:04
- C言語・C++・C# C言語階乗の総和を求める 2 2023/03/04 23:31
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
月の第一週とは
-
よくある 『 第○(1・2・3・4・...
-
6月の第2 第4火曜日は何日...
-
今週とは何曜日から何曜日まで...
-
[Excel] ある日の曜日が当月の"...
-
エクセルで毎月第2週日の水曜日...
-
日本語問題 昨日は何曜日ですか...
-
週2回のペースって だいたい何...
-
c言語の質問です。 ある月のカ...
-
第○曜日であるかを取得する関数
-
土曜日の26時って何曜日の何時...
-
C言語でわからないところがが...
-
お台場合衆国の混んでない時間...
-
毎週同じ曜日にラブホに行くと...
-
エクセルで折れ線グラフを作り...
-
エクセルで、指定曜日を表示さ...
-
曜日のなぞ
-
X月Y日がZ曜日なのは西暦何年か
-
西暦・月からカレンダーを表示
-
毎○曜日って、使いますか?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
月の第一週とは
-
6月の第2 第4火曜日は何日...
-
よくある 『 第○(1・2・3・4・...
-
エクセルで毎月第2週日の水曜日...
-
[Excel] ある日の曜日が当月の"...
-
週2回のペースって だいたい何...
-
毎○曜日って、使いますか?
-
VBA。複数のChangeイベントをま...
-
土曜日の26時って何曜日の何時...
-
毎週同じ曜日にラブホに行くと...
-
今週とは何曜日から何曜日まで...
-
ユーザー定義の(aaa)
-
曜日のなぞ
-
第○曜日であるかを取得する関数
-
燃えるゴミの日は何曜日ですか?
-
カレンダープログラム、曜日の...
-
曜日を求めるプログラムはどう...
-
Consolidateメソッドの引数のSo...
-
曜日派?日付派??
-
Excelで第一〇曜日を求める方法...
おすすめ情報