Hallo zusammen
Ich repetiere gerade 14 Semesterwochen Java Programmierung und wollte ein simples Zeiterfassungsprogramm erstellen (siehe unten).
Das Programm soll einen Sekundenwert vom Nutzer erhalten und danach von der größten Einheit Stunden (h), zur zweitgrößten Einheit Minute (m) und abschliessend zur kleinsten Sekunde (s) die Werte abtragen.
Die Aufgabe soll mit Modulo gelöst werden. Ohne Modulo ist es ziemlich einfach.
Das Problem ist halt: Modulo rechnet den Wert direkt auf den Restwert, ohne dabei den Zähler bei den h oder m hinzuzufügen. Gibt es hier überhaupt eine sinnvolle Verwendung mit Modulo?
Danke im Voraus.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner keyScan = new Scanner(System.in);
System.out.print("Dauer (Sekunden): ");
int dauer = keyScan.nextInt();
keyScan.close();
int h = 0, m = 0, s = 0;
while (dauer > 0) {
if (dauer >= 3600) {
dauer %= 3600;
h++;
}
else if (dauer < 3600 && dauer >= 60) {
dauer %= 60;
m++;
}
else if (dauer < 60) {
s = dauer;
dauer = 0;
}
}
// Ausgabe. Diesen Teil nicht ändern
System.out.println("Stunden: " + h);
System.out.println("Minuten: " + m);
System.out.println("Sekunden: " + s);
}
}