初心者です・・・・・
初心者です・・・・・
(時刻と日付を格納する構造体を設計してください。2つの時刻の違いを分の単位で表す関数を記述しなさい。)←←←←←←←←←←←←誰かこれの解答例をおしえてください(><)
Re:初心者です・・・・・
ぺこちゃんさんこんにちは。
管理人です。
構造体の作り方はわかりますか?
後、
・2つの時刻の違いを分の単位で表す関数
という意味がよくわかりません。
関数を呼んだ違う時間に分の単位で表示するのか
違う国の時間を表示するのか・・。
「2つの時刻」とはなんですか?
管理人です。
構造体の作り方はわかりますか?
後、
・2つの時刻の違いを分の単位で表す関数
という意味がよくわかりません。
関数を呼んだ違う時間に分の単位で表示するのか
違う国の時間を表示するのか・・。
「2つの時刻」とはなんですか?
Re:初心者です・・・・・
>2つの時刻の違いを分の単位で表す関数
単純に2つの時間構造体を比較して、ってことではないでしょうか。
単純に2つの時間構造体を比較して、ってことではないでしょうか。
[color=#d0d0ff" face="monospace]struct time_info { /*何か*/ };
typedef int diff_minutes;
diff_minutes get_diff_minutes(const struct time_info* time1, const struct time_info* time2);[/color]
Re:初心者です・・・・・
time.h内の標準関数を使えば簡単にできます。
以下がその解答例です。
あくまで例なので、このまま出しても通用するかどうかはわかりませんが。
以下がその解答例です。
あくまで例なので、このまま出しても通用するかどうかはわかりませんが。
[color=#d0d0ff" face="monospace]typedef struct date_time
{
unsigned int year: 8; // 1900年を 0とする
unsigned int month: 4; // 1月を 1とする
unsigned int date: 5; // 1日を 1とする
unsigned int hour: 5;
unsigned int minute: 6;
} date_time;
int diff_date_time(const date_time *time1, const date_time *time2)
{
struct tm tm1 = { 0, time1->minute, time1->hour, time1->date, time1->month-1, time1->year, 0, 0,-1 },
tm2 = { 0, time2->minute, time2->hour, time2->date, time2->month-1, time2->year, 0, 0,-1 };
return (int)(difftime(mktime(&tm2), mktime(&tm1)) / 60);
}[/color]