Vorteile
Übersichtlicheres Hauptprogramm
mehrfache Verwendbarkeit von Programmteilen
eiinfache Möglichkeit der Arbeitsteilung beim Ersellen von Projekten
Wie schreibt man ein Hauptprogramm?
begin
Eingabe;
Kuerzen;
Ausgabe;
end.
—-> an das Ende des Programms
Wie schreibt man eine Prozedur?
procedure Eingabe;
…
end;
lokale Variablen
Variablen, die nur innerhalb einer Prozedur benötigt werden
sind nur innerhalb dieser bestimmten Prozedur verfügbar
deklariert nicht im Vereinbarungsteil sondern in der Prozedur selbst
—> procedure Kuerzen;
var i, ggT: integer;
Vorteile:
sie belegen nur während des Ausführens der entsprechenden Prozedur Arbeitsspeicher
im Hauptprogramm müssen die Variablen nicht bekannt sein —> erleichtert Zusammenarbeit
globale Variablen
sind prozedurübergreifend
man kann während der gesamten Programmlaufzeit auf sie zugreifen
werden im Hauptprogramm vereinbart
—> var Z,N: integer;
Beachte
sollte es namensgleiche lokale und globale Variablen geben, werden immer die lokalen Variablen bevorzugt
—> vermeide dies
Funktionen
besondere Prozeduren
liefern Ergebnis als Rückgabewert
—> function hoch (a,b: integer):integer;
var p,i: integer;
p:=1;
for i:= 1 to b do p:= p*a;
hoch:=p
—> der Datentyp des Ergebnisses muss angegeben werden (wie bei normalen Variablen)
ist dazu da, dass wir dann im Hauptprogramm das Ergebnis der Funktion (durch Aufrufen der Funktion mit entsprechenden Übergabeparametern) z.B in einer Rechnung verwenden können
—> im Programm wird ein Funktionsaufrud ähnlich wie eine Variable verwendet
—> Potenz:= hoch(Basis,Exponent) —> nicht hoch(Basis,Exponent)
—> das Ergebnis der Funktion wird somit in der Variable Potenz gespeichert
Unterschied zwische Funktion und Prozedur
Funktion
Sonderform der Prozedur
Rückgabewert
Wertetyp der Funktion
—> function xy(a:integer):integer;
Wertezuweisung (result,…)
rechnet was aus/ gibt was aus
immer Werteübergabe
Prozedur
immer was gemacht (auswerfen, hinschreiben, (berechnen),…)
Werte- oder Variablenübergabe
Last changed2 years ago