{ Schule :Gewerbeoberschule "Max Valier" Bozen Klasse : 3Ia Name : Norbert Amrain Gruppe : 5 } PROGRAM loesch; USES Crt; TYPE t_tab = ARRAY[1..1000] OF INTEGER; {Prozedur zum loeschen der angegebenen Stelle} PROCEDURE loeschen(stelle : INTEGER; anz : INTEGER; VAR tab : t_tab); {Variablen der Prozedur} VAR i : INTEGER; BEGIN FOR i:= 1 TO anz-1 DO BEGIN IF i < stelle THEN tab[i] := tab[i] ELSE tab[i] := tab[i+1] END; END; {Variablen des Hauptprogrammes} VAR stelle, i, anz : INTEGER; tab : t_tab; {Beginn des Hauptprogrammes} BEGIN ClrScr; {Generiert Zufallszahlen neu} RANDOMIZE; {Fuellen des ARRAYs mit Zufallszahlen von 1 bis 20} Write('Wie viele Zahlen wollen Sie im Array haben: '); Readln(anz); IF anz >1000 THEN BEGIN Writeln('So viele Felder gibt es nicht'); Readkey END ELSE FOR i:= 1 TO anz DO BEGIN tab[i] := Random(20) + 1; {Ausgabe des vollstaendigen ARRAYs} Write('| ',tab[i]:2); END; Readkey; Writeln; Writeln('Welche Stelle des ARRAYs wollen sie loeschen?'); Readln(stelle); IF (stelle >= 1) AND (stelle <= anz) THEN BEGIN {Aufruf der 'loeschen'-Prozedur} loeschen(stelle,anz,tab); {Ausgabe des ARRAYs ohne die geloeschte Stelle} FOR i := 1 TO anz-1 DO Write('| ',tab[i]:2) END ELSE Writeln('Diese Stelle ist nicht vorhanden!!'); Readkey END; END.
|