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

  1. Die Zeit seit dem Start des Computers in Sekunden
  2. 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:

  1. Die Zeit seit dem Start des Computers in Sekunden
  2. 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