Aufgabe 23
Gegeben sei folgendes Pacal-Programm:
program test; var y, z, y1, x2: integer; procedure test1; var y: integer; procedure test2; var x, y, z: integer; begin x :0 x2; y := x+x; z := y+1; ausgeben(x); ausgeben(y); ausgeben(z); end; begin y := y1; z := y+1; ausgeben(z); test2; ausgeben(y); ausgeben(z); end; begin; y :=5; z := 5; y1 := 5; x2 := 5; test1; ausgeben(y); ausgeben(z); y :=1; z := 2; y1 := 3; x2 := 4; test1; ausgeben(y); ausgeben(z) end.
Welche Lebensdauer und
Gültigkeitsbereiche haben die Variablen x, y und z.
Welche Ausgaben erzeugt das Programm bei folgenden Eingaben:
Hauptprogramm |
y |
z |
test1 |
y |
test2 |
x |
|
a) |
5 |
5 |
5 |
5 |
|||
b) |
1 |
2 |
3 |
4 |
Aufgabe 24
Schreiben Sie ein Pascal-Programm, da eine quadratische Matrix mit 7 Zeilen und Spalten so initialisiert, daß mit Ausnahme der Werte auf den Diagonalen alle Werte 1 sind. Die Werte auf den Diagonalen sollen 0 sein. Anschließend ist die Matrix auszugeben.
Aufgabe 25
Ein Skatblatt besteht aus 32 Karten. Die Karten eines Skatspiels haben eine Spielfarbe (Karo, Herz, Pik, Kreuz), einen Spielwert (sieben, acht, neun, Bube, Dame, König, zehn, As) und eine Punktezahl (sieben, acht, neun = 0, Bube = 2, Dame = 3, König = 4, zehn = 10, As = 11). Deklarieren Sie in Pascal einen Datentyp Spielkarte, der die Spielfarbe, den Spielwert und die Punktezahl einer Karte beinhaltet.
Aufgabe 26
Welche Ausgabe erzeugt das folgende PASCAL-Programm?
program rek; function WasKommtRaus(x: integer): integer; begin if x > 0 then WasKommtRaus := WasKommtRaus(x-5) else WasKommtRaus := 0; end; begin ausgeben(WasKommtRaus(17)); end.