# Minuten umrechnen.



## Romolus (16. Apr 2012)

Schreibe ein programm, das die Minutenanzahl 104.357.522 in Minuten, Stunden, Tage, Monate, Jahre , Jahrhunderte ausgibt. 
Ausgabe : 2 Jahrhrunderte,1 Jahr,3 Monate, 20 tage, 12 Stunden und 2 Minuten.


Mein versuch:

```
long minuten      = 104357522;
        long stunden      = minuten/60;
        long tage         = minuten/(24*60);
        long monate       = minuten/(30*24*60);
        long jahre        = minuten/(360*24*60);
        long jahrhunderte = minuten/(100*360*24*60);
        System.out.println(stunden);
        System.out.println(tage);
        System.out.println(monate);
        System.out.println(jahre);
        System.out.println(jahrhunderte);
```

Was aber falsch ist, ich weiß auch warum. Weil es eben die Gesamte Minutenanzahl in NUR Stunden , NUR Tage ... umrechnet.
Brauche ich für die Richtigstellung eine SChleife?


----------



## eRaaaa (16. Apr 2012)

Romolus hat gesagt.:


> Brauche ich für die Richtigstellung eine SChleife?



Nein! Du solltest vlt mal mit anderen, simpleren Beispielen testen.


----------



## Romolus (16. Apr 2012)

Ich komme nicht ganz drauf. Kannst du mir vlt einen Tipp geben=?


----------



## eRaaaa (16. Apr 2012)

Du solltest die Reihenfolge beachten.
Nehme doch mal als Beispiel 1590 Minuten.

Erst die Tage ausrechnen -> 1590 / 1440 = 1,1 -> = 1 Tag
Nun ist ja schon ein Tag weg, also die 1440 Stunden, du musst also jetzt mit dem Rest(Modulo?) weiterrechnen -> 1590 - 1440 = 150

150 / 60 = 2,5 -> 2 Stunden 

Mit Rest weiter... usw.


----------



## Ravbeu (16. Apr 2012)

Wenn du die Minutenzeit in Jahrhunderte, Jahre und Monate usw. umrechnen willst, musst du mit den Jahrhunderten anfangen.
Dannach rechnste du einfach die ganzan Jahrhunderte wieder in Minuten um und ziehst von den gesammt Minuten dein ergebniss ab:


```
long minuten      = 104357522;


long jahrhunderte = minuten/(100*360*24*60);
System.out.println(jahrhunderte);

long jahre        = minuten/(360*24*60);
minuten -= jahre * (360*24*60);
System.out.println(jahre);

long monate       = minuten/(30*24*60);
minuten -= monate * (30*24*60);
System.out.println(monate);

long tage         = minuten/(24*60);
minuten -= tage * (24*60);
System.out.println(tage);

long stunden      = minuten/60;
minuten -= stunden * 60;
System.out.println(stunden);
```


----------



## Romolus (16. Apr 2012)

hallo Ravbeu
Danke für deine Hilfe.

Kann das sein, dass du dich bei den Jahren geirrt hast? Nur eine Vermutung 


liebe Grüße


----------



## AquaBall (16. Apr 2012)

Ja, er hat die Schaltjahre vergessen, da gehört "360+1". ;-)


----------



## Templarthelast (16. Apr 2012)

Haben Jahre nicht 365 Tage?


----------



## Lumaraf (17. Apr 2012)

Templarthelast hat gesagt.:


> Haben Jahre nicht 365 Tage?



Wenn es hier um Kalenderjahre geht wäres es um ganz genau zu sein eigentlich sogar 365.2425 Tage oder 31 556 952 Sekunden. Ich vermute aber mal es geht hier um Bankjahre und die haben genau 360 Tage.


----------



## AquaBall (17. Apr 2012)

Das mit 
	
	
	
	





```
31 556 952 sec
```
 stimmt auch schon lange nicht mehr.
Das galt mal im Jahr 1900. Aber unregelmäßig werden Schaltsekunden eingeführt, weil die Erde sich immer langsamer dreht. 
Jahr, Tag und Sekunden sind einfach nicht konstant zueinander. 






Zahlen sind Schall und Rauch.
Außerdem bin ich ihnedies der Meinung das diese dumme /60/60/24 Teilung schon lange auf Dezimal umgestellt gehört.
Hatten schon die Agypter und Napoleon schlauer gemacht als wir "modernen" Menschen.


----------

