Zum Einlesen von Werten gibt es die Prozeduren read und readln :
read( )
Diese Anweisung liest nacheinander Werte für bis
von der Tastatur und weist sie den Variablen zu.
Es sind nur Variablen mit numerischem Typ und Zeichenvariablen
erlaubt.
ARRAYs können nicht mit einem einzelnen read
eingelesen werden. Soll ein komplettes Feld eingelesen
werden, so müssen die Feldelemente in einer Schleife
jeweils einzeln eingelesen werden.
Bei mehreren read -Anweisungen hintereinander
werden die Werte hintereinander einer oder mehreren
Eingabezeilen entnommen. Hat eine read -Anweisung
nicht alle Werte einer Eingabezeile gelesen, so werden
die folgenden Werte von der nächsten read -Anweisung
gelesen.
Verwendet man readln anstatt read , so wird nach
dem Einlesen der benötigten Werte die restliche Eingabezeile
für folgende read oder readln ignoriert.
readln ohne Argument liest keinen Wert ein, löscht aber
für nachfolgende Eingaben den Eingabepuffer.
read(a); read(b); readln
ist äquivalent zu
readln(a,b)
hrule
Zur Datenausgabe stehen die Prozeduren
write und writeln
zur Verfügung:
write(,, ...,)
Diese Anweisung schreibt nacheinander die Werte von bis auf den Bildschirm. Bei Benutzung von writeln wird zusätzlich nach dem letzten Datum ein Zeilenvorschub erzeugt, d.h., die nächste write oder writeln -Anweisung wird die Ausgabe in der nächsten Zeile beginnen.
Ähnlich wie readln darf auch writeln ohne Argumente
benutzt werden und erzeugt dann lediglich einen Zeilenvorschub.
Es sind nur numerische, Boolesche und Zeichen-Ausdrücke
als Argumente von write und writeln
erlaubt. Komplette ARRAYs müssen über eine Schleife
ausgegeben werden.
Nur PACKED ARRAY OF char können direkt
ausgegeben werden.
Im Normalfall werden die Daten direkt hintereinander, ohne
Leerstellen zwischen den Daten, ausgegeben.
Bei numerischen Ausgabewerten erhält man also nur
eine lange Folge von Ziffern, und man weiß nicht, wo das
einzelne Datum beginnt.
Formatierte Ausgabe:
Nach dem auszugebenden Ausdruck kann ein Doppelpunkt, gefolgt
von einer Zahl, angegeben werden. Dies bewirkt, daß der
Ausdruck rechtsbündig in einem Feld der angegebenen Breite
ausgegeben wird.
writeln(125:6,-3:5,'abc':5)
bewirkt folgende Ausgabe:
125 -3 abc