日付を表すクラス(C++)

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

日付を表すクラス(C++)

#1

投稿記事 by るいと » 8年前

日付を表すクラスを作成したいのですが、
閏年は考慮しないで、

メンバの変数は
int year;
int month;
int day;

メンバ関数は

int set(int year,int month,int day);
年月日を設定する関数
不正な日時の場合は設定せず、1を返す
正しく設定された場合は、0を返す

void get( )
設定されている年月日を取得する関数
引数はmain関数から察する

void next()
日付を次の日にする

です。

main関数は以下です。

コード:

int main()
{
Date d1;
int yy, mm, dd, y, m, d;
cin >> yy >> mm >> dd;
if (d1.set(yy, mm, dd) == 0) {
d1.get(y, m, d);
cout << yy << "年" << mm << "月" << dd << "日が設定されました" << endl;

d1.next();
d1.get(yy, mm, dd);
cout << "次の日は" << yy << "年" << mm << "月" << dd << "日です" << endl;
} else {
cout << "正しく設定されていません" << endl;
}
return 0;
}

アバター
みけCAT
記事: 6734
登録日時: 14年前
住所: 千葉県
連絡を取る:

Re: 日付を表すクラス(C++)

#2

投稿記事 by みけCAT » 8年前

仕様と「日付を表すクラスを作成したい」という希望しか書かれておらず、質問が書かれていないようです。
(これが課題かはわかりませんが)課題の丸投げは禁止です。

以下、フォーラムルールより
「うまくいきません」という質問は大抵回答に困ります。

  1. 自分は今何がしたくて

  2. どう取り組んで(作ったプログラムはどれで

  3. どのようなエラーやトラブルで困っていて

  4. 自分は何が解らないのか、知りたいのか

  5. 今のCの知識はどの程度なのか


この5点をしっかりと明記して下さい。

環境に依存する場合やライブラリを使っているときは

使っているOS名・コンパイラ名・ライブラリ名も明記しましょう。

コンパイルエラーの質問時は必ず最低限のエラーメッセージも書きましょう
どう質問していいか解らない時は、以下のテンプレをコピペして、

各項目に対して答える形で記載して下さい。

[hr]
[1] 質問文
 [1.1] 自分が今行いたい事は何か
 [1.2] どのように取り組んだか(プログラムコードがある場合記載)
 [1.3] どのようなエラーやトラブルで困っているか(エラーメッセージが解る場合は記載)
 [1.4] 今何がわからないのか、知りたいのか

[2] 環境  
 [2.1] OS : Windows, Linux等々
 [2.2] コンパイラ名 : VC++ 2008EE, Borand C++, gcc等々

[3] その他
 ・どの程度C言語を理解しているか
 ・ライブラリを使っている場合は何を使っているか

[hr]
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

るいと

Re: 日付を表すクラス(C++)

#3

投稿記事 by るいと » 8年前

set,get,nextの中にはなにをいれたらよいのでしょうか??

アバター
purin52002
記事: 235
登録日時: 8年前
連絡を取る:

Re: 日付を表すクラス(C++)

#4

投稿記事 by purin52002 » 8年前

こんばんは
set,get,nextの中身ですが
ご自身で説明された通りのプログラムを書けばいいのではないでしょうか、、、?

int set(int year,int month,int day);
年月日を設定する関数
不正な日時の場合は設定せず、1を返す
正しく設定された場合は、0を返す
私ならif文を使うかな?(if文を使わないスマートな方法もあります)

void get( )
設定されている年月日を取得する関数
引数はmain関数から察する
察せませんでした、、、
参照型の引数ですかね?
とりあえず年月日を代入する、、、?

void next()
日付を次の日にする
次の日にしましょうw
30、31日の時は1日にすればいいのかな?


というような感じでどうでしょうか?

割と簡単な部類のプログラムだと思いますので、
まずは自分で書いてみる。実行してみる。エラーを出してみる。

エラーは偉大です。どこでどう間違ったのかを教えてくれますからね。
あとはエラーメッセージを頼りにコードを直していけばきっと書き上げられるはず、、、!
c++初心者を自負しています。
質問者さんには今後私にプログラミングを教えてくれるようにやさしく丁寧に教えるつもりです。ぎぶあんどていく^p^
回答者さんには精一杯感謝します。ぎぶおんりー^p^

返信

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