You are on page 1of 4

JAVNA USTANOVA MJEŠOVITA SREDNJA

ELEKTROTEHNIČKA ŠKOLA TUZLA

PRAKTIČNA NASTAVA III


Vježba ______

Profesor/-ica: Emina Arapčić


Ime i prezime učenika: Islamović Almir Nihadović Razred: 3T2
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/
1. Opis i formulacija problema:
a) Program uzima matricu i provjerava da li je matrica prorijeđena matrica.
i. Prorijeđena matrica je matrica koja ima maksimalan broj elemenata koji su jednaki nuli.

2. Design:
a) Deklarisanje potrebnih varijabli
b) Koristeći deklarisane varijable, generisati unos dimenzija matrice, kao i samu matricu.
c) Koristeći petlju, unijeti elemenete svakog indeksa matrice.
d) Izbrojati koliko ima elemenata u matrici, to jeste numerator.
e) Pronaći srednju vrijednost, kako bismo mogli provjeriti da li su nule većinski elementi.
f) Koristeći numerator izbrojati kolićine nule.
g) Poređenjem numeratora sa srednjom vrijednošću, doći do zaključka da li je matrica
prorijeđena, nultna ili neprorijeđena.

3. Izbor interfejsa: Visual Studio Code


4. Kodiranje:
#include <iostream>
#include <iomanip>
using namespace std;

int main(int argc, char const *argv[]){


    int n, m;
    do{
        cout<<"Insert dimension n: ", cin>>n;
        cout<<"Insert dimension m: ", cin>>m;
    } while (n>10 || m>10);
    int A[n][m];
    int numerator_elements = 0;
    for (int i = 0; i < n; i++){
        for(int j=0; j<m; j++){
            cout<<"Insert value for A["<<i<<"]["<<j<<"]: ", cin>>A[i][j];
            numerator_elements++;
        }
    }cout<<endl;
    cout<<"Printing table: "<<endl;
   
    for(int i=0; i<n; i++){
        for(int j=0; j<m; j++){
            cout<<setw(6)<<A[i][j];
        }
        cout<<endl;
    }
   
    float numerator_null = 0;
    int reserve = 0;
    for(int i=0; i<n; i++){
        for(int j=0; j<m; j++){
            if(A[i][j] == 0){
                numerator_null++;
            }

1
            else{
                reserve++;
            }
        }
    }
    float middle_var = numerator_elements / 2;
   
    if(numerator_null == numerator_elements){
        cout<<"Matrica je nultna. "<<endl;
    }
    else if(numerator_null > middle_var){
        cout<<"Matrica je prorijedjena. "<<endl;
    }
    else if(numerator_null < middle_var){
        cout<<"Matrica nije prorijedjena. "<<endl;
    }
    else if(reserve == numerator_null){
        cout<<"Matrica nije prorijedjena. "<<endl;
    }
    return 0;
}

5. Testiranje:
a) Provjeravanje da li je matrica nultna:

2
b) Provjerava da li je matrica prorijedjena:

c) Provjerava da li je matrica neprorijedjena:

6. Kompletiranje dokumentacije:
a) Kao što se vidi, ako korisnik unese bilo koju kombinaciju elemenata, dobit će sljedeči izlaz:
i. Matrica je prorijedjena
ii. Matrica nije prorijedjena
iii. Matrica je nultna matrica.
b) Ovisno od toga da li su nule većinski elementi, nisu većinski elementi i da li su nule svi
elementi.

You might also like