Hallo!
Ich bin dabei ein kleines Berechnungs-Tool zu programmieren und muss dafür eine Zeit per Formel ausrechnen. In dieser Formel steckt eine Variabel (Typ: Integer), die sie bei jedem durchlauf einer Schleife verändert. Als Ergebnis, der Formel steht immer eine Dezimalzahl, aus der ich durch folgendes Script die Stunden und Minuten herauslese (ich brauche nur Stunden und Minuten, letztere als 2-stellige Dezimalzahl).
PHP-Code:
// Die Schleife:
// $a, $b, $c und $i sind immer Ganze Zahlen
while($i >= 1)
{
$pow = (($i * $a) / 2);
$Zeit = $b * ((pow($pow, 2) / $c) + 1);
$i = $i - 1;
}
// Formel liefert eine Dezimalzahl
// Wert für Stunden und Minuten herausrechnen:
// Zahl am Dezimalpunkt trennen
$Zeit = explode('.', $Zeit);
// Zahl vor dem Punkt sind Stunden
$ZeitStd = $Zeit[0];
// Zahl nach dem Punkt ...
$Zeit = "0.".$Zeit[1];
// ... muss man mit 60 multiplizieren ...
$Zeit = $Zeit * 60;
// ... um die Minuten herauszubekommen.
// Diese Zahl wird auf 2 Dezimalstellen gerundet
$ZeitMin = round($intZeit, 2);
// Ausgabe
print $ZeitStd."Std. ".$ZeitMin."Min";
Mein Problem liegt nun in der Addition zweier solcher Zahlen. Ich habe es bereits über mktime($ZeitStd,$ZeitMin,0,0,0,0) versucht, doch liefert die immer den Wert -1.
Gibt es irgendeine Möglichkeit - oder gar Funktion - um dies zu lösen? Habe bislang nichts gefunden oder nach dem falschen gesucht.
Danke für die Mühen.
mfg,
derBAER