Nizovni tip podataka (1. deo)

Upotrebom strukturnih tipova podataka:

– prirodno se izražava problem koji se rešava,

– pojednostavljuje se zapis podataka i rešenja.

Strukturni tipovi podataka se formiraju kombinovanjem prostih tipova.

U Pascal-u postoje: nizovni, slogovni, skupovni i datotečni strukturni tipovi podataka.

Nizovni tip u Pascal-u ima sledeća svojstva:

–        sadrži linearno uređen, unapred poznat, broj članova,

–        svi članovi su istog tipa i imaju zajedničko ime,

–        svakom članu pristupa se pomoću zajedničkog imena niza i indeksa člana,

–        svi indeksi su istog, ordinalnog tipa i

–        svi članovi se tretiraju kao posebne promenljive i  jednako su dostupni.

Jednodimenzionalni nizovi

Jednodimenzionalni niz čini niz članova – jednoindeksnih promenljivih istog tipa.

Svakom članu može se pristupiti pomoću izračunljivog indeksa ordinalnog tipa.

Maksimalan broj članova niza je unapred poznat i ne može se menjati.

Jednodimenzionalni niz se definiše na sledeći način:

      ARRAY [ pv . . kv ] OF tip;

primeri:

                                array [0..10] of integer;

                                array[‘a’..’m’] of real;

                                array[1..50] of array[1..10] of char;

Svakom nizovnom tipu može se dodeliti ime u odeljku definicije tipova, a zatim da se to ime koristi za deklarisanje promenljivih.

primer:

                                const dim = 10;

                                type

                                   niz = array[1..200] of real;

                                   mattip = array[1..dim,1..dim] of integer;

                                var

                                   x : niz;

                                   matrica : mattip;

                                   B : array[10..25] of array [1..15] of char;

Članovima niza se pristupa pomoću zajedničkog imena niza i indeksa člana.

primer:

                                x[5]                        x[190]   x[i+j]                     x[5+k]

                                matrica[3,4]

                                matrica[i,j]

                                matrica[i,7]

                                B[2,4]                    B[i][j]

Za dodeljivanje vrednosti članovima niza koristi se naredba dodele (kao za bilo koju promenljivu).

primer:

var c : array [ 0 . . 25] of integer;

                                c[0] := – 2;

                                readln(c[10]);

                                c[brojac] := i + 1;

                                c[ i – j ] := f (x+3);

primer 1: Napisati program za učitavanje niza od N prirodnih brojeva i ispisivanje tog niza na ekranu.

program NIZ;

var

i, N : integer;

A : array[1..100] of integer;

begin

(*ucitavanje*)

writeln(‘Unesite broj clanova niza (n<=100)’);

readln(N);

writeln(‘Unesite clanove niza’);

for i := 1 to N do readln(A[i]);

(*ispisivanje*)

writeln;

for i := 1 to N do write (A[i]:6)

end.

primer 2: Izračunati zbir članova niza od 10 celih brojeva.

program niz3;

var a: array [1..10] of integer;

s, i : integer;

begin

for i := 1 to 10 do

begin

writeln(‘A[‘, i, ‘]=?’);

read(A[i])

end;

s := 0;

for i := 1 to 10 do

s := s + A[i];

writeln(‘Zbir clanova niza je  ‘, s)

end.

Na kraju proverite svoje znanje iz programiranja pre nego što nastavite dalje sa rešavanjem zadataka – testovi.

Zadatke za vežbanje potražite na: https://racunarstvoiinformatika.wordpress.com/pascal-zadaci/

Uskoro!!! Nizovni tip podataka (2. deo) – o dvodimenzionalnim nizovima…

Ovaj unos je objavljen pod Programski jezik Pascal i označen sa , . Zabeležite stalnu vezu.

3 reagovanja na Nizovni tip podataka (1. deo)

  1. Povratni ping: Priprema za drugi pismeni zadatak (III razred) | Računarstvo i informatika

  2. Povratni ping: Nizovi « On-line učionica

Ostavite odgovor

Popunite detalje ispod ili pritisnite na ikonicu da biste se prijavili:

WordPress.com logo

Komentarišet koristeći svoj WordPress.com nalog. Odjavite se / Promeni )

Slika na Tviteru

Komentarišet koristeći svoj Twitter nalog. Odjavite se / Promeni )

Fejsbukova fotografija

Komentarišet koristeći svoj Facebook nalog. Odjavite se / Promeni )

Google+ photo

Komentarišet koristeći svoj Google+ nalog. Odjavite se / Promeni )

Povezivanje sa %s