Tag Archives: nizovi

Dvodimenzionalni nizovi – ZADACI

Уобичајен
  1. KA koja omogućava unos celobrojnih elemenata u matricu nxm  i računa proizvod  elemenata matrice različitih od nule.
  2. KA koja omogućava unos celobrojnih elemenata u matricu 5×3 i računa zbir pozitivnih i proizvod negativnih elemenata matrice
  3.  KA koja omogućava unos elemenata  u matricu nxm i računa koliko je elemenata matrice deljivo sa 6.
  4.  KA koja omogućava unos realnih elemenata  u matricu nxm i ispisuje najveći element u matrici.
  5.   KA koja omogućava unos elemenata  u matricu nxm i ispisuje najveći parni element u matrici.

 

KVADRATNA MATRICA

  1. KA koja omogućava unos celobrojnih elemenata u kvadratnu matricu dimenzija nxn i računa zbir elemenata na glavnoj dijagonali
  2. KA koja omogućava unos celobrojnih elemenata u kvadratnu matricu dimenzija nxn i računa zbir parnih elemenata na glavnoj dijagonali
  3. KA koja omogućava unos realnih elemenata u kvadratnu matricu dimenzija nxn i računa proizvod elemenata ispod  glavne dijagonale
  4. KA koja omogućava unos celobrojnih elemenata u kvadratnu matricu dimenzija 4×4 i računa proizvod elemenata iznad  glavne dijagonale
  5. KA koja omogućava unos realnih elemenata u kvadratnu matricu dimenzija nxn i ispisujekoliko ima negativnih elemenata  ispod  glavne dijagonale
Advertisements

Dvodimenzionalni nizovi

Уобичајен

Ponekad je velike količine podataka teško predstaviti i manipulisati njima u jednodimenzionalnom nizu.U određenom broju slučajeva podacima se lakše manipuliše kada su smešteni u dvodimenzionalnoj tabeli.

Dvodimenzionalni nizovi u matematici se nazivaju matrica, pa ćemo taj termin koristiti na dalje čisto iz praktičnih razloga.

U članku o komponenti StringGrid možete videti kako se pomoću te komponente kreira tabelaa za unos podataka. Primer dat u tom članku podatke uzima direktno iz komponente bez pamćenja podataka u memoriji. U slučaju kada podatke unete u komponentu StringGrid želimo da zapamtimo u memoriji radi dalje manipulacije moramo definisati novi tip podataka – dvodimenzionalni niz.

Kako deklarisati dvodimenzionalni niz?

Kod jednodimenzionalnog niza rekli smo da svi elementi niza moraju biti istog tipa. Bilo kog tipa ali bitno je da su istog tipa . Ako je tako, onda je logično da elementi niza mogu biti i tipa niz. U tom slučaju imali bi niz čiji su elementi nizovi.

PRIMER: Definišemo dvodimenzionalni niz (matricu) X koja može imati najviše 20 kolona i 30 redova u kojima će biti smešteni celi brojevi.

Možemo je deklarisati na jedan od sledećih načina:

  • Kao niz nizova:

Type niz=ARRAY[1..30] of integer;

matrica=ARRAY[1..20] of niz;

var x: matrica;

  •  Kao niz nizova na drugi način:

Type matrica=ARRAY[1..20] of ARRAY[1..30] of integer;

var     x: matrica;

  • Skraćena verzija zapisa:

Type  matrica=ARRAY[1..20,1..30] of integer;

var    x: matrica;

  •  Direktnim opisom u odeljku var:

Var   x: ARRAY[1..20,1..30] of integer;

Najčešće se koristi jedan od zadnja dva prikazana primera.

Pri zadavanju dimenzija matrice koriste se prirdni (celi) brojevi n i m koji govore da se matrica dimenzija nxm sastoji iz n kolona i m redova.

Svaki element dvodimenzionalnog niza (matrice) nalazi se u jednoj ćeliji tabele čiju adresu određuju dva indeksa i , j. Indeks i predstavlja redni broj kolone u kojoj se niz nalazi a j redni broj reda.

Opšti element matrice X možemo predstaviti kao:

X[i,j]

Imamo primer dvodimenzionalnog niza x dimenzija 3×2 (3 kolone, 2 reda).

