Syntax der Sprache PASCAL Buchstaben A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z Ziffern 0 1 2 3 4 5 6 7 8 9 Sonderzeichen und Wortsymbole + - * / div mod (arithmetische Operatoren) = <> < <= > >= (Vergleichsoperatoren) or and not (logische Operatoren) := (Wertzuweisungsoperator). ; : (Trennzeichen) (Apostroph) (Leerzeichen) ( ) (Klammern) [ ] (Indexklammern) { } (Kommentarklammern) begin end (Anweisungsklammern) if then else case of while do repeat until (Anweisungstrennzeichen) for to downto const var type array file (Objektklassensymbole) procedure function (Strukturklassensymbole) 1 107 Wegener PASCAL/Syntax Dienstag 08.05.2001 11:51:16
Kommentar { } beliebiges Zeichen außer } Bezeichner Buchstabe Buchstabe Ziffer ganze Zahl ohne Vorzeichen (gzovz) Ziffer Zahl ohne Vorzeichen (ZoVz) gzovz. gzovz E gzovz + - 2
Zeichenreihenkonstante beliebiges Zeichen außer Konstante ohne Vorzeichen (KoVz) Konstantenbezeichner Zahl ohne Vorzeichen Zeichenreihenkonstante Konstante + Konstantenbezeichner Zahl ohne Vorzeichen - Zeichenreihenkonstante 3
Variable Variablenbezeichner [ Ausdruck ] Wertzuweisung Variable := Ausdruck Funktionsaufruf Funktionsbezeichner ( Ausdruck ) Faktor Konstante ohne Vorzeichen Variable Funktionsaufruf ( Ausdruck ) 4
Term Faktor * / div mod and Faktor einfacher Ausdruck + Term - + - or Term Ausdruck einfacher Ausdruck = < > <> <= >= einfacher Ausdruck 5
Anweisungsblock begin Anweisung end ; Prozeduraufruf Prozedurbezeichner ( Ausdruck ) Alternative if Ausdruck then Anweisung else Anweisung 6
Nicht abweisende Schleife repeat Anweisung until Ausdruck ; Abweisende Schleife while Ausdruck do Anweisung Zählschleife for Variablenbezeichner := Ausdruck to downto Ausdruck do Anweisung 7
Fallunterscheidung case Ausdruck of Konstante : Anweisung end ; Anweisung Wertzuweisung Prozeduraufruf Anweisungsblock Alternative Nicht abweisende Schleife Abweisende Schleife Zählschleife Fallunterscheidung 8
einfacher Typ Typbezeichner ( Bezeichner ) Konstante.. Konstante Typ einfacher Typ array [ einfacher Typ ] of Typ file of Typ 9
Konstantenvereinbarungen const Bezeichner = Konstante ; Typvereinbarungen type Bezeichner = Typ ; Variablenvereinbarungen var Bezeichner : Typ ; 10
Parameterliste var ( Bezeichner : ; Typbezeichner ) Funktionsvereinbarung function Bezeichner Parameterliste : Typbezeichner ; Programmblock ; Prozedurvereinbarung procedure Bezeichner Parameterliste ; Programmblock ; 11
Programmblock Konstantenvereinbarungen Typvereinbarungen Variablenvereinbarungen Funktionsvereinbarung Prozedurvereinbarung Anweisungsblock Programm program Bezeichner ; Programmblock. 12
Zusätzliche Regeln für PASCAL-Programme Bezeichner die in Anweisungen verwendet werden müssen vorher als Variablen- Funktions- oder Prozedurbezeichner vereinbart werden. Jeder Bezeichner darf innerhalb eines Programmblocks nur für eine Konstante einen Typ eine Variable eine Funktion oder eine Prozedur verwendet werden. Zwischen zwei Bezeichnern bzw. Wortsymbolen muss mindestens ein innerhalb eines Bezeichners einer Zahl oder eines Wortsymbols dürfen keine Trenn- oder Leerzeichen stehen. An Stelle eines Trennzeichens kann beliebig Kommentar eingefügt werden. Kommentar hat keinen Einfluss auf die Abarbeitung eines Programms. Folgende Bezeichner sind -neben den Wortsymbolen- mit einer festen Bedeutung belegt und sollten nicht anderweitig verwendet werden: true false Konstantenbezeichner für die Wahrheitswerte "wahr" und "falsch". Boolean Typbezeichner für Wahrheitswerte. integer Typbezeichner für ganze Zahlen. real Typbezeichner für Gleitkommazahlen. char Typbezeichner für einzelne Zeichen. String Typbezeichner für Zeichenreihen. odd Funktionsbezeichner für "ungerade". read readln Prozedurbezeichner für die Eingabe. write writeln Prozedurbezeichner für die Ausgabe.... Es gibt noch viele weitere Funktionen und Prozeduren die hier jedoch nicht alle aufgeführt werden können. Normalerweise stehen diese auch in einem Handbuch das man zusammen mit einem PASCAL-Compiler bekommt. Literatur [1] Wirth N.: Systematisches Programmieren : Eine Einführung. 2. überarb. Aufl. Stuttgart : Teubner 1975. (Leitfäden der angewandten Mathematik und Mechanik). - ISBN 3-519-12327-4 [2] Jensen Kathleen ; Wirth Niklaus: PASCAL : User Manual and Report. 2. Aufl. Berlin : Springer 1976. (Lecture Notes in Computer Science). - ISBN 3-540-07167-9 13