Professional Documents
Culture Documents
C++
mr. sc. Jasminka Tomljanovi, vii predava
Veleuilite u Rijeci
Sadraj
Dvodimenzionalni dinamiki niz
mr.11/12/16
sc. Jasminka Tomljanovi, vii predava
Veleuilite u Rijeci
Pokazivai na pokazivae
Dinamiko polje proizvoljnog broja
redaka i stupaca
mr.11/12/16
sc. Jasminka Tomljanovi, vii predava
Veleuilite u Rijeci
mr.11/12/16
sc. Jasminka Tomljanovi, vii predava
Veleuilite u Rijeci
Prvo
Treba deklarirati pokaziva na
jednodimenzionalno polje pokazivaa.
int ** Polje;
Svaki lan polja pokazivaa e pokazivati
na poetak jednog retka dinamikog polja.
Polje=new int*[redaka];
mr.11/12/16
sc. Jasminka Tomljanovi, vii predava
Veleuilite u Rijeci
Drugo
Treba deklarirati redak dimenzije
[stupaca+1]
pri emu prvi stupac sadrava informaciju
o stvarnom broju lanova s podacima.
Polje[i]=new int[stupac+1];
mr.11/12/16
sc. Jasminka Tomljanovi, vii predava
Veleuilite u Rijeci
**polje
0
polje[0
br_el_retka-1
]
0
polj
polje[1
e
1 ]
polje[2
2
2
...
.
..
.
polje[0]
[0]=stu
pac
polje[1]
[0]=stu
pac
polje[0]
[stupac]
polje[1]
[stupac]
...
br_el_retka-1
br_redaka-1polje[n
polje[n-1]
[0]=
stupac
..
polje[n1[stupac]
-1]
mr.11/12/16
sc. Jasminka Tomljanovi, vii predava
Veleuilite u Rijeci
Zadatak
Napiite program u kojem se stvara
dvodimenzionalno dinamiko polje
ZADATAK u koji se za uitani broj
studenata unose samo ocjene tono
rijeenih zadataka iz Programiranja.
Izraunajte za svakog studenta srednju
ocjenu i upiite je kao zadnji podatak u
njegovom redu. Ispiite polje ZADATAK.
mr.11/12/16
sc. Jasminka Tomljanovi, vii predava
Veleuilite u Rijeci
#include "stdafx.h"
#include<iostream>
using namespace std;
void stvori(float **ZADATAK,int n)
{
int m;
for(int i=0;i<n;i++)
{
cout<<"Broj zadataka "<<i+1<<". studenta:";
cin>>m;
ZADATAK[i]=new float[m+2]; //dodjeljivanje memorijskog
prostora el. redaka polja
Veleuilite u Rijeci
10
Veleuilite u Rijeci
11
Veleuilite u Rijeci
void main()
{
int n;
cout<<"Unesite broj studenata:";
cin>>n;
float **ZADATAK=new float*[n]; //stvara se niz od n
pokazivaa na tip float
cout<<endl;
stvori(ZADATAK,n);
cout<<endl;
ucitaj(ZADATAK,n);
cout<<endl;
ispis(ZADATAK,n);
cout<<endl;
dealokacija(ZADATAK,n);
}
mr.11/12/16
sc. Jasminka Tomljanovi, vii predava
12
Unesite
broj
Veleuilite
u Rijeci
studenata:3
student
student
student
student
student
student
student
student
student
student
student
student
1.
2.
3.
4.
1.
2.
3.
4.
5.
1.
2.
3.
ocjena:3
ocjena:4
ocjena:5
ocjena:2
ocjena:3
ocjena:3
ocjena:3
ocjena:4
ocjena:4
ocjena:5
ocjena:2
ocjena:3
4 3 4 5 2 3.5
5 3 3 3 4 4 3.4
3 5 2 3 3.33333
Press
any key
to continue
...
mr.11/12/16
sc. Jasminka
Tomljanovi,
vii predava
13