x

5 7 9
4 9 8

-U prvoj koloni na prvom mestu(u prvom redu) nalazi se broj 5.

· 5 je element matrice

· Adresa ovog elementa matrice je x[1,1]

-U trećoj koloni na drugom mestu (u drugom redu) je broj 8

· 8 je element matrice

· Adresa ovog elementa matrice je x[3,2]

itd

ZADATAK:

Kreirati aplikaciju koja omogućava unos matrice nxm i klikom na dugme ”računaj “ računa zbir elemenata matrice (ispisuje ga u labeli) i prosečnu vrednost elemenata (ispisuje je u edit boxu).

Kao što možete primetiti radi se o potpuno istom zadatku koji je urađen u članku o komponenti StringGrid gde je urađen tako što se podaci direktno uzimaju iz komponente i sabiraju.

Ovoga puta deklarisaćemo tip matrica (dvodimenzionalni niz) i podatke koji se unesu u komponentu zapamtimo u memoriju i sabiramo iz memorije.

Koraci u izradi aplikacije:

  • Postaviti komponente na formu
  • Podesiti osobine za StringGrid tako da nema zaglavlja i da je omogućen unos podataka.
  • Napisati proceduru za događaj klik mišem za komponentu StringGrid za postavljanje proizvoljnih dimenzija tabele (kao što je prethodno prikazano u članku o komponenti StringGrid).
  • Procedura za dugme “racunaj” koja pamti unete vrednosti iz tabele, sabira ih i računa prosečnu vrednost

clip_image002

Komponenta StringGrid

Уобичајен

Ova komponenta nalazi se na paleti komponenti Additional. clip_image002

Omogućava simulaciju radne tabele po ugledu na Excel, s tim što se konkretne funkcije moraju isprogramirati.

StringGrid predstavlja dvodimenzionalnu tabelu koja se sastoji od proizvoljnog broja redova (horizontalno) i kolona (vertikalno) na čijim su presecima ćelije koje sadrže  stringove. Read the rest of this entry

NIZOVI–rešeni zadaci 2

Уобичајен

1. Kreirati aplikaciju koja omogućava učitavanje niza od n celobrojnih elemenata, niz prikazuje u listbox-u i računa proizvod parnih elemenata niza.

izgled forme:image

izgled forme u toku unosa članova (elemenata) niza:image

izgled forme po završetku unosa elemenata niza:image

procedura za dugme “unesi i racunaj”:

image

DETALJNO OBJAŠNJENJE ZADATKA :  nizObjasnjen

Slični zadaci:

  • Kreirati aplikaciju koja omogućava učitavanje   niza od n realnih elemenata, niz prikazuje u list box-u i računa zbir negativnih elemenata niza.
  • Kreirati aplikaciju koja omogućava učitavanje niza od n celobrojnih elemenata, niz prikazuje u list box-u i računa proizvod  elemenata niza koji su deljivi brojem 7.
  • Kreirati aplikaciju koja omogućava učitavanje niza od n realnih elemenata, niz prikazuje u list box-u i računa proizvod dvocifrenih elemenata niza.

2. Kreirati aplikaciju koja omogućava učitavanje niza od 8 celobrojnih elemenata, niz prikazuje u listbox-u i prebrojava koliko ima dvocifrenih elemenata niza.

image

Na slici desno vidite kako izgleda aplikacija posle unosa elemenata niza i računanja.

Pošto je u zadatku rečeno da niz ima 8 elemenata, n se ne unosi (odnosno n=8)

Elemente niza možete uneti preko Inputbox-a.

procedura za dugme “unesi i racunaj”:

 

 

 

image

Slični zadaci:

  • Kreirati aplikaciju koja omogućava učitavanje niza od 12 realnih elemenata, niz prikazuje u list box-u i računa koliko ima elemenata niza koji su veći od 100.
  • Kreirati aplikaciju koja omogućava učitavanje niza od n celobrojnih elemenata, niz prikazuje u list box-u i računa koliko ima  neparnih elemenata niza.
  • Kreirati aplikaciju koja omogućava učitavanje niza od 15 celobrojnih elemenata, niz prikazuje u list box-u i računa koliko ima parnih elemenata niza većih od 1000.

