Hallo Leute, und zwar habe ich folgendes Problem. Die Fragestellung:
Schreiben Sie ein Programm, das einen Sekunden-Wert in einer int-Variablen sec speichert und diesen Wert in Jahre, Tage, Stunden, Minuten und Sekunden zerlegt. Das Programm soll z.B. folgendes ausgeben: (modulo Aufgabe)
158036521 Sekunden entsprechen:
5 Jahren,
4 Tagen,
3 Stunden,
2 Minuten und
1 Sekunden.
Ich habe folgenden Code:
Dieser Code funktioniert auch, nur leider habe ich totale Verständnisprobleme. Das mit den Jahren verstehe ich noch, denn da ich jahre als int deklariert habe, wird der Rest nicht berücksichtigt. Aber wenn ich jetzt meinen Taschenrechner nehme und jahre so ausrechne wie es dort steht (int tage=sec/60/60/24%365, dann kommen da komische Zahlen und alles andere als " 4 Tagen" (0113....) hinter der 5. Ich stehe total auf dem Schlauch. Den Code konnte ich nur lösen durch ausprobieren. Könnte das mir mal jemand für Doofe erklären?
Liebe Grüße
Schreiben Sie ein Programm, das einen Sekunden-Wert in einer int-Variablen sec speichert und diesen Wert in Jahre, Tage, Stunden, Minuten und Sekunden zerlegt. Das Programm soll z.B. folgendes ausgeben: (modulo Aufgabe)
158036521 Sekunden entsprechen:
5 Jahren,
4 Tagen,
3 Stunden,
2 Minuten und
1 Sekunden.
Ich habe folgenden Code:
Code:
public class Aufgabe_4 {
public static void main (String [] args) {
int sec=158036521;
int jahre=sec/60/60/24/365;
int tage=sec/60/60/24%365;
int stunden=sec/60/60%24;
int minuten=sec/60%60;
int sekunden=sec%60;
System.out.println(sec+" Sekunden entsprechen: ");
System.out.println(jahre+" Jahren,");
System.out.println(tage+" Tagen,");
System.out.println(stunden+" Stunden,");
System.out.println(minuten+" Minuten und");
System.out.println(sekunden+" Sekunden.");
}
}
Dieser Code funktioniert auch, nur leider habe ich totale Verständnisprobleme. Das mit den Jahren verstehe ich noch, denn da ich jahre als int deklariert habe, wird der Rest nicht berücksichtigt. Aber wenn ich jetzt meinen Taschenrechner nehme und jahre so ausrechne wie es dort steht (int tage=sec/60/60/24%365, dann kommen da komische Zahlen und alles andere als " 4 Tagen" (0113....) hinter der 5. Ich stehe total auf dem Schlauch. Den Code konnte ich nur lösen durch ausprobieren. Könnte das mir mal jemand für Doofe erklären?
Liebe Grüße