この記事では、C言語を使用して時間の変換方法について学びます。
具体的には、時間から時分秒への変換と時分秒から時間への変換の方法を解説します。
目次から探す
時間の変換方法
時間の変換は、時分秒の単位を相互に変換することを指します。
C言語では、時間の変換を行うためにいくつかの方法があります。
以下では、時間から時分秒への変換と時分秒から時間への変換の方法について説明します。
時間から時分秒への変換
時間から時分秒への変換を行うには、与えられた時間を時、分、秒の単位に分解する必要があります。
以下に、時間から時分秒への変換を行うためのサンプルコードを示します。
#include <stdio.h>
void convertToHMS(int time, int *hour, int *minute, int *second) {
*hour = time / 3600; // 時間を3600で割ると時が求まる
*minute = (time % 3600) / 60; // 時間を3600で割った余りを60で割ると分が求まる
*second = (time % 3600) % 60; // 時間を3600で割った余りを60で割った余りが秒
}
int main() {
int time = 3665; // 変換する時間(秒)
int hour, minute, second;
convertToHMS(time, &hour, &minute, &second);
printf("時間:%d 時 %d 分 %d 秒\n", hour, minute, second);
return 0;
}
上記のコードでは、convertToHMS関数
を定義しています。
この関数は、与えられた時間を時、分、秒の単位に変換し、それぞれの値をポインタを通じて返します。
main関数
では、変換する時間を設定し、convertToHMS関数
を呼び出して結果を表示しています。
上記のコードを実行すると、以下のような結果が得られます。
時間:1 時 1 分 5 秒
時分秒から時間への変換
時分秒から時間への変換を行うには、与えられた時、分、秒の値を秒に換算する必要があります。
以下に、時分秒から時間への変換を行うためのサンプルコードを示します。
#include <stdio.h>
int convertToTime(int hour, int minute, int second) {
int time = hour * 3600 + minute * 60 + second; // 時、分、秒を秒に換算する
return time;
}
int main() {
int hour = 1, minute = 1, second = 5; // 変換する時分秒
int time;
time = convertToTime(hour, minute, second);
printf("時間:%d 秒\n", time);
return 0;
}
上記のコードでは、convertToTime関数
を定義しています。
この関数は、与えられた時、分、秒の値を秒に換算して返します。
main関数
では、変換する時分秒を設定し、convertToTime関数
を呼び出して結果を表示しています。
上記のコードを実行すると、以下のような結果が得られます。
時間:3665 秒
以上が、時間の変換方法についての説明です。
これらのコードを参考にして、自分自身で時間の変換を行ってみてください。