時刻の差分
C言語による実装
時刻の差文を実際に求めるアルゴリズムを、C言語で実際に求めると、以下のようになります。
#include <stdio.h> void main(){ int h ,h1, h2, m ,m1, m2, s,s1, s2; int diff , time1, time2 , n; // 時間を入力 printf("一つ目の時間を入力してください。¥n"); printf("時:"); scanf("%d", &h1); printf("分:"); scanf("%d", &m1); printf("秒:"); scanf("%d", &s1); printf("二つ目の時間を入力してください。¥n"); printf("時:"); scanf("%d", &h2); printf("分:"); scanf("%d", &m2); printf("秒:"); scanf("%d", &s2); // それぞれの時間を、「秒」単位に変換 time1 = h1 * 3600 + m1 * 60 + s1; time2 = h2 * 3600 + m2 * 60 + s2; if (time1 > time2){ diff = time1 - time2; // 秒単位での時間差を求める } else{ diff = time2 - time1; // 秒単位での時間差を求める } h = diff / 3600; // 時間を求める。 n = diff % 3600; // 時間差を3600で割った余りを、nに代入。 m = n / 60; s = n % 60; printf("二つの時間の時間差は、%d時間%d分%d秒です。¥n", h, m, s); }
プログラムを実行すると、コンソールから、一つ目の時間の「時」「分」「秒」、二つ目の時間の「時」「分」「秒」の順で入力を求めてきます。なので、そこに、キーボードから適切な値を入力し、Enterキーを押してください。すると、二つの時間の時間差が出ます。
実行結果
一つ目の時間を入力してください。
時:3
分:2
秒:15
二つ目の時間を入力してください。
時:5
分:12
秒:34
二つの時間の時間差は、2時間10分19秒です。
時:3
分:2
秒:15
二つ目の時間を入力してください。
時:5
分:12
秒:34
二つの時間の時間差は、2時間10分19秒です。