109.1.. Učitati dvodimenzionalni niz. Ispisati elemente na sporednog dijagonali.
Opis programa: Uvodi se pomoćna varijabla k. Početna vrijednost varijable k je n. Ovim je obezbjeđen ispis poslednjeg u provom redu. Zatim se vrijedno k smanjuje za 1, te se ispisuje u drugom redu ispisuje član sa j = n - 1. Sporedna dijagonala -
Elementi a1n, a2n-1,
..., an1 čine sporednu
dijagonalu. Suma indeksa sporedne dijagonale je veća za 1 od dimenzije
kvadratne matrice-dvodimenzionalnog niza (i+j = n+1). Indeksi elemenata
matrice iznad sporedne dijagonale zadovoljavaju nejednačinu i+j > n+1
a elemente ispod sporedne dijagonale zadovoljavaju nejednačinu i+j < n+1.
|
Slika 1. Sporedna dijagonala i+j = n+1 |
Tekstualni algoritam:
- dimenzionisati niz
- za i = 1 do n radi
za j = 1 do n radi
upis i,j-tog člana niza
- pomoćna varijabal k = 0
- za i = 1 do n radi
za j = 1 do n radi
ako je i = j tada ispis i,j-tog člana niza
povratak na FOR j petlju
- k = k - 1
- povratak na FOR i petlju
Listing programa:
PROGRAM p10911007;
USES
WinCrt;
VAR
i, j, n, k : INTEGER;
X : ARRAY [1..15,1..15] OF INTEGER;
BEGIN
WRITE('n (kvadratna matrica) =');
READLN(n);
WRITELN('Ulaz niza');
FOR i := 1 TO n DO {ulaz}
FOR j := 1 TO n DO
BEGIN
WRITE('X[',i,',',j,']=');
READLN(X[i,j]);
END;
k := n; {izbor indeksa za ispis}
FOR i := 1 TO n DO {izlaz}
BEGIN
WRITELN;
FOR j := 1 TO n DO
IF j = k THEN
WRITE(X[i,j]:4)
ELSE
WRITE(' ');
k := k - 1;
END;
END.
Izvođenje programa:
Index
|
|