blikk info infothek forum galerie sitemap

Statistische Auswertung eines Arrays

anfang zurueck weiter ende nach oben
 Y. K. Gruppe 1

Quellcode

{ Gruppe      : 1
 
Autor       : Y. K.
 
Schule      : Gewerbeoberschule "Max Valier"
 
Klasse      : 3IA
 
Aufgabe     : Statische Auswertung eines Arrays
 
Beschreibung: Das Programm soll Minimum, Maximum und
                Mittelwert
eines Arrays berechnen koennen. }

PROGRAM statausw;

USES Crt;

{ Array definieren }
TYPE
 
ttab = ARRAY [1..20] OF INTEGER;

{ Fuellt ein Array }
PROCEDURE fuell(VAR tab :ttab;
                    
n   :INTEGER);

VAR
 
i :INTEGER;

BEGIN
 
FOR i := 1 TO n DO BEGIN
   
Writeln('Geben sie die ',i,'. Zahl ein: ');
   
Readln(tab[i])
 
END { Ende For }
END; { Ende der Prozedur }

{ Berechnet das Minimum des Arrays }
FUNCTION minimum(tab: ttab;
 
n : INTEGER):INTEGER;

VAR
 
i, min: INTEGER;

BEGIN
 
min := MAXINT;
 
FOR i := 1 TO n DO BEGIN
   
IF tab[i] < min THEN
     
min := tab[i]
  
END; { Ende For }
 
minimum := min;
END; { Ende der Function }

{ Berechnet das Maximum des Arrays }
FUNCTION maximum(tab: ttab;
                
n  : INTEGER): INTEGER;

VAR
 
i, max: INTEGER;

BEGIN
 
max := -MAXINT;
 
FOR i := 1 TO n DO BEGIN
   
IF tab[i] > max THEN
     
max := tab[i]
 
END; { Ende For }
 
maximum := max;
END; { Ende der Funktion }

{ Berechnet den Mittelwert des Arrays }
FUNCTION mittwert(tab: ttab;
                 
n  : INTEGER): REAL;

VAR
 
i, sum: INTEGER;
 
mitt  : REAL;

BEGIN
 
sum := 0;
 
FOR i := 1 TO n DO
   
sum := sum + tab[i];
  
mitt := sum / n;
  
mittwert := mitt;
END; { Ende der Funktion }

{ Hauptprogramm }
VAR
 
tab: ttab;
 
: INTEGER;

BEGIN
 
ClrScr;
 
Writeln('Wie viele Werte werden eingelesen? ');
 
Readln(n);
 
{ Fuell Prozedur aufrufen }
 
fuell(tab, n);
 
Writeln;
 
{ Rechenfunktionen aufrufen und Ergebnisse ausgeben }
 
Writeln('Maximum: ',maximum(tab, n));
 
Writeln('Minimum: ',minimum(tab, n));
 
Writeln('Mittelwert: ',mittwert(tab, n):8:2);
 
Readln
END. { Programmende }

Zum Pseudocode
Zur Theorieseite

nach oben