Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 6

JAVNA USTANOVA MJEŠOVITA SREDNJA

ELEKTROTEHNIČKA ŠKOLA TUZLA

PRAKTIČNA NASTAVA III

Profesor/-ica:
Ime i prezime učenika: Razred:
Stručno zvanje: Tehničar računarstva
Datum izrade: Ocjena:

Muhameda Hevaija Uskufija 2, 75000 Tuzla


Tel/Fax : +387 35 281-167
ets.tz@bih.net.ba
www.etstuzla.edu.ba
www.etsedu.org/moodle/
SOFTVERSKA DOKUMENTACIJA
Koraci pri razvoju aplikacije

ANALIZA: Definisanje problema

Dat je zadatak „Napišite program koji će provjeriti je li zadana kvadratna matrica reda n
simetrična.“. Zadatak će kao izlazni podatak prikazati tekst u kojem je naznačeno da li je
matrica simetrična ili ne (Simetrična matrica je matrica koja ima broj elemenata u redu i
koloni isti). Zavisnost izlaza se ogleda u ulaznim podacima, tačnije u vrijednostima elemenata
matrice koja ima kvadratnu dimenziju zadatu od strane korisnika.

DIZAJN: Pseudo-kod

1. KORAK:
Deklaracija varijabli koje će se koristiti unutar programa i određivanje kojem tipu pripadaju
(mogu biti tipa int, float, const, char...)

2. KORAK:
Ispis teksta koji traži od korisnika unos broja redova i kolona matrice (pomoću naredbe
„cout“ i znakova „<<“).

3. KORAK:
Unos broja redova i kolona matrice (1. varijabla tipa integer – tip rezervisan za definisanje
cijelih brojeva) koji mora biti pozitivan, tj. veći od nule jer broj redova ne može biti negativan
(obavljanje koraka se vrši pomoću naredbe „cin“ i znakova „>>“).

4. KORAK:
Deklaracija dvodimenzionalnog niza (matrice) tipa integer koji će imati definisan prvobitno
broj redova i kolona (1. varijabla).

5. KORAK:
Ulazak u 1. for petlju koja definiše granice 2. varijable tipa int - označava prvi indeks
elemenata matrice (najčešći naziv varijable je „i“)

6. KORAK:
Ulazak u 2. for petlju (koja je unutar 1. for petlje) koja definiše granice 3. varijable tipa int -
označava drugi indeks elemenata matrice (najčešći naziv varijable je „j“)

7. KORAK:
Ispis teksta koji prikazuje indekse elementa matrice (broj elemenata jedne matrice jednak je
broju redova pomnoženim sa brojem kolona matrice) i koji zahtijeva od korisnika da unese
vrijednosti elemenata matrice (obavljanje koraka se vrši pomoću naredbe „cout“ i znakova
„<<“).

8. KORAK:

1
Unos vrijednosti elemenata matrice koji se nalaze na ispisanim indeksima (obavljanje koraka
se vrši pomoću naredbe „cin“ i znakova „>>“).

9. KORAK:
Ulazak u 1. for petlju koja definiše granice 2. varijable tipa int - označava prvi indeks
elemenata matrice (najčešći naziv varijable je „i“)

10.KORAK:
Ulazak u 2. for petlju (koja je unutar 1. for petlje) koja definiše granice 3. varijable tipa int -
označava drugi indeks elemenata matrice (najčešći naziv varijable je „j“)

11.KORAK:
Ispis matrice elemenata koje su unjete od strane korisnika (pomoću naredbe „cout“ i
znakova „<<“). Ispis vršimo pomoću manipulatorske funkcije - setw().

12.KORAK:
Ulazak u 1. for petlju koja definiše granice 2. varijable tipa int - označava prvi indeks
elemenata matrice (najčešći naziv varijable je „i“).

13.KORAK:
Ulazak u 2. for petlju (koja je unutar 1. for petlje) koja definiše granice 3. varijable tipa int -
označava drugi indeks elemenata matrice (najčešći naziv varijable je „j“)

14.KORAK
Provjeravanje uslova: „Je li kvadratna matrica simetrična?“ pomoću naredbe „ if “:
- Ako je uslov ispunjen, 1. varijabla tipa int koja ima zadate elemente biti jednaka svojoj
transponovanoj, onda kažemo da je 5. varijabla istinita (true), a u suprotnom je neistinita
(false).

15.KORAK:
Provjeravanje uslova: „Da li je vrijednost 5. varijable istinita ili ne?“) - Ako je uslov ispunjen,
ispisuje se tekst koji potvrđuje da je unesena matrica simetrična. - Ako uslov nije ispunjen,
ispisuje se tekst koji negira da je unesena matrica simetrična.

16.KORAK:
Završetak programa datog zadatka.

IZBOR INTERFEJSA

Za rješavanje datog zadatka korišten je program „Dev C++“ – besplatno integrisano


razvojno okruženje distribuirano pod GNU General Public License za programiranje na C i C+
+ jeziku. Izvorno ga je razvio Colin Laplace, a prvi put je objavljen 1998. Napisan je u
Delphima. Sadrži se i koristi MinGW ili TDM-GCC 64-bitni port GCC-a kao svoj prevodilac.

2
KODIRANJE
#include <iostream>

#include <iomanip>

using namespace std;

int main()

int n;

bool b = false;

cout <<"unesi broj n= "; cin>>n;

cout <<"unos matrice"<<endl;

int x[n][n];

for(int i=0; i<n; i++){

for(int j=0; j<n; j++){

cout << "x[" << i << "," << j <<"]="; cin>>x[i][j];

}}

for(int i=0; i<n; i++){

for(int j=0; j<n; j++){

cout << setw(4) << x[i][j]; }

cout<<endl;}

cout<<endl;

for (int i = 0; i < n; i++){

for(int j = 0; j < n; j++){

if (x[i][j] != x[j][i])

b = 1;

else {break;}

}}

if(b == 0){ cout <<"matrica je simetricna" <<endl;}

else { cout <<"matrica nije simetricna" <<endl;}

return 0;

3
TESTIRANJE

Za testiranje programa, potrebno je unijeti broj n koji označava


broj redova i kolona, te vrijednosti elemenata matrice.
Prvobitna i transponovana matrice se ispisuju, te možemo
vidjeti da je matrica simetrična, što i sam program ispisuje.

Za sljedeći primjer potrebno je unijeti broj n koji označava broj


redova i kolona, te vrijednosti elemenata matrice. Prvobitna i
transponovana matrice se ispisuju. Možemo vidjeti da elementi
matrice nisu simetrični, što program i ispisuje.

4
KOMPLETIRANJE DOKUMENTACIJE
Ovaj program olakšava korisniku pronalazak simetrične matrice. Simetrična matrica je
matrica koja je jednaka svojoj transponovanoj matrici.
Program je moguće pokrenuti u Code:Blocks ili u Dev – C++. Pokrećemo ga pritiskom na
tipku F11 ili odabirom opcije „Compile&Run“ sa alatne trake.
Kada se program pokrene od korisnika se traži da unese dimenzije matrica, koliki broj redova
i kolona želite (unosimo samo jedan broj jer je matrica kvadratna). Potom uspisujemo
elemente u matricu. Pri unosu korisniku su prikazani indeksi (i, j) elementa koji se unosi tj.
broj reda i broj kolone. Kada je unos elemenata završen program ispisuje matrice u
tabelarnom obliku, a zatim se ta ista matrica transponuje. Ako je matrica ima simetrican broj
redova i kolona, program će ispisati „matrica je simetrična“, ako ne onda ispisuje „matrica
nije simetricna“.

You might also like