Datenübertragung: Pseudocode
Ein Programm will für Benutzer eine Schätzung von verbleibender Übertragungszeit anzeigen. Dazu sollen Funktionen geliefert werden:
Unmittelbar vor dem Start einer Übertragung wird die funktion "start" aufgerufen. Argumente von "start" sind
- Die Zeit seit dem Start des Computers in Sekunden
- Die Gesamtgröße der zu übertragenden Daten in Byte
Während der Übertragung wird regelmäßig die Funktion "restZeit" aufgerufen, um die verbleibende Übertragungszeit in Sekunden auszurechnen. Argumente von "restZeit" sind:
- Die Zeit seit dem Start des Computers in Sekunden
- Die bisher übertragene Datenmenge in Byte
Schreibe den Pseudocode für die Funktionsdeklarationen von "start" und "restZeit".
Lösungsvorschlag
// Variablendeklarationen
tStart: int
dGesamt: int //long, int64
FUNKTION start ( time: int, dsize: int ): void // null? none? empty?
tStart := time // SETZE tStart = time
dGesamt := dsize // SETZE dGesamt = dsize
ENDFUNKTION
FUNKTION restZeit ( time: int, dsize: int ): int
rate: double //float, bruchzahl?
// fehlerbehandlung f. time == tStart, ggf auch weg lassen
WENN time <= tStart DANN
ABBRUCH
ENDWENN
rate := dsize / (time - tStart)
RÜCKGABE ( dGesamt - dsize ) / rate
ENDFUNKTION
- Strukturen schließen
- Deklarationen nach vorn
- Argumenten- und Rückgabetypen mit angeben