35 lines
945 B
C
35 lines
945 B
C
#include <stdio.h>
|
|
struct zeit {
|
|
int tag;
|
|
int std;
|
|
int min;
|
|
int sek;
|
|
};
|
|
unsigned long zeit_in_sek(struct zeit z) {
|
|
return z.tag * 86400 + z.std * 3600 + z.min * 60 + z.sek;
|
|
}
|
|
struct zeit sek_in_zeit(unsigned long sek) {
|
|
struct zeit z;
|
|
z.tag = sek / 86400;
|
|
sek %= 86400;
|
|
z.std = sek / 3600;
|
|
sek %= 3600;
|
|
z.min = sek / 60;
|
|
z.sek = sek % 60;
|
|
return z;
|
|
}
|
|
int main() {
|
|
struct zeit z1, z2, summe;
|
|
unsigned long s1, s2, sgesamt;
|
|
printf("Gib 1. Zeit ein (tt.hh.mm.ss): ");
|
|
scanf("%d.%d.%d.%d", &z1.tag, &z1.std, &z1.min, &z1.sek);
|
|
printf("Gib 2. Zeit ein (tt.hh.mm.ss): ");
|
|
scanf("%d.%d.%d.%d", &z2.tag, &z2.std, &z2.min, &z2.sek);
|
|
s1 = zeit_in_sek(z1);
|
|
s2 = zeit_in_sek(z2);
|
|
sgesamt = s1 + s2;
|
|
summe = sek_in_zeit(sgesamt);
|
|
printf("= %d Tage, %d:%d:%d; %lu Gesamtsekunden\n",
|
|
summe.tag, summe.std, summe.min, summe.sek, sgesamt);
|
|
return 0;
|
|
} |