3. Kreirati aplikaciju koja omogućava učitavanje niza od n celobrojnih elemenata, niz prikazuje u listbox-u i drugom listbox-u prikazuje samo neparne elemente niza .

image

Na slici desno vidite izgled aplikacije. Elementi niza uneti su preko inputbox-a i prikazani u listbox1, a samo neparni prikazani su u listbox2.

procedura za dugme “unesi i racunaj”:

image

Slični zadaci:

  • Kreirati aplikaciju koja omogućava učitavanje niza od n celobrojnih elemenata, niz prikazuje u listbox-u i drugom listbox-u prikazuje samo negativne elemente niza .
  • Kreirati aplikaciju koja omogućava učitavanje niza od 20  realnih elemenata, niz prikazuje u listbox-u i drugom listbox-u prikazuje samo  elemente niza veće od 100 .
  • Kreirati aplikaciju koja omogućava učitavanje niza od n celobrojnih elemenata, niz prikazuje u listbox-u i drugom listbox-u prikazuje samo trocifrene  elemente niza .

Nizovi–rešeni zadaci

Уобичајен

1.  Aplikacija učitava n članova niza (preko inputbox-a) i ispisuje ih u listbox-u.

Procedura za dugme:

image

2. Aplikacija  učitava n članova niza preko  memo komponente i sabira ih. Iza poslednjeg (n-tog) člana niza u memo komponenti se pojavljuje STOP (ako je uneto više od n brojeva da se zna koji su učitani u niz).

NAPOMENA: Indeksiranje u komponenti memo počinje od 0.

image

3.

image

image

Procedura za dugme “generisi n”:

image

Procedura za dugme “izracunaj zbir”:

image

Možete da primetite da je ova procedura ista kao procedura u prethodnom zadatku.

Razlika između ove ove dve aplikacije je u tome što u prvoj korisnik sam unosi elemente niza u memo komponentu a u drugoj se svaki element niza generiše slučajnim izborom i ispisuje se u memo komponenti.

Zadaci za vežbanje aplikacija za rad sa nizovima

Уобичајен

Zadatke uraditi na dva načina:

1) unos niza preko Inputbox-a

2) unos niza preko Memo kontrole

1. Kreirati aplikaciju koja omogućava učitavanje  niza od n celobrojnih elemenata i izračunati zbir svih elemenata niza

2. Kreirati aplikaciju koja omogućava učitavanje  niza od n elemenata i izračunava prosečnu vrednost elemenata niza

3.KA koja omogućava učitavanje  niz od  50 celobrojnih elemenata i ispisuje koliko ima parnih  elemenata

4. KA koja omogućava učitavanje elemenata niza od n realnih elemenata  i ispisuje najmanji(minimalan) član niza

5. KA koja omogućava učitavanje niza od n elemenata  i ispisuje najveći (maximalan) član niza

6. KA koja omogućava učitavanje  niza od 120 celobrojnih elemenata  i na osnovu njega kreira novi niz čiji su elementi za 15 veći od elemenata prvog niza

7.KA koja učitava niz od 20 lealnih elemenata i sabira prvi, peti, deseti i devetnaesti član niza.

8. KA koja učitava dva niza(a i b) od n elemenata i na osnovu njih kreira novi niz(c) od n elemenata čiji se elementi dobijaju kao zbir elemenata prva dva niza sa odgovarajućim indeksima npr c[5]=a[5]+b[5]. Novi niz ispisati u komponenti ListBox.

9. KA koja učitava niz od n elemenata, niz prikazuje u Listbox-u. Klikom na element niza u labeli prikazati koren njegove apsolutne vrednosti.

10. KA koja klikom na dugme  generiše slučajan broj n (od 0 do 100). Klikom na drugo dugme kreira se niz od n elemenata. Klikom na treće dugme ispisuje se najmanji i najveći element niza.

11. KA koja generiše niz od n elemenata, ispisuje ga u listBox-u i ispisuje proizvod svih elemenata niza koji su različiti od nule.

12. KA koja generiše niz od n celih brojeva (od –30 do 15) i izračunava zbir parnih i proizvod neparnih brojeva

13. KA koja generše niz od n slučajnih brojeva(od –50 do 50) i ispisuje koliko puta je generisana nula.