月日入力/結果表示

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
浅香

月日入力/結果表示

#1

投稿記事 by 浅香 » 18年前

2006年1月1日は日曜日である。月と日を入力すると、この日をもとに曜日を出力するプログラムを作成せよ。月日の入力は「/」で区切ることにする。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
【出力例】
日付を入力してください(MM/DD):12/24
12月24日は日曜日です。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
この問題についてなんですが配列を使うとは思うんですがどのようにすれば配列で○月○日は○曜日と出せれるようになるのかがわかりません
どなたかお願いします

バグ

Re:月日入力/結果表示

#2

投稿記事 by バグ » 18年前

文字列入力用のバッファとしては配列も必要かもしれませんが…曜日を求める為に必要かと問われたら、必要無いように思います(;^_^A

box

Re:月日入力/結果表示

#3

投稿記事 by box » 18年前

> 2006年1月1日は日曜日である。月と日を入力すると、この日をもとに曜日を出力するプログラムを作成せよ。

2006年(去年)限定版のプログラムなのですか?
こういう種類のプログラムでは、毎月の日数を管理する配列を定義するのが定石です。

去年は平年でしたので、例えば
int mdays[/url] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
のようにしておけばよいと思います。

入力した月と日をもとに、1月1日からの通算日数を計算します。
例えば、2月3日は34日目です。
つまり、1月1日の33日後ですので、4週間(=28日)と5日後です。
よって、2月3日の曜日は、日曜日の5日後、つまり金曜日です。

むつ

Re:月日入力/結果表示

#4

投稿記事 by むつ » 18年前

もし、汎用的なプログラムをお望みなら、
先人の知恵(公式)を利用するのも一つの方法です。
プログラムの信頼性が増したり、熟練者との会話が円滑に進みます。

box

Re:月日入力/結果表示

#5

投稿記事 by box » 18年前

> 先人の知恵(公式)を利用するのも一つの方法です。

あ、そうですね。
「Zellerの公式」あたりを調べてみるとよいかもしれません。>浅香さん

バグ

Re:月日入力/結果表示

#6

投稿記事 by バグ » 18年前

標準関数のmktimeを利用すれば簡単なのでは?(?_?)

閉鎖

“C言語何でも質問掲示板” へ戻る