26.November 2004 Sezgi Seret - 0227324 2
Programmiersprache Pascal Pascal ist eine Programmiersprache, die 1968 bis 1972
von dem Schweizer Informatiker Niklaus Wirth entwickelt wurde. Sie ist nach Blaise Pascal benannt.
Pascal ist ein prozedurale Sprache wie Modula 2 und C.
Pascal ist ein Lehrsprache, welches leicht erlernbar ist und eine einfachen Syntax hat.
26.November 2004 Sezgi Seret - 0227324 4
Struktur eines Pascalprogramms PROGRAM ProgramName (FileList); CONST (* Konstanten *) TYPE (* Datentypen *) VAR (* Variablen *) (* Subprogram definitions *) BEGIN (* ausfühbare Anweisungen *) END.
26.November 2004 Sezgi Seret - 0227324 5
Konstanten
const Name = 'Niklaus Wirth';
FirstLetter = 'N'; Year = 1971; pi = 3.1415926535897932; UsingNCSAMosaic = TRUE;
26.November 2004 Sezgi Seret - 0227324 6
Variablen und Datentypen
var age, year, grade : integer; circumference : real; LetterGrade : char; DidYouFail : Boolean;
26.November 2004 Sezgi Seret - 0227324 7
Sytaktische Grundelemente
Operatoren : Arithmetische Operatoren + - * / div mod Logische Operatoren not and or Vergleichsoperatoren = < > < <= > >= Zuweisungsoperator := Mengenoperatoren * + -
26.November 2004 Sezgi Seret - 0227324 8
Reservierte Namen in Pascal
AND ARRAY BEGIN CASE CONST DIVDO DOWNTO ELSE END FILE FOR FUNCTION GOTO IF IN LABEL MODNIL NOT OF OR PACKED PROCEDUREPROGRAM RECORD REPEAT SETTHEN TO TYPE UNTIL VAR WHILEWITH
26.November 2004 Sezgi Seret - 0227324 9
Standard Funktionen
abs(x) sqr(x) sin(x) cos(x)
exp(x) ln(x) sqrt(x) arctan(x)
trunc(x) round(x) odd(x)
26.November 2004 Sezgi Seret - 0227324 10
Wertzuweisung
var x,y:real; i:integer; i := i+1 y:=x+cos(x/3)
variable := ausdruck
26.November 2004 Sezgi Seret - 0227324 11
Verbundsanweisung
begin h:=a; a:=b; b:=h end
begin anweisung end
;
26.November 2004 Sezgi Seret - 0227324 12
while-Anweisung(Abweisschleife)
a := 5; while a < 6 do writeln (a);
while ausdruck do anweisung
26.November 2004 Sezgi Seret - 0227324 13
repeat-Anweisung(Nichtabweisschleife)
repeat-anweisung
repeat anweisung until ausdruck
;
26.November 2004 Sezgi Seret - 0227324 14
if-Anweisung
if (konto > 20) and (temperatur >= 25) then begin essen_bestellen; trinken_bestellen end;
if ausdruck then anweisung
else anweisung
26.November 2004 Sezgi Seret - 0227324 15
for-Anweisung { anfangswert <= endwert, schrittweite = 1 } for laufvariable:=anfangswert to endwert do
anweisung; { einzelne Anweisung oder Verbundanweisung }
{ anfangswert >= endwert, schrittweite = -1 } for laufvariable:=anfangswert downto endwert do
anweisung; { einzelne Anweisung oder Verbundanweisung }
26.November 2004 Sezgi Seret - 0227324 16
case-Anweisung (Fallauswahl)
Die case-Anweisung bietet eine unbegrenzte Anzahl von Alternativen im weiteren Ablauf an.
case Ausdruck of Konstante Anweisung end:
,
;
26.November 2004 Sezgi Seret - 0227324 17
Sprunganweisung(goto-Anweisung)
begin . .30 : x := x + 0.5; . . if x = 7 then go to 30; . goto 40; . .40 : write(x);end.
Die goto-Anweisung
erlaubt einen Sprung von einer Stelle eines Programmes zu einer beliebigen anderen.
26.November 2004 Sezgi Seret - 0227324 18
Prozeduren und Funktionen Prozeduren sind in Pascal die allgemeinste Form vonUnterprogrammen. Ein Prozeduraufruf in einemProgramm wird notiert durch Nennung desProzedurnamens, gefolgt von der in Klammerneingeschlossenen Liste der aktuellen Parameter.procedure Name; const (* Constants *) var (* Variables *) begin (* Statements *) end;
26.November 2004 Sezgi Seret - 0227324 19
Prozeduren und Funktionen(2)
Eine Funktion ist eine Prozedur,dass genau ein Ausgangswert prozudiert und dieser in einem Ausdruck aufgerufen werden kann.
function Name (parameter_list) : return_type;
26.November 2004 Sezgi Seret - 0227324 20
Vorteile und Nachteile
relativ höhe Geschwindigkeit leicht zu erlernen gut strukturierbar keine Objektorientierte Sprache nicht mehr zeitgemäß