blikk info infothek forum galerie sitemap

 

Sortiertes Einfügen in einen Array

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

 

Aufgabestellung

Schreiben sie Eine Funktion, die ein Array sortiert füllt. Im Hauptprogramm sollen mit einer Repeat Until Schleife, die Werte vom Benutzer abgefragt werden, bis er den wert 0 eingibt. Vergessen sie nicht die maximale Größe des Array anzugeben! Schreiben Sie auch eine Ausgabeprozedur, für einer sauberen Ausgabe.

 

Pseudocode

Ausgabeprozedur

Prozedur ausgabe( tab vom Typ ttab
                 
anz vom Typ Ganzzahl)

Variablen
 
i vom Typ Ganzzahl

Start
 
Von i soll sein 1 bis anz mache
 
schreibe(tab[von i])
Ende der Prozedur

Prozedur für sortiertes Einfügen


Prozedur einfuegen (Var  tab vom Typ ttab
                    
einfzahl vom Typ Ganzzahl
                    
Var  anz vom Typ Ganzzahl)

Variablen
 
i, j vom Typ Ganzzahl
 
gef vom Typ Boolean


Start
 
i soll sein 0
 
gef soll sein falsch
 
Solange gef falsch mache
   
i soll sein i + 1
    
Wenn (einfzahl <= tab[von i]) oder (i > anz) dann
     
gef soll sein wahr
      Für j soll sein anz herunter bis i mache
        tab[von j + 1] soll sein tab[von j]
      
anz soll sein anz + 1
     
tab[von i] soll sein einfzahl
   
Ende wenn
  Ende Solange
Ende der Prozedur

Hauptprogramm


Variablen
 
n, i, einfzahl vom Typ Ganzzahl
 
tab            vom Typ ttab

Start
 
anz soll sein 0
 
Widerhole
 
schreibe('Geben Sie die Einfuegezahl ein (Ende mit 0): ')
 
lese(einfzahl)
 
Wenn einfzahl <> 0 dann
   
einfuegen(tab, einfzahl, anz)
   
ausgabe(tab, anz)
 
Ende wenn
 
bis einfzahl = 0
Ende des Programms

Zum Pascalcode
Zur Theorieseite
nach oben