Frage von Foim1, 88

Java - muss für die Schule folgendes Programm schreiben, hab aber ehrlich gesagt keine Ahnung wie ich das angehen soll - könntet Ihr mir helfen?

Es werden zwei Tageszeiten, ausgedrückt in Stunden und Minuten, eingegeben. Das Programm errechnet dann die Zeitdifferenz zwischen diesen beiden Zeitpunkten, ausgedrückt in Minuten. Liegt die zweite eingegebene Tageszeit früher als die erste, so soll damit automatisch der folgende Tag gemeint sein. Beispiele:

1.) 10 h 50 min bis 22 h 10 min ergibt Zeitdifferenz: 680 min ;

2.) 21 h 15 min bis 2 h 5 min ergibt Zeitdifferenz: 290 min .

Antwort
von Wynand14, 42

Das ist keine schwierige Aufgabe... 

Ich will mal nicht so sein: Es wäre meine erste Überlegung den ersten Wert minus den zweiten zu rechnen. Das mit dem Wert "früher" geht nicht, du kannst ja nur klein und groß vergleichen. D.h. wenn die erste Zeit größer ist als die zweite, dann musst du nochmal minus 12 Stunden rechnen.

Wie genau Du das realisierst (Schleifen, if, etc.) musst Du selber herausfinden.

Kommentar von JupStrunk ,

ein Tag hat aber 24h !!! ;)

Kommentar von Wynand14 ,

Ach was

Kommentar von Wynand14 ,

meine ich doch :D

Antwort
von JupStrunk, 27

deine Hausaufgaben machen (das Programm schreiben) werde ich jetzt nicht... ;)

aber eine Art Ablaufplan kann ich dir geben:

zuerst musst Du alles in Minuten umrechnen (std * 60 + min)...
dann prüfst Du, ob der zweite Wert kleiner ist...
wenn er kleiner ist, dann addierst Du 1440 min. (24h) dazu...
und schlussendlich ziehst Du dann den ersten vom zweiten Wert ab...


Antwort
von EightSix, 45

Und an was scheitert es? Irgendwas müsst ihr ja gelernt haben dazu.

Kommentar von Foim1 ,

An Krankheit da ich die letzten 2 wochen aufgrund eines unfalls flach gelegen hab hab ich es leider nicht mitbekommen 

Antwort
von geri3d, 35

Für Hausaufgaben musst Du deinen Kopf anstrengen, nicht die GuteFrage Community. Hier ein Link der sicherlich weiterhilft. (using google for 0.5 sec)

http://www.torsten-horn.de/techdocs/java-date.htm#DatumsArithmetik

Antwort
von PROGRAM4FUN, 5
int calcminutes(int h1, int m1, int h2, int m2){

if(h1 <= h2){
return Math.abs((h2 - (h1+1)) * 60 + 60 - m1 + m2);
} else {
return (24 - (h1 + 1) + h2) * 60 + 60 - m1 + m2;
}
}

Keine passende Antwort gefunden?

Fragen Sie die Community