【C言語】2つの時間を計算する方法

この記事では、C言語を使って2つの時間を計算する方法について説明します。

初心者の方でもわかりやすく解説しているので、ぜひ参考にしてみてください。

目次から探す

2つの時間を計算する方法

プログラミングにおいて、2つの時間を計算する必要がある場合があります。

例えば、2つの時間の差分を計算したり、時間に加算や減算を行ったりすることがあります。

この記事では、C言語を使用して2つの時間を計算する方法について説明します。

時間の差分計算

まず、2つの時間の差分を計算する方法について説明します。

差分を計算するためには、2つの時間の差を求める必要があります。

以下のサンプルコードを参考にしてください。

#include <stdio.h>
int main() {
    int hour1, minute1, second1; // 最初の時間
    int hour2, minute2, second2; // 2番目の時間
    // 最初の時間を入力
    printf("最初の時間を入力してください(時 分 秒):");
    scanf("%d %d %d", &hour1, &minute1, &second1);
    // 2番目の時間を入力
    printf("2番目の時間を入力してください(時 分 秒):");
    scanf("%d %d %d", &hour2, &minute2, &second2);
    // 時間の差分を計算
    int diffHour = hour2 - hour1;
    int diffMinute = minute2 - minute1;
    int diffSecond = second2 - second1;
    // 負の値の場合は補正する
    if (diffSecond < 0) {
        diffSecond += 60;
        diffMinute--;
    }
    if (diffMinute < 0) {
        diffMinute += 60;
        diffHour--;
    }
    if (diffHour < 0) {
        diffHour += 24;
    }
    // 結果を出力
    printf("時間の差分は %d 時間 %d 分 %d 秒です。\n", diffHour, diffMinute, diffSecond);
    return 0;
}

上記のコードでは、最初の時間と2番目の時間を入力し、それらの差分を計算しています。

差分が負の値の場合は補正を行い、最終的な差分を出力します。

時間の加算・減算

次に、時間に加算や減算を行う方法について説明します。

時間の加算や減算は、単純に時間の値を足したり引いたりするだけです。

以下のサンプルコードを参考にしてください。

#include <stdio.h>
int main() {
    int hour, minute, second; // 時間
    int addHour, addMinute, addSecond; // 加算する時間
    // 時間を入力
    printf("時間を入力してください(時 分 秒):");
    scanf("%d %d %d", &hour, &minute, &second);
    // 加算する時間を入力
    printf("加算する時間を入力してください(時 分 秒):");
    scanf("%d %d %d", &addHour, &addMinute, &addSecond);
    // 時間の加算
    hour += addHour;
    minute += addMinute;
    second += addSecond;
    // 超過した値の補正
    if (second >= 60) {
        second -= 60;
        minute++;
    }
    if (minute >= 60) {
        minute -= 60;
        hour++;
    }
    if (hour >= 24) {
        hour -= 24;
    }
    // 結果を出力
    printf("加算後の時間は %d 時間 %d 分 %d 秒です。\n", hour, minute, second);
    return 0;
}

上記のコードでは、時間と加算する時間を入力し、それらを加算しています。

加算後に時間の値が60以上になる場合や24以上になる場合は、適切に補正を行っています。

最終的な加算後の時間を出力します。

以上が、C言語を使用して2つの時間を計算する方法についての説明です。

差分の計算や加算・減算の方法を理解し、自分のプログラムに応用してみてください。

目次から探す