12.132.01. Učitati članove i sortirati ih po opadajućem redoslijedu. (5 članova niza)

j - indeks člana niza koji se poredi sa svim članovima do kraja
i - indeks člana niza koji se poredi

Opis programa: Sort niza

**

Listing programa

Opis

1

PROGRAM NIZ_SORT;

Zaglavlje

2

CONST

 

3

  n = 5;

Broj članova niza

4

VAR

 

5

 i, j, pom : INTEGER;

Promjenljive

6

 X : ARRAY [1..n] OF INTEGER;

Niz

7

BEGIN

 

8

  WRITELN Sort niza');

Naslov

9

  FOR i := 1 TO n DO  {ulaz}

Upis članova niza

10

    BEGIN

 

11

      WRITE(i,' --> ');

 

12

      READLN(X[i]);

 

13

    END;

 

14

  FOR j := 1 TO  n - 1 DO

Prvi iz skupine

15

    FOR i := j+1 TO n DO

 

16

      IF X[j] > X[i] THEN

? dobar redoslijed

17

        BEGIN

Nije

18

          pom := X[j];

Zamjena

19

          X[j] := X[i];

 

20

          X[i] := pom;

 

21

        END;

 

22

  FOR i := 1 TO n DO  {izlaz}

Ispis sortiranih članova

23

    WRITELN('X[',i,'] = ', X[i]);

 

24

END.

Kraj programa

Listing programa:

PROGRAM P10711002;
USES
  WinCrt;
CONST
  n = 5;
VAR
 i, j, pom : INTEGER;
 X : ARRAY [1..n] OF INTEGER;
BEGIN
  WRITELN ('Sort niza');
  FOR i := 1 TO n DO  {ulaz}
    BEGIN
      WRITE(i,' --> ');
      READLN(X[i]);
    END;
  FOR j := n - 1 DOWNTO 1 DO
    FOR i := j DOWNTO 1 DO
      IF X[i] > X[i + 1] THEN
        BEGIN
          pom := X[i];
          X[i] := X[i + 1];
          X[i + 1] := pom;
        END;
  FOR i := 1 TO n DO  {izlaz}
    WRITELN('X[',i,'] = ', X[i]);
END.

Index