Módulo 3 de 6 · Curso
1.3 Programmierkonzepte orientiert an Pascal
Lernziele:
Den grundlegenden Aufbau einfacher Pascalprogramme kennen. Struktur und Bedeutung
einfacher Pascal Programme erläutern können.
Erste einfache Programmrichtlinien zur erhöhrung der Lesbarkeit von Pasal bennen können.
Struktur Pascal Programme: program - program heading - block - .> S. 31
Declaration Part - Statement Part
Vereinbarungsteil werden Daten beschrieben und benannt im Anweisungsteil die
auszuführenden Operationen ausgegeben.
Bezeichner: Beginnt mit Buchstabe. Pascal nicht CS
3.4 Zahlen
Integer Zahlen: ganze Zahl
maxint, maximaler Wert (8 16 32 etc. bit)
Maxint vorzeichen und 2^7,15 etc.
Zahl muss im Maxint Bereich liegen.
Real Zahlen: Gleitpunktdarstellung > S.37
Festpunktdarstellung > S.38
3.5 Beschreibung der Daten
Pascal Deklarations Anweisungstel
Deklaration erklärt bezeichner
B > S.39
Jeder Teil kann weggelassen werden. Reihenfolge wichtig.
Konstanten, Typen, definiert
Variablen, Prozeduren, deklariert
Konstanten, Typen deiniert
3.5.1 Datentypen
Datentype definiert Menge von Werten mit ausführbaren Operationen.
Typisierte Programmiersprache
-Typ bestimmt Werte und Operationen für Datenobjekt
-=== 1 Typ
-Objekt erfordert Operanden bestimmten Types ergebnis bestimmten Typs
Pascal Typen: integer, real, char, boolean: Unstrukturierte Dateitypen
Integer: + - * div mod
Intervall der ganzen Zahlen
dyadische Infixoperatoren zwischen zwei Operanden notiert.
Standardfunktionen Ergebnis Integer
succ (x) Nachfolger X
pred(x) Vorgänger
Beispiel >S.42
Datentyp real
Teilmenge der reelen Zahlen, die man als real darstellen kann.
Reele Zahlen: + - * / abs (X) sqr(x) sin(x) cos(x) artcan(x) exp(x) ln(x) sqrt(x) >S.42
abs sqr liefert integer und real werte je nach Fütterung
Datentyp char
Alle darstellbaren Zahlen des Pascal Zeichensatzes, Steuerzeichen
Wertebereich char unterliegt Ordnung
ord (c) Ordinalzahl
chr(i) Zeichen mit Ordinalzahl i
Resultat hängt von Verschlüsselungsart ab. Oft ASCII
Siehe Beispiel > S. 43
Datentyp boolean
true false
and
or
not
= gleich
<> ungleich
< kleiner
> größer
<=
>=
für char wird die Ordinalzahl herangezogen
false < true
odd(x) true für gerade
Wertebereiche Disjunkt 6 != 6.0!='6'
string
char zeichenkette <=255 Zeichen nicht vordefiniert wird bereitgestellt
3.5.2 Definition Konstanten
> S. 46
3.5.3 Deklaration von Variablen
Variabeldeklaration Grafik > 49
3.6 Beschreibung der Aktionen
Sequentielle Ausführung.
3.6.1 Einfache Anweisung
Leere Anweisung Einfachste Anweisung
Zuweisung, Wertzuweisung wichtigste einfache Zuweisung := selber Datentyp außer Typ: Real Ausdruck: Integer
Höchste Prio 1. not
2. * / div mod and Punktoperatoren
3. +- or Strichoperatoren
Niedrigste Prio 4 = <> < <= >= Vergleichsoperatoren
Im Gegensatz zu Turbopascal wertet Pascal alles aus, dh.
nach einem or can das Programm über einen undefinierten Begriff stolpern.
Sequenz: Zusammengesetzte Anweisung durch Semikolon getrennt
begin A1;A2...; end
3.6.2 Standard ein und Ausgabe
read readin Eingabe
write writein Ausgabe
eoln Zeilenende
eof Eingabeende
read (x1,xn) Tastatureingabe
write (A) wobei A
x
x:b
x:b:k
sein kann.
write kann Ausgabe sein.
x entweder char integer real boolean oder string
b integer Ausdruck positiv minimale Feldbreite. Zeichen die X bei Ausgabe belegen soll.
kein B standartwet von 1 für für chart, länge string für string und abhängig von Implementierung
für integer, real, boolean.
K wenn x vom Typ real ist. Bestimmt Anzahl Nachkommastellen.
if else
Felher, falsch gesetztes Semikolon (nach then) oder nach else.
fehlen von begin und end beim else Zweig.
EVA
Eingabe Verarbeitung Ausgabe
3.7 Selbstdefinierbare Datentypen
type type definition ; > Grafik 68
Simple type: die 4 Standard Typen
Aufzählungstyp Typname = (Name1, Name2, NameN) (n genügt)
Auf Aufzählungstypen can ord angewendet werden
type
tFarbe = (rot, gruen, blau, gelb, rosa, braun);
ord (rot) ergibt 0
ebenso pred und succ
3.7.2 Ausschnittstypen
Definiert Wertebereich eines definierten Grundtyps.
integer, char, Aufzählungstypen
Auf Grundtyp zulässige Operationen und Standardfunktionen werden
für Abschnittstypen übernommen.
3.8 Programmierstil
3.8.1 Bezeichnerwahl
Muß Regel 1
KnotenAnzahl
Regel 2
Konstantenbezeichner nur Großbuchstaben. Typenbezeichner beginnen mit t
Variablen: Substantive, Bezeichner Funktionen prozeduren: Verben,
Zustandsvariablen, Boolsche Funktionen: Adjektive, Adverben
Abkürzungen:
-Im Kontext verständlich oder allgemeinverständlich
-allgemeinen Sprachgebrauch verwenden, fv
-häufig gebrauchte Namen können kürzer als seltene sein
-Muss enträtselbar und aussprechbar sein.
-Wortanfänge wichtiger, Konsonanten wichtiger
3.8.2 Layout
Jede Anweisung neue
Zeile
Muß 3
Begin End eigene Zeile
Redundante Klammern können Lesbarkeit erhöhen
Schlüsselwörter hervorheben
Kommentare
Muß 4
Einrückungen
Anweisungen zwischen begin und end um 2-4 Einrücken
Muß 5
Bei Kontrollanweisungen das abschließende End mit Kommentar mit Bezug auf Kontrollanweisung versehen
Definitions deklaration durch Leerzeilen gegliedert.
Leerzeile alle 10 Anweisugen
3.8.3 Kommentare
Muß 6
-Kommentare sofort
-Dürfen Programmstruktur nicht verdecken
-Programmkopf beschreibt welche Aufgabe gelöst wird
-evt. Konstanten Datentypen daten und Variablem erläutern
Komplexe Ausdrücke, Anweisungen werden kommentiert.
bei Kontrollstruktur bei end auf Kontrollstruktur verweisen
müssen zusätzliche Informationen liefern