2 Sekunden dauert es, aber 2 Sekunden ist auch falsch.Du hast einen 8 l Eimer und eine Pumpe, mit der Du mit einer Förderleistung von 6 l/s das Wasser aus dem Eimer abpumpen kannst.
Die Pumpe ist zunächst aus. Du stellst den Eimer unter einen Wasserhahn, aus dem mit 1l/s Wasser in den Eimer fließt. Sobald der Eimer überläuft, schaltest Du die Pumpe ein, der Wasserhahn bleibt weiterhin aufgedreht. Wie lange dauert es, bis der Eimer leer ist?
Wie kommst Du auf 2 Sekunden?2 Sekunden dauert es, aber 2 Sekunden ist auch falsch.
So ist das. Und das lässt sich auch leicht herleiten:Man muss ja nur die "relative" Geschwindigkeit nehmen. Es fließen 6l/min raus und 1l/min rein. Also fließen im Endeffekt 5l/s raus. Dann hat man 8l im Eimer. Bei 5l / s sind das also 8l / 5l/s = 8/5 s = 1 3/5 s = 1,6 s
Man muss ja nur die "relative" Geschwindigkeit nehmen. Es fließen 6l/min raus und 1l/min rein. Also fließen im Endeffekt 5l/s raus. Dann hat man 8l im Eimer. Bei 5l / s sind das also 8l / 5l/s = 8/5 s = 1 3/5 s = 1,6 s
Bei so Aufgaben bitte nie direkt mit Programmieren anfangen oder so. Mal dir sowas auf. Überlege es Dir in Ruhe! Versuche es erst einmal zu verstehen! Wenn Du die Aufgabe verstanden hast und Du Dir überlegt hast, wie man sowas berechnen kann, dann und wirklich erst dann kann man anfangen, irgendwas zu programmieren.
Das stimmt schon. Also ist die Logik, dass solange mit 6 MBit/s gesendet wird, bis der Bucket leer ist. Eigentlich logisch.So ist das. Und das lässt sich auch leicht herleiten:
8l + t * 1l/s - t * 6 l/s = 0 <=> 8 l - t * 5 l/s = 0 <=> t = 8 l / (5 l/s) = 8/5 s = 1,6 s
EDIT: OMG, ich sollte ins Bett gehen, das hat Konrad ja alles schon beschrieben.