225
Zadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime radi se o tome da na monitoru ispiše jedna poruka «Hello world»(ili nešto na tu temu). Ali na ovom primjeru se vrlo dobro može naučiti kako se iz programa komunicira sa izlaznim uređajima. U našem slučaju radi se o monitoru. Program se neće naknadno pojašnjavati jer jer je uredno izkomentarisan. (Komentari u programu su linije koje se ne izvršavaju, nisu instrukcije, već služe za pojašnjenje programa.). RJEŠENJE: /* Prvi program u C++*/ #include <iostream> using namespace std; /*Predprocesorka direktiva koja se izvrsava prije samog kompajliranja*/ int main() /*Funkcijom main() pocinje svaki program u C++*/ { /*Sa viticastom zagradom pocinje izvrsni dio u kodu*/ cout << "Moj prvi program u C++"<<endl; cout << "*********************"<<endl; /*Naredbom cout znakom redirekcije << se postize komunikacija sa monitorom tj. omogucava nam slanje poruka na ekran, primjetite da se parametar <<endl koji kompajleru kaze da nakon poruke automatski predje u novi red*/ return 0; } EKRAN: Moj prvi program u C++ ****************** Primjer 2: Jednostavan program koji već ima unaprijed definisane brojne vrijednosti u obliku varijabli

Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Embed Size (px)

Citation preview

Page 1: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Zadaci:Dev C++ PROGRAMIRANJE za POČETNIKE

Sretno sa programiranjem,

Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime radi se o tome da na monitoru ispiše jedna poruka «Hello world»(ili nešto na tu temu). Ali na ovom primjeru se vrlo dobro može naučiti kako se iz programa komunicira sa izlaznim uređajima. U našem slučaju radi se o monitoru. Program se neće naknadno pojašnjavati jer jer je uredno izkomentarisan. (Komentari u programu su linije koje se ne izvršavaju, nisu instrukcije, već služe za pojašnjenje programa.). RJEŠENJE:/* Prvi program u C++*/

#include <iostream>

using namespace std;

/*Predprocesorka direktiva koja se izvrsava prije samog kompajliranja*/

int main() /*Funkcijom main() pocinje svaki program u C++*/

{

/*Sa viticastom zagradom pocinje izvrsni dio u kodu*/

cout << "Moj prvi program u C++"<<endl;

cout << "*********************"<<endl;

/*Naredbom cout znakom redirekcije << se postize komunikacija sa monitorom tj. omogucava nam slanje poruka na ekran, primjetite da se parametar <<endl koji kompajleru kaze da nakon poruke automatski predje u novi red*/

return 0;

}

EKRAN:

Moj prvi program u C++

******************

Primjer 2: Jednostavan program koji već ima unaprijed definisane brojne vrijednosti u obliku varijabli

Page 2: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

i nad njima vrši jednostavne operacije množenja i sabiranja. RJEŠENJE:

/* Program koji vec ima definisane vrijednosti varijabli i vrsi jednostavne operacije sabiranja i mnozenja*/

#include <iostream>

using namespace std;

int main()

{

int x=5;

int y=9;

cout <<"Program *Zbir i proizvod*";

cout <<endl;

cout <<"Zbir je... "<< x+y <<endl;

cout<<"Proizvod je... "<< x * y<<endl;

return 0;

}

EKRAN:

Program *Zbir i proizvod*

Zbir je... 14

Proizvod je... 45

Primjer 3:Program koji od korisnika traži da se unesu dva cijela broja i nad njima se vrše osnovne matematičke operacije. RJEŠENJE:

/*Program koji vrsi jednostavne matematicke operacije*/

#include <iostream>

using namespace std;

int main()

Page 3: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

{

int a, b, c, d, e;

/*Deklarisanje varijabli*/

cout << " Program *Osnovne racunske operacije*"<<endl;

cout << " Unesite dva cijela broja: "<<endl;

cin >> a;

cin >> b;

/*Naredba koja ucitava vrijednosti koje su unesene od strane korisnika*/

c=(a*b);

/*Racunska operacija, ali izvrsena u memoriji racunara, jos uvijek nije

vidljiva na monitoru*/

cout << "Proizvod je... " << c<<endl;

/*Ispis varijable c na monitor*/

d=(a+b);

cout << "Zbir je... " << d<<endl;

e=(a-b);

cout << "Razlika je... " << e<<endl;

cout << "Kraj..."<<endl;

return 0;

}

EKRAN:

Program *Osnovne racunske operacije*

Unesite dva cijela broja:

12

3

Page 4: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Proizvod je... 36

Zbir je... 15

Razlika je... 9

Kraj...

Primjer 4:Napisati program koji na osnovu unosa poluprečnika „r“ od strane korisnika računa Obim(obujam) i Površinu (oplošje) kruga. RJEŠENJE:

/* Program za racunanje Obima i Povrsine kruga*/

/* Formula za Obim kruga je O=2*r*PI*/

/* Formula za Povrsinu je P=r2*PI*/

#include <iostream>

using namespace std;

int main()

{

float Poluprecnik, Obim, Povrsina; // Dvije varijable realnog tipa

const float Pi=3.14; //Deklarisanje konstante PI

cout<<" Program povrsina i obim kruga"<<endl;

cout<<" Unesite poluprecnik kruga r = :"<<endl;

cin>>Poluprecnik; //Ucitavanje unesene vrijednosti

Obim=2*Poluprecnik*Pi; //Izracunavanje obima

Povrsina=Poluprecnik*Poluprecnik*Pi;

cout<<"Obim kruga je... "<<Obim<<endl; //Ispis rezultata

cout<<"Povrsina kruga je... "<<Povrsina<<endl;

cout << "Kraj..."<<endl;

return 0;

Page 5: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

} EKRAN:

Program *povrsina i obim kruga*

Unesite poluprecnik kruga r = :

1

Obim kruga je... 6.28

Povrsina kruga je...3.14

Kraj...

Primjer 5:Napisati program koji ispisuje DRUGI korijen upisanog broja.

RJEŠENJE: #include<iostream>

#include<cmath>

using namespace std;

int main ()

{

int x;

cout<<" Upisi broj :"<<endl;

cout<<"x = ";

cin>>x;

cout<<"Drugi korijen je : "<<sqrt(x)<<endl;

getchar ();

return 0;

}

EKRAN:

Upisi broj :

x = 345

Page 6: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Drugi korijen je : 18.5742

Primjer 6:Napisati program dijelenje(količnik) dva broja.

RJEŠENJE:

#include<iostream>#include<cmath>using namespace std;int main (){ float x,y;cout<<“ Dijeljenje dva broja“<<endl;cout<<“ Upisi prvi broj :“<<endl;cout<<“x = „;cin>>x;cout<<“ Upisi drugi broj :“<<endl;cout<<“y = „;cin>>y;float a=x/y;cout<<“Kolicnik je „<<a<<endl;

cout << "Kraj..."<<endl;

return 0;}

EKRAN:

Dijeljenje dva broja

Upisi prvi broj :

x = 123

Upisi drugi broj:

Y = 15

Kolicnik je ... 8.2

Kraj...

Primjer 7:Program koji računa zapreminu(volumen) i površinu(oplošje) valjka-cilindra ,ako je poznata visina „H“ i poluprecnik baze „r“. RJEŠENJE:

/* Program za racunanje Zapremine i povrsine Valjka*/

Page 7: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

/* Formula za Zapreminu je V=r2*Pi*H*/

/*Formula za povrsinu je P=(2*B)+M*/

/*Povrsina baze je B=r2*Pi*/

/*Oplosje omotaca je M=2*r*Pi*H*/

#include <iostream>

#include <cmath>

using namespace std;

int main()

{

float r, Visina, Zapremina,B,M,P;

const float Pi=3.14;

cout<<" Program *Zapremina i povrsina valjka*"<<endl;

cout<<" Unesite poluprecnik osnove valjka r = ";

cin>>r;

cout<<"Unesite visinu cilindra H = ";

cin>>Visina;

B=r*r*Pi;

Zapremina=B*Visina;

M=2*r*Pi*Visina;

P=(2*B)+M;

cout<<"Zapremina je V = "<<Zapremina<<endl;

cout<<"Povrsina je P = "<<P<<endl;

cout << "Kraj..."<<endl;

return 0;

}

Page 8: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

EKRAN:

Program *Zapremina i povrsina valjka*

Unesite poluprecnik osnove valjka r = 1

Unasite visinu cilindra H = 3

Zapremina je V = 9.42

Povrsina je P = 25.12

Kraj...

PRIMJER 8:

Napisati program koji računa zbir, razliku, umnožak i kvocijent dva realna broja.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

float a,b;

cout<<"Unesi prvi broj:"<<endl;

cin>>a;

cout<<"unesi drugi broj:"<<endl;

cin>>b;

cout<<a<<"+"<<b<<"="<<a+b<<endl;

cout<<a<<"-"<<b<<"="<<a-b<<endl;

cout<<a<<"*"<<b<<"="<<a*b<<endl;

cout<<a<<"/"<<b<<"="<<a/b<<endl;

return 0;

}

Page 9: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

EKRAN:

Unesi prvi broj :

5

Unasi drugi broj :

7

5+7=12

5-7=-2

5*7=35

5/7=0.714286

PRIMJER 9:

Napisati program koji će izračunati cjelobrojni kvocijent i ostatak dijeljenja dva cijela broja.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int a,b,ostatak,kvoc;

cout<<"Upisi djeljenik:";

cin>>a;

cout<<"Upisi djelitelj:";

cin>>b;

kvoc=a/b;

ostatak=a%b;

cout<<a<<":"<<b<<"="<<kvoc

<<" cijelih, a ostatak je "<<ostatak<<endl;

Page 10: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

return 0;

}

EKRAN:

Upisi djeljenik: 34

Upisi djelitelj: 7

34:7=4 cijelih, a ostatak je 6

PRIMJER 10:

Napisati program koji će izračunati srednju vrijednost po volji izabrana četiri realna broja.

RJEŠENJE:

include<iostream>

using namespace std;

int main() {

float a,b,c,d,srvr;

cout<<"Unesi cetiri realna broja,"<<endl;

cout<<"odvoji ih prazninama."<<endl;

cin>>a>>b>>c>>d;

srvr=(a+b+c+d)/4;

cout<<endl<<"Srednja vrijednost brojeva: "<<endl;

cout<<a<<", "<<b<<", "<<c<<" i "<<d<<" je " <<srvr<<endl;

return 0;

}

EKRAN:

Unesi cetiri realna broja,

Odvoji ih prazninama.

2 3 4 5

Page 11: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Srednja vrijednost brojeva:

2, 3, 4 i 5 je 3.5

PRIMJER 11:

Potrebno je unijeti cijeli broj, a zatim mu unarnim operatorom promijeniti predznak

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int a;

cout<<"Unesi broj:";

cin>>a;

cout<<endl<<"Kada se broju "<<a

<<" promijeni predznak, on postaje "<<-a<<endl;

return 0;

}

EKRAN:

Unesi broj:12

Kada se broju 12 promijeni predznak,on postaje -12

PRIMJER 12:

Potrebno je unijeti cijeli broj i pohraniti ga u varijablu A, a zatim na taj broj primijeniti unarni operator za uvećavanje nakon dobave iz memorije (A++).

RJEŠENJE:

#include <iostream>

#include <conio.h>

Page 12: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

using namespace std;

int main()

{

int X,A;

cout<<"Unesi broj za operaciju A++: ";

cin>>A;

X=A++;

cout<<"Kad operacija zavrsi X= "<<X<<endl;

cout<<"Kad operacija zavrsi A= "<<A<<endl;

getch();

return 0;

}

EKRAN:

Unesi broj za operaciju A++:34

Kad operacija zavrsi X= 34

Kad operacija zavrsi A= 35

PRIMJER 13:

Potrebno je unijeti cijeli broj i pohraniti ga u varijablu A, a zatim na taj broj primijeniti unarni operator za uvećavanje prije dobave iz memorije (++A).

RJEŠENJE:

#include <iostream>

#include <conio.h>

using namespace std;

int main()

{

int X,A;

Page 13: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<"Unesi broj za operaciju ++A: ";

cin>>A;

X=++A;

cout<<"Kad operacija zavrsi X= "<<X<<endl;

cout<<"Kad operacija zavrsi A= "<<A<<endl;

getch();

return 0;

}

EKRAN:

Unesi broj za operaciju ++ A: 34

Kad operacija zavrsi X= 35

Kad operacija zavrsi A= 35

Primjer 14:Program koji računa zapreminu(volumen) i površinu(oplošje) pravilne četverostrane piramide ,ako je poznata visina „H“ i stranica baze „a“.

RJEŠENJE:

/* Program za racunanje Zapremine i povrsine Pravilnecetverostrane piramide*/

/* Formula za Zapreminu je V=B*H/3*/

/*Formula za povrsinu je P=B+M*/

/*Povrsina baze je B=a2 */

/*Oplosje omotaca je M=4*(a*h/2)*/

/*Visina stranice piramide h =sqrt((H*H)+((a/2)*(a/2))) */

int main()

{

float a, Visina,h,Zapremina,B,M,P;

cout<<" Program *Zapremina i povrsina piramide*"<<endl;

Page 14: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<" Unesite stranicu osnove(baze) piramide a = ";

cin>>a;

cout<<"Unesite visinu piramide H = ";

cin>>Visina;

B=a*a;

Zapremina=B*Visina/3;

h=sqrt((Visina*Visina)+((a/2)*(a/2)));

M=2*a*h;

P=B+M;

cout<<"Zapremina je V = "<<Zapremina<<endl;

cout<<"Povrsina je P = "<<P<<endl;

cout << "Kraj..."<<endl;

return 0;

}

EKRAN:

Program *Zapremina i povrsina piramide*

Unesite stranicu osnove(baze) piramide a = 6

Unasite visinu piramide H = 4

Zapremina je V = 48

Povrsina je P = 96

Kraj...

Primjer 15:Napisati program koji će od korisnika tražiti da unese podatak o godini rođenja, a na izlazu daje ukupno proživljenih godina plus mjeseci. RJEŠENJE:

/* Program koji racuna koliko imate godina i mjeseci zivota*/

#include<iostream>

Page 15: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

using namespace std;

int main()

{

int GodRodjenja, Starost, Mjeseci;

int TrenutnaGodina;

int Mjesec=12;

cout<<"\nKoje ste godine rodjeni? "<<endl;

cin>>GodRodjenja;

cout<<"\nKoja je trenutna godina? "<<endl;

cin>>TrenutnaGodina;

Starost=TrenutnaGodina-GodRodjenja;

Mjeseci=Starost*Mjesec;

cout<<"Trenutno imate "<< Starost <<" godina "<<endl;

cout<<",a to je pretvoreno u mjesece "<< Mjeseci <<" (mjeseci)"<<endl;

cout << "Kraj..."<<endl;

return 0;

}

EKRAN:

Koje ste godine rodjeni?

1982

Koja je trenutna godina?

2009

Trenutno imate 27 godina

,a to je pretvoreno u mjesece 324 (mjeseci)

Kraj...

Page 16: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Primjer 16:Napisati program koji će od korisnika tražiti da unese svoje ime i podatak o godini rođenja, a na izlazu daje ime ukupan broj proživljenih godina. RJEŠENJE:

#include<iostream>

#include <conio.h>

#include<string>

using namespace std;

int main()

{ int god, god1, god2;

string ime;

cout<<"Upisi svoje ime:";

cin>>ime;

cout<<endl<<"Upisi godinu svog rodjenja:";

cin>>god1;

cout<<endl<<"Koja je godina sada? ";

cin>>god2;

god=god2-god1;

cout<<endl<<ime<<" ima "<<god<<" godina."<<endl;

getch();

return 0;

}

EKRAN:

Upisi svoje ime:DELILA

Upisi godinu svog rodjenja:1996

Koja je sada godina? 2009

DELILA ima 13 godina.

Page 17: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

PRIMJER 17:

Treba izračunati kvocijent dva broja od kojih je jedan cijeli, a drugi realan. Rezultat spremiti u cjelobrojnu varijablu.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int a , kvocijent;

float b;

cout<<"Unesi prvi broj a = ";

cin>>a;

cout<<"unesi drugi broj b = ";

cin>>b;

cout<<"Vrijednost izraza a/b= "<<a/b<<endl;

kvocijent=a/b;

cout<<"Sadrzaj varijable kvocijent iznosi:"

<<kvocijent<<endl;

return 0;

}

EKRAN:

Unesi prvi broj a = 152

unesi drugi broj b = 37

Vrijednost izraza a/b = 4.10811

Sadrzaj varijable kvocijent iznosi:4

PRIMJER 18:

Page 18: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Potrebno je unijeti realni broj i pridružiti ga varijabli A. Sadržaj varijable A prvo treba uvećati za 5, pa umanjiti za 8, na kraju pomnožiti sa 3. Koristiti operatore obnavljajućeg pridruživanja

RJEŠENJE:

#include<iostream>

#include <conio.h>

using namespace std;

int main()

{

float A;

cout<<"Upisi zeljeni broj:";

cin>>A;

cout<<"Sadrzaj varijable A se uvecava za 5. Sada A \

iznosi:"<<(A+=5)<<endl;

cout<<" Od trenutnog sadrzaja varijable A se oduzima 8.\

Sada A iznosi:"<<(A-=8)<<endl;

cout<<" Trenutni sadrzaj varijable A se mnozi sa 3.\

Sada A iznosi:"<<(A*=3)<<endl;

cout << "Kraj..."<<endl;

return 0;

}

EKRAN:

Upisi zeljeni broj:23

Sadrzaj varijable A se uvecava za 5.Sada A iznosi:28

Od trenutnog sadrzaja varijable A se oduzima 8.Sada A iznosi:20

Trenutni sadrzaj varijable A se mnozi sa 3. Sada A iznosi:60

Page 19: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Kraj...

PRIMJER 19:

Potrebno je unijeti dva logička podatka A i B. Ispisuje se negacija od A, vrijednost (A I B) te (A ILI B).

RJEŠENJE:

#include<iostream>

#include <conio.h>

using namespace std;

int main()

{ bool a,b;

cout<<"Vrijednost logickog podatka A=";

cin>>a;

cout<<"Vrijednost logickog podatka B=";

cin>>b;

cout<<endl<<"Ako je logicki podatak A="<<a

<<" tada je suprotno od A="<<!a<<endl;

cout<<"Za A="<<a<<" i B="<<b<<" (A I B)="<<(a&&b)<<endl;

cout<<"Za A="<<a<<" i B="<<b<<" (A ILI B)="<<(a||b)<<endl;

getch();

return 0;

}

EKRAN:

Vrijednost logickog podatka A=0

Vrijednost logickog podatka B=1

Ako je logicki podatak A=0 tada je suprotno A=1

Za A=0 i B=1 (A I B)=0

Page 20: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Za A=0 i B=1 (A ILI B)=1

PRIMJER 20:

Potrebno je unijeti dva cijela broja. Nakon toga se ti brojevi uspoređuju (<, >, ==, !=) i ispisuje se rezultat usporedbe.

RJEŠENJE:

include<iostream>

#include <conio.h>

using namespace std;

int main()

{

int a,b;

cout<<"Vrijednost prvog broja=";

cin>>a;

cout<<"Vrijednost drugog broja=";

cin>>b;

cout<<endl<<"Je li "<<a<<"<"<<b<<" odgovor: "<<(a<b)<<endl;

cout<<endl<<"Je li "<<a<<">"<<b<<" odgovor: "<<(a>b)<<endl;

cout<<endl<<"Je li "<<a<<"=="<<b<<" odgovor: "<<(a==b)<<endl;

cout<<endl<<"Je li "<<a<<"!="<<b<<" odgovor: "<<(a!=b)<<endl;

getch();

return 0;

}

EKRAN:

Vrijednost prvog broja = 5

Vrijednost drugog broja =12

Je li 5<12 odgovor: 1

Page 21: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Je li 5>12 odgovor: 0

Je li 5==12 odgovor: 0

Je li 5!=12 odgovor: 1

PRIMJER 21:

Potrebno je sabrati(zbrojiti) sve prirodne troznamenkaste(trocifrene) brojeve.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int brojac,zbroj;

cout<<"Program zbraja sve prirodne trocifrene brojeve."<<endl;

zbroj=0;

for(brojac=100;brojac<=999;brojac++)

{

zbroj=zbroj+brojac;

}

cout<<"Suma(zbroj) svih prirodnih troznamenkastih(trocifrenih) brojeva je " <<zbroj<<endl;

return 0;

}

EKRAN:

Program zbraja sve trocifrene brojeve.

Suma(zbroj) svih prirodnih troznamenkastih(trocifrenih)brojeva je 494550

PRIMJER 22: Potrebno je sabrati ( zbrojiti) N odabranih prirodnih brojeva.

Page 22: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

RJEŠENJE:

include<iostream>

using namespace std;

int main()

{

int broj,brojac,zbroj,N;

zbroj=0;

cout<<"Upisi koliko brojeva zelis sabrati: ";

cin>>N;

for (brojac=1;brojac<=N;brojac++)

{

cout<<"Upisi broj: ";

cin>>broj;

zbroj=zbroj+broj;

}

cout<<"Zbroj (suma) unesenih brojeva je "<<zbroj<<endl;

return 0;

}

EKRAN:

Upisi koliko brojeva zelis sabrati: 4

Upisi broj: 34

Upisi broj: 5

Upisi broj: 103

Upisi broj: 22

Zbroj(suma) unesenih brojeva je 164

Page 23: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

PRIMJER 23:

Potrebno je ispisati prvih N neparnih brojeva.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

cout<<"Program ispisuje prvih N neparnih brojeva."<<endl;

int n,i,br;

cout<<"Upisi zeljeni broj neparnih brojeva: ";

cin>>n;

for(i=1;i<=n;i++)

{

br=(2*i-1);

cout<<br<<" ";

}

cout<<endl;

return 0;

}

EKRAN:

Program ispisuje prvih N neparnih brojeva.

Upisi zeljeni broj neparnih brojeva: 5

1 3 5 7 9

PRIMJER 24:

Potrebno je prebrojiti i sabrati sve parne prirodne brojeve iz raspona od 1 do N .

Page 24: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int broj,brojac,zbroj,N;

cout<<"Program prebrojava i zbraja sve parne prirodne \

brojeve iz raspona od 1 do N."<<endl;

broj=0;

zbroj=0;

cout<<"Upisi gornju granicu raspona: ";

cin>>N;

for(brojac=1;brojac<=N;brojac++)

{

if(brojac%2==0)

{

zbroj=zbroj+brojac;

broj=broj+1;

}

}

cout<<"U intervalu od 1 do "<<N<<" ima "<<broj <<" brojeva \

djeljivih sa 2. Njihov zbroj je "<<zbroj<<endl;

return 0;

}

EKRAN:

Page 25: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Program prebrojava i zbraja sve parne prirodne brojeve iz raspona od 1 do N .

Upisi gornju granicu raspona: 23

U intervalu od 1 do 23 ima 11 brojeva djeljivih sa 2.Njihov zbroj je 132

PRIMJER 25:

Treba unijeti dva realna broja pa izračunati i ispisati njihov cjelobrojni kvocijent i ostatak dijeljenja. Potrebno je načiniti i provjeru. Ako je djelitelj 0, treba ispisati poruku:

RJEŠENJE:

include<iostream>

#include<cmath >

using namespace std;

int main()

{

float a,b,ost,rez;

cout<<"Upisi djeljenik:";

cin>>a;

cout<<"Upisi djelitelj:";

cin>>b;

if (b==0)

cout<<"Ne moze se dijeliti sa 0."<<endl

else

{

rez=a/b;

rez=floor(rez);

ost=fmod(a,b);

cout<<endl<<a<<"/"<<b<<"="<<rez<<" cijelih i "

Page 26: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

<<ost<<" ostatka."<<endl;

cout<<endl<<"Provjera: "<<rez<<"*"<<b<<"+"<<ost

<<"="<<rez*b+ost<<endl;

}

return 0;

}

EKRAN:

Upisi djeljenik: 29

Upisi djrlitelj: 3

29/3=9 cijelih i 2 ostatka.

Provjera: 9*3+2=29

PRIMJER 26:

Napisati program koji za unijeti broj ispisuje da li je pozitivan ili negativan te njegovu apsolutnu vrijednost.Ako je upisana 0 „Pogresan unos!.Ponovi!“.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int a;

upis:cout<<"Upisi broj razlicit od 0:";cin>>a;

if(a==0)

{

cout<<"Pogresan unos. Ponovi!"<<endl;

goto upis;

}

Page 27: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

if(a<0)

{

cout<<"Broj "<<a<<" je negativan. Njegova apsolutna\

vrijednost je "<<-a<<endl;

}

else

{

cout<<"Broj "<<a<<" je pozitivan. Njegova apsolutna\

vrijednost je "<<a<<endl;

}

return 0;

}

EKRAN:

Upisi broj različit oa 0 : -37

Broj -37 je negativan.Njegova apsolutna vrijednost je 37

PRIMJER 27:

Napisati program koji stepene Celzija pratvara u stepene Reaumur i Fahrenheit.

RJEŠENJE:

/*Program pretvara stepene Celzija u Reaumur-ove i Fahrenheit-ove*/

#include <iostream>

#include <cmath>

using namespace std;

int main (){

int C,R,F;

cout<<"Upisi stepene CELZIJ-a: ";

Page 28: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cin>>C;

R=4*C/5;

F=(9*C/5)+32;

cout<<"Reaumur = "<<R<<endl;

cout<<"Fahrenheit = "<<F<<endl;

return 0;

}

EKRAN:

Upisi stepene CELZIJ-a : 40

Reaumur = 32

Fahrenheit = 104

PRIMJER 28:

Napisati program koji za unijeti broj ispisuje njegove djelitelje.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int brojac,N;

cout<<"Program ispisuje djelitelje odabranog \

prirodnog broja." <<endl;

upis:cout<<"Upisi prirodni broj: ";

cin>>N;

if (N<=0)

goto upis;

Page 29: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<"Djelitelji broja "<<N<<" su: ";

for (brojac=1;brojac<=N;brojac++)

{

if(N%brojac==0)

cout<<brojac<<" ";

}

cout<<endl;

return 0;

}

EKRAN:

Program ispisuje djelitelje odabranog prirodnog broja.

Upisi prirodni broj: 123

Djelitelji broja 123 su: 1 3 41 123

PRIMJER 29:

Napisati program koji ispisuje sve trocifrene brojeve čiji je zbir cifara 5.

RJEŠENJE:

include<iostream>

using namespace std;

int main()

{

int i,pom,j,d,s;

cout<<"Program ispisuje sve trocifrene brojeve \

ciji je zbir cifri 5."<<endl;

cout<<"Brojevi ciji je zbir cifri 5 su: "<<endl;

Page 30: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for(i=100;i<=999;i++)

{

pom=i;

j=pom%10;

d=(pom/10)%10;

s=pom/100;

if(j+d+s==5)

cout<<i<<endl;

}

return 0;

}

EKRAN:

Program ispisuje sve trocifrene brojeve ciji je zbir cifri 5.

Brojevi ciji je zbir cifri 5 su:

104

113

122

131

140

203

212

221

230

302

311

Page 31: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

320

401

410

500

PRIMJER 30:

Napisati program koji ispisuje na ekranu da li je unijeti broj prost ili ne.Broj je prost ako je djeljiv samo sa 1 i samim sobom.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int brojac,N;

cout<<"Program ispituje je li odabrani prirodni broj prost.";

upis:cout<<endl<<"Upisi prirodni broj: ";

cin>>N;

if (N<=0)

goto upis;

for (brojac=2;brojac<=(N-1);brojac++)

{

if(N%brojac==0)

{

cout<<"Broj "<<N<<" nije prost."<<endl;

goto kraj;

}

}

Page 32: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<"Broj "<<N<<" je prost."<<endl;

kraj:return 0;

}

EKRAN:

Program ispituje je li odabrani broj prost.

Upisi prirodni broj : 151

Broj 151 je prost.:

PRIMJER 31:

Ispisuje sve savršene prirodne brojeve iz raspona od 1 do 10000. Broj je savešen ako je jednak sumi(zbiru) svojih djelitelja npr: 28 = 1 + 2 +4 +7 + 14.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int br,brojac,zbroj;

cout<<"Program ispisuje sve savrsene prirodne brojeve iz \ raspona od 1 do 10000."<<endl;

cout<<"Savrseni brojevi su: ";

for(br=1;br<=10000;br++)

{

zbroj=0;

for (brojac=1;brojac<=(br-1);brojac++)

{

if(br%brojac==0)

zbroj=zbroj+brojac;

Page 33: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

}

if(zbroj==br)

cout<<br<<" ";

}

return 0;

}

EKRAN:

Program ispisuje sve savrsene prirodne brojeve iz raspona od 1 do 10000.

Savrseni brojevi su: 6 28 496 8128

PRIMJER 32:

Napisati program koji ispituje da li je upisani prirodni broj savršen.Broj je savešen ako je jednak sumi (zbiru) svojih djelitelja npr: 6 = 1 + 2 +3.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int brojac,zbroj,N;

cout<<"Program ispituje da li je odabrani prirodni broj savrsen.";

upis:cout<<endl<<"Upisi prirodni broj: ";

cin>>N;

zbroj=0;

if (N<=0)

goto upis;

for (brojac=1;brojac<=(N-1);brojac++)

{

Page 34: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

if(N%brojac==0)

{

zbroj=zbroj+brojac;

}

}

if(zbroj==N)

cout<<"Broj "<<N<<" je savrsen."<<endl;

else

cout<<"Broj "<<N<<" nije savrsen."<<endl;

return 0;

}

EKRAN:

Program ispituje da li je odabrani prirodni broj savrsen.

Upisi prirodni broj: 8128

Broj 8128 je savrsen

PRIMJER 33:

Napisati program koji ispituje da li je upisani prirodni broj armstrongov. Armstrongov broj je broj koji je jednak sumi kubova svoji cifara npr. 153 = 13+53+33 = 1+125+27.

RJEŠENJE:

#include <iostream>

#include <cmath>

using namespace std;

int main ()

{

int num,r,sum=0,temp;

printf("\nUnesi broj N = : ");

Page 35: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

scanf("%d",&num);

temp=num;

while(num!=0)

{

r=num%10;

num=num/10;

sum=sum+(r*r*r);

}

if(sum==temp)

printf("\nBroj %d jeste armstrongov broj.",temp);

else

printf("\nOvaj broj %d nije armstrongov broj.",temp);

return 0;

}

PRIMJER 34:

Program koji ispisuje armstrongove brojeve iz intervala 1-500.( Armstrongov broj je broj koji je jednak sumi kubova svoji cifara npr. 407 = 43+03+73 = 64+0+343 ).

RJEŠENJE: #include<stdio.h>#include<conio.h>main(void){int i,j,k,suma;printf("\n-Armstrongovi brojevi iz intervala 1-500 jesu:-\n");for(i=1;i<=500;i++){j=i;suma=0;while(j!=0){k=j%10;suma+=(k*k*k);j/=10;

Page 36: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

}if(suma==i)printf(" %d",i);}getch();}

EKRAN:

-Armstrongovi brojevi iz intervala 1-500 jesu:-

1 153 370 407

PRIMJER 35:

Program provjerava je li upisani broj veći ili manji od 100, te je li paran ili neparan.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int a;

cout<<"Upisi broj razlicit od 0:";cin>>a;

if (a==100)

{

cout<<"Unesen je broj 100, on je paran"<<endl;

}

else

if (a<100)

{

cout<<"Uneseni broj je manji od 100 i ";

if (a%2==0)

cout<<" paran je."<<endl;

Page 37: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

else

cout<<" neparan je."<<endl;

}

else

{

cout<<"Uneseni broj je veci od 100 i ";

if (a%2==0)

cout<<" paran je."<<endl;

else

cout<<" neparan je."<<endl;

}

return 0;

}

EKRAN:

Upisi broj razlicit od 0: 236

Uneseni broj je veci od 100 i paran je.

PRIMJER 36:

Program provjerava je li upisani broj >= 0. Ako je, računa se kvadratni korijen tog broja, a ako nije ispisuje se poruka: Broj je manji od 0, ponovi upis. i ponavlja se unos broja.

RJEŠENJE:

#include<iostream>

#include<cmath>

using namespace std;

int main()

Page 38: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

{

float broj,rez;

upis:cout<<"Upisi broj:";

cin>>broj;

if (broj<0)

{

cout<<"Broj je manji od 0, ponovi upis"<<endl;

goto upis;

}

else

{

rez=sqrt(broj);

cout<<"Kvadratni korijen od "<<broj<<" je "<<rez<<endl;

}

return 0;

}

EKRAN:

Upisi broj:578

Kvadratni korijen od 578 je 24.0416

PRIMJER 37:

Treba unijeti cijeli broj pa provjeriti je li paran. Ako je paran, treba izračunati i ispisati njegovu treću potenciju, a ako nije, apsolutnu vrijednost.

RJEŠENJE:

#include <iostream>

#include <cmath>

using namespace std;

Page 39: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

int main ()

{

int i,rez1,rez2;

cout<<"Unesi broj:";

cin>>i;

if (i%2==0)

{

rez1=i*i*i;

cout<<"Broj "<<i<<" je paran, a njegova \

treca potencija iznosi "<<rez1<<endl;

}

else

{

rez2=abs(i);

cout<<"Broj "<<i<<" je neparan, a njegova \

apsolutna vrijednost iznosi "<<rez2<<endl;

}

return 0;

}

EKRAN:

Unesi broj:6

Broj 6 je paran, a njegova treca potencija iznosi 216

PRIMJER 38:

Napisati program koji od tri upisana broja na ekranu ispisuje najmanji..

RJEŠENJE:

Page 40: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

#include<iostream>

using namespace std;

int main()

{

float a,b,c,min;

cout<<"Upisi prvi broj:";

cin>>a;

cout<<"Upisi drugi broj:";

cin>>b;

cout<<"Upisi treci broj:";

cin>>c;

min=a;

if (b<min)

{min=b;}

if (c<min)

{min=c;}

cout<<"Ako se upisu brojevi: "<<a<<", "<<b<<" i "<<c

<<" najmanji od njih je "<<min<<endl;

return 0;

}

EKRAN:

Upisi prvi broj:154

Upisi drugii broj:28

Upisi treci broj:375

Page 41: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Ako se upisu brojevi: 154, 28, i 375 najmanji od njih je 28

PRIMJER 39:

Potrebno je prebrojiti sve prirodne brojeve djeljive sa 3 iz raspona od 1 do 9999.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int broj,brojac;

cout<<"Program prebrojava sve prirodne brojeve djeljive sa \

3 iz raspona od 1 do 9999."<<endl;

broj=0;

for(brojac=1;brojac<=9999;brojac++)

{

if(brojac%3==0)

broj=broj+1;

}

cout<<"U intervalu od 1 do 9999 ima "<<broj

<<" brojeva djeljivih sa 3."<<endl;

return 0;

}

EKRAN:

Program

Prebrojava sve prirodne brojeve djeljive sa 3 iz raspona od 1 do 9999.

U intervalu od 1 do 9999 ima 3333 brojeva djeljivih sa 3.

Page 42: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

PRIMJER 40:

Potrebno je ispisati tekst *** u obliku slova V.

RJEŠENJE:

#include<iostream>

#include<iomanip>

using namespace std;

int main()

{

int i,s,p;

s=10;

p=40;

for(i=1;i<=10;i++)

{

cout<<setw(s)<<"***"<<setw(p)<<"***"<<endl;

s=s+2;

p=p-4;

}

return 0;

} // Ukljucivanje bibilioteke u program

#include <iostream>

using namespace std;

// Definisanje glavne funkcije programa

int main(){

// Definisanje varijabli

int dots;

Page 43: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

// Ispis odgovarajuce poruke na ekranu

cout << "Koliko tackica zelite: ";

// Beskonacna for petlja, prekinut cemo je sa funkcijom break...

for(;;) {

// Unos broja...

cin >> dots;

// Ukoliko je unesena vrijednost broj izlazi se iz for petlje

// u suprotnom se ispisuje odgovarajuca poruka, brise ulazni bufer

// i znakovi upisani u bufer i ponovo se unosi broj...

if(cin) break;

cout << "Ne zafrkajite se :P, unesite broj: " << endl;

cin.clear();

cin.ignore(10000, '\n');

}

// Nakon sto se unese ispravan broj, ispis poruke na ekran...

cout << dots << " tackica, samo za vas :) -->" << endl;

// I nakon poruke, jos ispis tackica...

for(int brojac=0;brojac<dots;brojac++) cout << ".";

// Brisanje ulaznog bufera i kraj programa...

cin.ignore(1000, '\n');

getchar();

return 0;

}

PRIMJER 41:

Napisati program koji upisani broj rastavlja na proste faktore.

Page 44: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

RJEŠENJE:

#include <iostream>

using namespace std;

int main()

{

int br, prbr;

cout<<"Rastavljanje broja na proste faktore"<<endl;

unos:cout<<"Upisi broj veci od 0:";

cin>>br;

if(br<=0)

{

cout<<"Treba unijeti broj veci od 0"<<endl;

goto unos;

}

else

{

prbr=2;

cout<<br<<" = 1";

dj2:if(br==1)

{

goto kraj;

}

else

{

dj1:if(br%prbr==0)

Page 45: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

{

cout<<" * "<<prbr;

br=br/prbr;

goto dj2;

}

else

{

prbr=prbr+1;

goto dj1;

}

}

}

kraj:cout<<endl;

return 0;

}

EKRAN:

Rastavljanje broja na proste faktore

Upisi broj veci od 0:24

24=1*2*2*2*3

II-i dioPRIMJER 42:

Page 46: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Za upisane stranice b i a po našem izboru računa P i O kvadrata i pravougaunika(pravokutnika).

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int a,b,k;

cout<<"Upisi stranice:"<<endl;

cout<<"a = ";

cin>>a;

cout<<"b = ";

cin>>b;

cout<<"Za kvadrat upisi 1 "<<",a za pravougaonik 2 : "<<endl;

cin>>k;

if(k==1)

{

cout<<"Pavrsina kvadrata je P = "<<a*a<<" ,a obim O = " <<4*a<<endl;

}

if(k==2)

{

cout<<"Pavrsina pravougaonika je P = "<<a*b<<" ,a obim O = " <<2*(a+b)<<endl;

}

return 0;

}

Page 47: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

EKRAN:

Upisi stranice:

a=2

b=4

Za kvadrat upisi 1 ,a za pravougaonik 2:

2

Povrsina pravougaonika je P = 8 ,a obim O = 12

PRIMJER 43:

Za upisane a ,b,c, i r po našem izboru računa P i V kocke, kvadra ili lopte(kugle).

RJEŠENJE:

#include<iostream>

#include<cmath>

using namespace std;

int main()

{

float a,b,c,r,k,pi;

pi=3.14;

cout<<"Program ispisuje (P) i (V) kocke ili kvadra ili lopte(kugle):"<<endl;

cout<<"Upisi stranice:"<<endl;

cout<<"a = ";

cin>>a;

cout<<"b = ";

cin>>b;

cout<<"c = ";

cin>>c;

Page 48: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<"r = ";

cin>>r;

cout<<"Kocka (1)"<<endl;

cout<<"Kvadar (2) "<<endl;

cout<<"Lopta-kugla (3) "<<endl;

cin>>k;

if(k==1)

{

cout<<"Pavrsina kocke je P = "<<6*a*a<<", a zapremina V = " <<a*a*a<<endl;

}

if(k==2)

{

cout<<"Pavrsina kvadra je P = "<<2*((a*b)+(a*c)+(b*c))<<", a volumen V = " <<a*b*c<<endl;

}

if(k==3)

{

cout<<"Pavrsina lopte je P = "<<4*r*r*pi<<", a volumen V = " <<4*r*r*r*pi/3<<endl;

}

return 0;

}

PRIMJER 44:

Napisati program koji dekadni broj ispisuje kao hexadecimalni i oktalni broj.

RJEŠENJE:

#include <iostream>

Page 49: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

#include <cmath>

using namespace std;

int main() {

int broj;

cout<<" Unesi broj : ";

cin >> broj;

cout <<"Hexadekadno = "<< hex << broj << endl; //ispisuje upisani broj u hexadekadskom obliku

cout << "Oktalno = "<<oct << broj << endl; //ispisuje upisani broj u oktalnom obliku

cout << "Dekadno = "<<dec << broj << endl; //vraca bazu ispisa u dekadski sustav (inace bi se nastavilo u oktalnomcout << sin << broj << endl;

return 0;

}

EKRAN:

Unesi broj : 60

Hexadekadno = 3c

Oktalno = 74

Dekadno = 60

PRIMJER 45:

Napisati program koji dekadni broj ispisuje kao binarni.

RJEŠENJE:

#include <iostream>

using namespace std;

int main() {

int broj, i=0; // i nam je index kojim označavamo poziciju u polju, odmah ga postavimo na 0 jer je prvi element polja 0.

int binarni[11];

Page 50: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<"Unesi broj N = ";

cin >> broj;

cout<<"Binarno je :";

do {

binarni[i++]=broj%2; // stavi rezultat dijeljenja na i-to mjesto u polju i uvecaj i za 1

broj/=2; // podijeli broj s 2

}

while (broj); // i to ponavljaj sve dok je rezultat razlicit od nule

do {

cout << binarni[--i]; // umanji i za 1 i ispisi i-ti element polja

} while (i); // i to ponavljaj sve dok je i razlicit od nule

return 0;

}

EKRAN:

Unesi broj N = 234

Binarno je :11101010

PRIMJER 46:

Napisati program za stepenovanje broja (ako je poznata baza i eksponent).

RJEŠENJE:

#include <iostream>

using namespace std;

double Stepen (int baza, int eksponent)

{

double rezultat = 1;

for (int i = 0; i < eksponent; ++i)

Page 51: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

rezultat *= baza;

return rezultat;

}

main ()

{

int a,b;

cout << "Unesi bazu:";

cin >> a;

cout << "\nUnesi eksponent:";

cin >> b;

cout << a<<"^" <<b<<" = " << Stepen(a,b) << '\n';

system("PAUSE");

}

EKRAN:

Unesi bazu : 3

Unesi eksponent : 5

3^5 = 243

PRIMJER 47:

Napisati program za izbor matematske radnje za upisana dva broja.

RJEŠENJE:

#include <cstdlib>

#include <iostream>

using namespace std;

int main()

{

Page 52: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

float a,b,c,d,e,f,g,h;

int i;

printf ("Unesi brojeve : ");

scanf ("%f %f",&a,&b);

printf ("\n1 - zbrajanje");

printf ("\n2 - oduzimanje");

printf ("\n3 - mnozenje");

printf ("\n4 - dijelenje");printf("\n Morate odabrati 1,2,3 ili 4");

printf ("\n Tvoj izbor : ");

scanf ("%i", &i);

switch(i)

{

case 1:

printf("\n Zbir je %f",a+b);

break;

case 2:

printf ("\n Razlika je %f",a-b);

break;

case 3:

printf ("\nProizvod je %f",a*b);

break;

case 4:

printf ("\nKvocjent je %f",a/b);

if (b=0)

Page 53: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

printf("\nNije moguce dijeliti s nulom");

break;

default:

printf("\n Morate odabrati 1,2,3 ili 4");

break;

system ("PAUSE");

return 0;

}

}

EKRAN:

Unesi brojeve : 23

7

1 - zbrajanje

2 - oduzimanje

3 - mnozenje

4 – dijelenje

Morate odabrati 1,2,3 ili 4

Tvoj izbor : 4

Kvocijent je 3.285714

PRIMJER 48:

Isti primjer uz upotrebu naredbe if.

RJEŠENJE:

#include<iostream>

Page 54: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

#include<cmath>

using namespace std;

int main ()

{

float a,b,k;

cout<<"Unesite dva broja :"<<endl;

cout<<" a = ";

cin>>a;

cout<<" b = ";

cin>>b;

cout<<"Morate odabrati 1,2,3 ili 4 :"<<endl;

cout<<" 1 - Sabiranje "<<endl;

cout<<" 2 - Oduzimanje "<<endl;

cout<<" 3 - Mnozenje "<<endl;

cout<<" 4 - Dijelenje "<<endl;

cout<<" Tvoj izbor je : ";

cin>>k;

cout<<endl;

if(k==1)

{

cout<<"Zbir je : "<<a+b<<endl;

}

if(k==2)

{

cout<<"Razlika je : "<<a-b<<endl;

Page 55: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

}

if(k==3)

{

cout<<"Proizvod je : "<<a*b<<endl;

}

if(k==4)

{

cout<<"Kolicnik je : "<<a/b<<endl;

}

return 0;

}

PRIMJER 49:

Napisati program koji ispisuje pozdrav koliko puta želimo.

RJEŠENJE:

/* program koji pozdravlja korisnika */#include <iostream>using namespace std;int main (){int broj;cout<<"Koliko puta vas treba pozdraviti:";cin>>broj;while(broj>0){cout<<"Zdravo\n";broj=broj-1;}cout<<"To je sve...\n";system("Pause");return 0;}

PRIMJER 50:

Napisati program koji upisano vrijeme u sekundama pretvara u sate.

RJEŠENJE:

Page 56: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

#include<stdio.h>

#include<conio.h>

main(void)

{

int sec;

float sat;

do

{ printf("\nUpisi vrijeme u sekundama:");

scanf("%d",&sec);

sat=sec/3600.;

printf("\n%d sekundi je %f sati",sec,sat);

}

while(sec!=0);

}

PRIMJER 51:Napisati program koji za upisane parametre kvadratne jednačine oblika ax2+bx+c=0 ispisuje na ekranu rješenja jednačine ako postoje ,a ako nisu moguća ispiše da nema rješenja.

RJEŠENJE:#include<iostream>#include<cmath>using namespace std;int main (){ float a,b,c;cout<<“Unesi koeficijente kvadratne jednacine :“<<endl;cout<<“a = „;cin>>a;cout<<“b = „;cin>>b;cout<<“c = „;cin>>c;float diskr=(b*b)-(4*a*c);cout<<“Jednacina ima „;if(diskr==0)cout<<“dvostruki realni korijen,rjesenje je: X1 = X2 = „<<(-b/(2*a))<<endl;

Page 57: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

else if(diskr>0)cout<<“dva realna rjesenja,rjesenja su: X1 = „<<(-b+sqrt(diskr))/(2*a)<<“ i X2 = „<<(-b-sqrt(diskr))/(2*a)<<endl;elsecout<<“dva kompleksna korjena „<<endl;getchar ();return 0;}

Primjer 52: Željeznička kompanija naplaćuje karte na sljedeći način:a) Djeca (ispod 16 godina) – besplatnob) Odrasli (16 godina i stariji) – puna cijenac) Penzioneri (60 godina i stariji) – pola cijeneNapisati program koji na ulazu prihvata godine starosti putnika, a na izlazu daje informaiju u koju kategoriju putnik pripada. RJEŠENJE:// Sljedeci program na ulazu trazi godine putnika, dok na izlazu, // na osnovu njegovih godina daje koliki iznos cijene karte placa .#include<iostream>using namespace std;int main(){int Starost;cout<<"Unesite godine putnika: "<<endl;cin>>Starost;if (Starost < 16)cout<<"Ovaj putnik putuje besplatno"<<endl;if (Starost >= 16) if (Starost <= 59)cout<<"Ovaj putnik placa puni iznos cijene karte"<<endl;if (Starost >= 60)cout<<"Ovaj putnik placa pola iznosa cijene karte"<<endl;return 0;}PRIMJER 53:Napisati program za pogađanje slučajno generisanog broj a rasponu 1 do 1000.Program ispisuje „MANJE“ ,“VISE“,a kada se pogodi ispisuje „BINGOOO...“.

RJEŠENJE:

//pogađanje broja

#include <iostream>

#include <cstdlib>

#include <ctime>

#include <conio.h>

Page 58: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

using namespace std;

int main() {

int raspon=1000;

srand( static_cast<unsigned>( time(0) ) );

int trazeniBroj = rand() % raspon + 1;

int mojBroj;

int brojPokusa=0;

cout << "POGODITE SLUCAJNO GENERIRAN BROJ IZMEDJU 1 i 1000"

<< endl << endl;

do{

cout<< ++brojPokusa<<". pokusaj: ";

cin >> mojBroj;

if(mojBroj > trazeniBroj)

cout<< " Manje.\n";

else if (mojBroj < trazeniBroj)

cout<<" VISE.\n";

} while(mojBroj != trazeniBroj);

cout << endl << " B I N G O O O ...\n";

return 0;

}

PRIMJER 54:

Poznata Moievrova teorema za kompleksne brojeve tvrdi da je za ma kakve realne brojeve x i n: (cos x + i sin x) n = cos n x + i sin n x .Napisati program koji ce za realne brojeve x i n

Page 59: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

unesene sa tastature izracunati lijevu i desnu stranu ovog izraza i ispisati ih na ekranu, koristeci kompleksni tip podataka. Na nekoliko primjera provjeriti da li se zaista dobijaju jednake vrijednosti. RJEŠENJE:# include <iostream># include <cmath># include <complex>using namespace std;int main() {// Definisanje i unos dva realna brojadouble x, n;cout << "Unesi realan broj \"x\": ";cin >> x;cout << "Unesi realan broj \"n\": ";cin >> n;// Racunanje prvog dijela (prvidio je rezultat)complex<double> prvidio(cos(x), sin(x));prvidio=pow(prvidio,n);// Racunanje drugog dijela (drugidio je rezultat)complex<double> drugidio(cos(n*x), sin(n*x));// Ispis rezultatacout << "Lijeva strana jednacine je: " << prvidio << " a desna: " << drugidio<< endl;getchar();return 0;}

PRIMJER 55:

Napisati program koji ucitani tekst štampa naopako. Tekstse ucitava s tastature sve do znaka za novi red. RJEŠENJE:#include<iostream>#include<cstring>using namespace std;int main(){// Ispis poruke "Unesite tekst"...cout << "Unesite tekst: ";// Definisanje i unos teksta koristeci funkciju getc() iz biblioteke "cstring"char tekst[100];gets(tekst);// Pridruzivanje duzine teksta varijabli "duzina", pomocu funkcije strlen()...int duzina=strlen(tekst);// Ispis teksta "slovo po slovo" krenuvsi sa kraja niza tekst[]...for(int i=duzina-1;i>=0;i--) cout << tekst[i];// Kraj programagetchar();

Page 60: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

return 0;}

PRIMJER 56:

Napišite program koji traži od korisnika da unese niz recenica, pri cemu se broj rečenica prethodno unosi sa tastature.Za svaku unesenu recenicu dinamicki alocirajte prostor, uz vodenje evidencije o adresi svake alocirane recenice u dinamickom nizu pokazivaca na pocetke svake od recenica. Nakon toga, trebaispisati unesene recenice sortirane u abecedni poredak (odnosno uporedak po ASCII kodovima). Sortiranje obavite rucno, bilo kojim postupkom koji Vam je poznat (drugim rijecima, nemojte koristiti gotove funkcije za sortiranje, poput funkcije "sort" iz biblioteke "algorithm". RJEŠENJE:#include <iostream>#include <string>using namespace std;int main(){// Unos broja recenicaint broj_rec;cout << "Unesite broj recenica: ";cin >> broj_rec;cin.ignore(10000, '\n'); // Ignorisanje nepotrebih znakova iz buferachar **recenice = new char*[broj_rec]; // Definisanje dvostrukog pokazivacafor(int i=0; i<broj_rec; i++) { // For petlja u kojoj se unosi n recenica// Definisanje pomocnog niza pom i unos recenice u njegachar pom[1000];cout << i+1 << ": ";cin.getline(pom, 1000);// Definisanje niza na niz (matrica, i to grbava) (pomocu pokazivaca)recenice[i] = new char[strlen(pom) + 1];// Upisivanje recenice iz pom na i-to mjesto u nizustrcpy(recenice[i], pom);}// Pomocni stringovi, uveo sam ih zbog efikasnije provjere operacija < >string pom1, pom2;// Proces sortiranja, metodom nalazenja najveceg i stavljanje na vrhfor (int i=0;i<broj_rec-1;i++) for (int j=i+1;j<broj_rec;j++){pom1=recenice[i];pom2=recenice[j];if (pom1>pom2){char pomocna[1000];strcpy(pomocna, recenice[i]);strcpy(recenice[i], recenice[j]);strcpy(recenice[j], pomocna);}}// Ispis sortiranog nizacout << endl << "Sortirano: " << endl;for(int k = 0; k < broj_rec; k++) cout << k+1 << ": " << recenice[k] << endl;// Kraj programa

Page 61: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

getchar();return 0;}

PRIMJER 57:

Napišite program koji prvo traži da se sa tastature unese rečenica, a zatim ispisuje svaku riječ te rečenice u posebnom redu, kao i informaciju koliko ta rečenica ima slova (ne računajuci interpunkcijske znakove) i riječi. Obratite pažnju da riječi rečenice mogu biti razdvojene sa više od jednog razmaka,kao i da se na samom početku i na samom kraju rečenice mogu također nalaziti razmaci. Za realizaciju koristite tip “string” i odgovarajuće manipulacije sa stringovima. RJEŠENJE:# include <iostream># include <string>using namespace std;int main(){// Unos recenicecout << "Unesi recenicu: " << endl;string recenica;getline(cin, recenica);// Ispis rijecicout << endl << "Rijeci iz recenice: " << endl << endl;bool istina=false;int br=0, br1=0;for (int i=0; i<=recenica.length(); i++) {if (((recenica[i]>='a')&&(recenica[i]<='z'))||((recenica[i]>='A')&&(recenica[i]<='Z'))){ cout << recenica[i]; br++; istina=true; continue; }if (istina) {cout << endl; istina=false; br1++; }}// Ispis broja slovacout << endl << "Recenica ima " << br << " slova i " << br1 << " rijeci!";// Kraj programareturn 0;}

PRIMJER 58:

Napisati program koji učitani tekst štampa naopako. Tekstse ucitava s tastature sve do znaka za novi red. RJEŠENJE:#include<iostream>#include<cstring>using namespace std;int main(){// Ispis poruke "Unesite tekst"...cout << "Unesite tekst: ";// Definisanje i unos teksta koristeci funkciju getc() iz biblioteke "cstring"char tekst[100];

Page 62: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

gets(tekst);// Pridruzivanje duzine teksta varijabli "duzina", pomocu funkcije strlen()...int duzina=strlen(tekst);// Ispis teksta "slovo po slovo" krenuvsi sa kraja niza tekst[]...for(int i=duzina-1;i>=0;i--) cout << tekst[i];// Kraj programagetchar();return 0;}

PRIMJER 59:

Napisati program koji racuna sumu trocifrenih prirodnih brojeva, kojima je zadnja cifra 2 puta veca od prve cifre.Rezultat ispisati na ekran. RJEŠENJE:#include <iostream>using namespace std;main(){// Ispis poruke "Brojim..." :)cout << "Brojim... :)" << endl;// Definisanje varijable "suma" tipa int...int suma=0;/* Trostruka petlja, i se vrti od 0 do 9 i predstavlja cifru stotica, j se isto vrti od 0 do 9 i predstavlja cifru desetica, a k predstavlja cifru jedinica. Kada je uslov u trecoj for petlji zadovoljen tada se "suma" uvecava za taj broj, ako nije zadovoljen prelazi se na iduci broj. */for (int i=1;i<10;i++)for (int j=0;j<10;j++)for (int k=0;k<10;k++) {if ((k>2*i)) suma=suma+(i*100+j*10+k);}// Ispis sume na ekranu...cout << "Suma je:" << suma << endl;getchar();return 0;}

PRIMJER 60:Napisati program koji ce ispisati na ekranu zeljeni broj tackica, broj tackica se unosi na ulazu... RJEŠENJE:// Ukljucivanje bibilioteke u program#include <iostream>using namespace std;// Definisanje glavne funkcije programaint main(){// Definisanje varijabliint dots;// Ispis odgovarajuce poruke na ekranucout << "Koliko tackica zelite: ";// Beskonacna for petlja, prekinut cemo je sa funkcijom break...

Page 63: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for(;;) {// Unos broja...cin >> dots;// Ukoliko je unesena vrijednost broj izlazi se iz for petlje// u suprotnom se ispisuje odgovarajuca poruka, brise ulazni bufer// i znakovi upisani u bufer i ponovo se unosi broj...if(cin) break;cout << "Ne zafrkajite se :P, unesite broj: " << endl;cin.clear();cin.ignore(10000, '\n');}// Nakon sto se unese ispravan broj, ispis poruke na ekran...cout << dots << " tackica, samo za vas :) -->" << endl;// I nakon poruke, jos ispis tackica...for(int brojac=0;brojac<dots;brojac++) cout << ".";// Brisanje ulaznog bufera i kraj programa...cin.ignore(1000, '\n');getchar();return 0;}PRIMJER 61:

Program provjerava je li upisani broj >= 0. Ako je, računa se kvadratni korijen tog broja, a ako nije ispisuje se poruka: Broj je manji od 0, ponovi upis. i ponavlja se unos broja.

RJEŠENJE:

#include<iostream>

#include<cmath>

using namespace std;

int main()

{

float broj,rez;

upis:cout<<"Upisi broj:";

cin>>broj;

if (broj<0)

{

cout<<"Broj je manji od 0, ponovi upis"<<endl;

goto upis;

Page 64: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

}

else

{

rez=sqrt(broj);

cout<<"Kvadratni korijen od "<<broj<<" je "<<rez<<endl;

}

return 0;

}

PRIMJER 62:

Treba unijeti cijeli broj pa provjeriti je li paran. Ako je paran, treba izračunati i ispisati njegovu treću potenciju, a ako nije, apsolutnu vrijednost.

RJEŠENJE:

#include <iostream>

#include <cmath>

using namespace std;

int main ()

{

int i,rez1,rez2;

cout<<"Unesi broj:";

cin>>i

if (i%2==0)

{

rez1=pow(i,3);

cout<<"Broj "<<i<<" je paran, a njegova\

treca potencija iznosi "<<rez1<<endl;

}

Page 65: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

else

{

rez2=abs(i);

cout<<"Broj "<<i<<" je neparan, a njegova \

apsolutna vrijednost iznosi "<<rez2<<endl;

}

return 0;

}

PRIMJER 63:

Treba unijeti koordinate dvije tačke A i B, pa izračunati njihovu udaljenost u koordinatnom sustavu-sistemu.

RJEŠENJE:

#include<iostream>

#include<cmath>

using namespace std;

int main()

{

float x1,y1,x2,y2,pom,d;

cout<<"Koordinate tocke A:"<<endl;

cout<<"x1= ";

cin>>x1;

cout<<"y1= ";

cin>>y1;

cout<<"Koordinate tocke B:"<<endl;

cout<<"x2= ";

cin>>x2;

Page 66: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<"y2= ";

cin>>y2;pom=pow((x2-x1),2)+pow((y2-y1),2);

d=sqrt(pom);

cout<<"Udaljenost tocaka A("<<x1<<","<<y1 <<") i B("<<x2

<<","<<y2<<") je "<<d<<endl;

return 0;

}

PRIMJER 64:

Potrebno je sabrati(zbrojiti) N članova niza:

(1 + 1/2 + 1/3 + 1/4 + 1/5 +....+ 1/N)

RJEŠENJE:

#include <iostream>

using namespace std;

int main()

{

cout<<"Program zbraja niz (1 + 1/2 + 1/3 + 1/4 + 1/5 +....+ 1/N)"; float zbroj,brojac,N;

cout<<endl<<"Upisi zeljeni broj clanova niza: ";

cin>>N;

zbroj=0;

for(brojac=1;brojac<=N;brojac++)

{

zbroj=zbroj+1/brojac;

}

cout<<"Zbroj "<<N<<" clanova ovog niza iznosi "<<zbroj<<endl;

return 0;

Page 67: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

}

PRIMJER 65:

Potrebno je prebrojiti sve prirodne brojeve djeljive sa 8 iz raspona od 1 do 9999.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int broj,brojac;

cout<<"Program prebrojava sve prirodne brojevedjeljive sa \

8 iz raspona od 1 do 9999."<<endl;

broj=0;

for(brojac=1;brojac<=9999;brojac++)

{

if(brojac%8==0)

broj=broj+1;

}

cout<<"U intervalu od 1 do 9999 ima "<<broj

<<" brojeva djeljivih sa 8."<<endl;

return 0;

}

PRIMJER 66:

Potrebno je ispisati djelitelje upisanog prirodnog broja.

RJEŠENJE:

#include<iostream>

Page 68: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

using namespace std;

int main()

{

int brojac,N;

cout<<"Program ispisuje djelitelje odabranog \

prirodnog broja."<<endl;

upis:cout<<"Upisi prirodni broj: ";

cin>>N;

if (N<=0)

goto upis;

cout<<"Djelitelji broja "<<N<<" su: ";

for (brojac=1;brojac<=N;brojac++)

{

if(N%brojac==0)

cout<<brojac<<" ";

}

cout<<endl;

return 0;

}

PRIMJER 14:

Ispisuje sve troznamenkaste(trocifrene) brojeve koji su djeljivi sa 7, a zadnja im je cifra (znamenka)7.

RJEŠENJE:

Page 69: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

#include<iostream>

using namespace std;

int main()

{

int i;

cout<<"Program ispisuje sve troznamenkaste brojeve \

koji su djeljivi sa 7, a zadnja im je znamenka 7."<<endl;

cout<<"Brojevi koji zadovoljavaju uvjet su: "<<endl

for(i=100;i<=999;i++)

{

if(i%10==7)

{

if(i%7==0)

{

cout<<i<<endl;

}

}

}

return 0;}

PRIMJER 67:

Potrebno je ispisati znakove i njihove ASCII vrijednosti.

RJEŠENJE:

#include<iostream>

#include<iomanip>

Page 70: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

using namespace std;

int main()

{

cout<<"Program ispisuje znakove i njihove ASCII \ vrijednosti."<<endl;

int znak,red,stupac;

// Podesavanjepocetnog ASCII znaka od kojeg se zeli prikaz

znak=32;

// Podesavanje broja redaka

for(red=1;red<=45;red++)

{

// Podesavanje broja podataka u jednom redu

for(stupac=1;stupac<=5;stupac++)

{

cout<<setw(10)<<znak<<" = "<<char(znak);

znak=znak+1;

}

cout<<endl;

}

return 0;}

PRIMJER 68:

Program računa ukupni otpor otpornika spojenih paralelno.

RJEŠENJE:

#include<iostream>

using namespace std;

Page 71: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

int main()

{

cout<<"Program racuna ukupni otpor N otpora spojenih u paralelu"

<<endl;

float R,br,Ruk1,Ruk;

cout<<"Nakon posljednje vrijednosti otpora unijeti 0"<<endl;

br=0;

Ruk1=0;

upis:cout<<"Upisi vrijednost otpora u omima: ";

cin>>R;

if(R<0)

{

cout<<"Vrijednost otpora mora biti >0."<<endl;

goto upis;

}

while(R>0)

{

br=br+1;

Ruk1=Ruk1+1/R;

cout<<"Upisi vrijednost otpora u omima: ";

cin>>R;

}

Ruk=1/Ruk1;

Page 72: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<"Ukupni otpor "<<br<<" otpora spojenih u paralelu je "

<<Ruk<<" oma."<<endl;

return 0;}

PRIMJER 69:

Treba unijeti koeficijente kvadratne jednadžbe, pa ovisno o njihovim vrijednostima izračunati i ispisati rješenja.

Važno je provjeriti vrijednost koeficijenta a, ako je a = 0, jednadžba nije kvadratna.Treba provjeriti predznak diskriminante jer on određuje hoće li rješenja kvadratne jednadžbe ax2 + bx +c = 0 bit realni ili kompleksni brojevi.

RJEŠENJE:

#include<iostream>

#include<cmath>

using namespace std;

int main()

{

float a,b,c,x1,x2,pom1,xR,xi;

cout<<"Upisi koeficijent a:";

cin>>a;

cout<<"Upisi koeficijent b:";

cin>>b;

cout<<"Upisi koeficijent c:";

cin>>c;

if (a!=0)

{

pom1=b*b-4*a*c;

if (pom1>=0)

Page 73: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

{

x1=(-b+sqrt(pom1))/(2*a);

x2=(-b-sqrt(pom1))/(2*a);

cout<<"Rjesenja su realni brojevi x1=" <<x1<<" i x2="<<x2<<endl;

}

else

{

xR=-b/(2*a);

xi=sqrt(-pom1)/(2*a);

cout<<"Rjesenja su kompleksni brojevi:";

cout<<endl<<"z1="<<xR<<"+"<<xi<<"i, z2=" <<xR<<"-"<<xi<<"i"<<endl;

}

}

else

{

cout<<"Ako je koeficijent a=0, jednadzba nije\

kvadratna"<<endl;

}

return 0;}

PRIMJER 70:

Treba izračunati jakost struje, napon ili otpor prema odabiru korisnika. Za računanje jakosti struje treba birati 1, za napon 2, a za otpor 3. Ovisno o tome što se želi računati treba unijeti odgovarajuće podatke.

RJEŠENJE:

Page 74: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

#include <iostream>

using namespace std;

int main ()

{

cout<<"Ohmov zakon"<<endl;

cout<<"Za racunanje jakosti struje upisi 1,\

za racunanje napona upisi 2, a za otpor 3: ";

int i;

float U,I,R;

cin>>i;

switch (i)

{

case 1:

cout<<"U (V)=";

cin>>U;

cout<<"R (om)=";

cin>>R;

I=U/R;

cout<<"Ako je napon "<<U<<" V, a otpor "<<R

<<" oma, jakost struje iznosi "<<I<<" A."<<endl;

break;

case 2:

Page 75: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<"I (A)=";

cin>>I;

cout<<"R (om)=";

cin>>R;

U=I*R;

cout<<"Ako je jakost struje "<<I<<" A, a otpor "<<R

<<" oma, napon iznosi "<<U<<" V."<<endl;

break;

case 3:

cout<<"U (V)=";

cin>>U;

cout<<"I (A)=";

cin>>I;

R=U/I;

cout<<"Ako je napon "<<U<<" V, a jakost struje iznosi " <<I<<" A, otpor iznosi "<<R<<" oma."<<endl;

break;

default:

cout<<"Pogresan unos. Treba upisati 1, 2 ili 3."<<endl;

}

return 0;}

PRIMJER 71:

Program na osnovu unesenog rednog broja mjeseca ispisuje koliko taj mjesec ima dana. U slučaju unosa broja koji nije iz raspona od 1 do 12 treba ispisati upozorenje.

Page 76: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

int i;

cout<<" Program na osnovu unesenog rednog broja mjeseca \

ispisuje koliko taj mjesec ima dana"<<endl;

cout<<"Upisi redni broj mjeseca: ";

cin>>i;

switch (i)

{

case 1:

case 3:

case 5:

case 7:

case 8:

case 10:

case 12:

cout<<i<<". mjesec ima 31 dan."<<endl;

break;

case 2:

case 4:

case 6:

Page 77: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

case 9:

case 11:

cout<<i<<". mjesec ima 30 dana."<<endl;

break;

default:

cout<<"Pogresan unos. Redni broj mjeseca moze biti\

iz raspona od 1 do 12."<<endl;

}

return 0;}

PRIMJER 72:

Program na temelju unesenih vrijednosti stranica trokuta računa opseg ili površinu, ovisno o želji korisnika. Za izračunavanje obima( opsega) upisuje se 1, a za površinu (oplošje) 2.

RJEŠENJE:

#include<iostream>

#include<cmath>

using namespace std;

int main()

{

cout<<"Program na osnovu unesenih vrijednosti stranica trokuta\

racuna opseg ili povrsinu, ovisno o zelji korisnika"<<endl;

float a,b,c,o,p,p1,pov;

int i;

cout<<"Za izracun opsega upisi 1, a za povrsinu 2: ";

cin>>i;

cout<<"a = ";

Page 78: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cin>>a;

cout<<"b = ";

cin>>b;

cout<<"c = ";

cin>>c;

if((a<=0)||(b<=0)||(c<=0))

{

cout<<"Vrijednost stranice trokuta ne moze biti <=0"<<endl;

goto kraj;

}

if((a+b<=c)||(b+c<=a)||(c+a<=b))

{

cout<<"Unesene vrijednosti nisu stranice trokuta"<<endl;

goto kraj;

}

switch(i)

{

case 1:

o=a+b+c;

cout<<"Opseg trokuta je O= "<<o<<endl;

break;

case 2:

cout<<"Povrsina se racuna po Heronovoj formuli"<<endl;

p=(a+b+c)/2;

p1=p*((p-a)*(p-b)*(p-c));

Page 79: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

pov=sqrt(p1);

cout<<"Povrsina trokuta je P= "<<pov<<endl;

break;

default:

cout<<"Pogresan unos. Valja unijeti 1 ili 2!"<<endl;

}

return 0;}

PRIMJER 73:

Program računa ukupni otpor N otpora spojenih paralelno. Nakon posljednje vrijednosti otpora unosi se 0.

RJEŠENJE:

include<iostream>

using namespace std;

int main()

{

cout<<"Program racuna ukupni otpor N otpora spojenih u paralelu"

<<endl;

float R,br,Ruk1,Ruk;

cout<<"Nakon posljednje vrijednosti otpora unijeti 0"<<endl;

br=0;

Ruk1=0;

upis:cout<<"Upisi vrijednost otpora u omima: ";

cin>>R;

if(R<0)

{

cout<<"Vrijednost otpora mora biti >0."<<endl;

Page 80: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

goto upis;

}

while(R>0)

{

br=br+1;

Ruk1=Ruk1+1/R;

cout<<"Upisi vrijednost otpora u omima: ";

cin>>R;

}

Ruk=1/Ruk1;

cout<<"Ukupni otpor "<<br<<" otpora spojenih u paralelu je "

<<Ruk<<" oma."<<endl;

return 0;}

PRIMJER 74:

Treba izračunati ukupni otpor za otpore R1 i R2 ovisno o tome jesu li spojeni serijski ili paralelno.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

float R, R1,R2;

int i;

cout<<"Otpor R1 (u omima):";

cin>>R1;

Page 81: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<"Otpor R2 (u omima):";

cin>>R2;

cout<<"Za spoj otpora u seriju upisi 1, a za paralelu 2:";

cin>>i;

switch (i)

{

case 1:

R=R1+R2;

cout<<"Ako se otpori od "<<R1<<" oma i "<<R2

<<" oma spoje u seriju ukupni je otpor "

<<R<<" oma."<<endl;

break;

case 2:

R=(R1*R2)/(R1+R2);

cout<<"Ako se otpori od "<<R1<<" oma i "<<R2

<<" oma spoje u paralelu ukupni je otpor "

<<R<<" oma."<<endl;

break;

default:

cout<<"Pogresan unos. Unesi 1 ili 2"<<endl;

}

return 0;}

PRIMJER 75:

Treba izračunati otpor bakrene žice za koju su uneseni duljina l [m] i promjer r[mm].

RJEŠENJE:

Page 82: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

#include<iostream>

using namespace std;

int main()

{

float promjer,l,r,s,otpor;

const float PI=3.14;

const float ro=0.0175;

cout<<"Upisi promjer zice (u mm):";

cin>>promjer;

cout<<endl<<"Upisi duljinu zice (u m):";

cin>>l;

//Racunanje poprecnog presjeka zice.

r=promjer/2;

s=r*r*PI;

//Racunanje otpora

otpor=ro*l/s;

cout<<endl<<"Bakrena zica duljine "<<l

<<" m i presjeka"<<s<<" mm2 ima otpor "<<otpor

<<" oma."<<endl;

return 0;}

PRIMJER 76:

Tijelu mase m[kilograma] promijeni se za t [sekundi] brzina sa v1 na v2 [metara/sekundi]. Treba izračunati silu koja je djelovala na tijelo.

Napomene:Potrebno je izračunati akceleraciju tijela (a=Δv/Δt).Vrijednost sile računa se po formuli drugog Newtonovog zakona.

Page 83: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

F = m · a

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

float m,t,v1,v2,a,F;

cout<<"Upisi masu tijela (u kg):";

cin>>m;

cout<<"Upisi vrijeme (u s):";

cin>>t;

cout<<"Upisi pocetnu brzinu (u m/s):";

cin>>v1;

cout<<"Upisi konacnu brzinu (u m/s):";

cin>>v2;

//Racunanje akceleracije.

a=(v2-v1)/t;

//Racunanje sile

F=m*a;

cout<<endl<<"Na tijelo je djelovala sila od " <<F<<" N."<<endl;

return 0;}

PRIMJER 77:

Tijelo mase m [kg], pada sa visine h [m] brzinom v [ m/s]. Kolika je ukupna energija tijela?

RJEŠENJE:

#include<iostream>

Page 84: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

using namespace std;

int main()

{

const float g=9.81;

float m,h,v,Ep,Ek,Euk;

cout<<"Upisi masu tijela (u kg):";

cin>>m;

cout<<"Upisi visinu (u m):";

cin>>h;

cout<<"Upisi brzinu (u m/s):";

cin>>v;

//Racunanje potencijalne energije.

Ep=m*g*h;

//Racunanje kineticke energije

Ek=m*v*v/2;

//Racunanje ukupne energije

Euk=Ep+Ek;

cout<<endl<<"Tijelo ima "<<Ek

<<" J kineticke energije i "<<Ep

<<" J potencijalne energije, sto daje ukupnu\ energiju od "<<Euk<<" J."<<endl;

return 0;}

PRIMJER 78:

Na izvor napona U su priključena tri serijski spojena otpornika (R1, R2 i R3). Potrebno je izračunati ukupni otpor (R), jakost struje (I) i pojedine padove napona na otporima (U1, U2 i U3).

RJEŠENJE:

Page 85: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

#include<iostream>using namespace std;int main() { float U,R1,R2,R3,R,I;cout<<"U (V)= ";cin>>U;cout<<endl<<"R1 (om)= "; cin>>R1;cout<<endl<<"R2 (om)= ";cin>>R2;cout<<endl<<"R3 (om)= ";cin>>R3;R=R1+R2+R3;I=U/R;cout<<endl<<"Ukupni otpor R iznosi "<<R<<" oma."<<endl;cout<<endl<<"Jakost struje I iznosi "<<I<<" A."<<endl;cout<<endl<<"Pad napona U1 je "<<I*R1<<" V."<<endl; cout<<"Pad napona U2 je "<<I*R2<<" V."<<endl;cout<<"Pad napona U3 je "<<I*R3<<" V."<<endl;return 0;}

PRIMJER 79:

Na stolici mase Mskilograma sjedi čovjek mase Mckilograma. Koliki je tlak na pod ako stolica ima četiri noge. Presjek svake od noga je kvadrat sa stranicama X centimetara.

Napomene: Potrebno je izračunati težinu stolice i čovjeka

(G = m · g) ; potrebno je deklarirati akceleraciju slobodnog pada kao konstantu (g = 9.81 m/s2).

Ukupna površina na koju djeluje sila dobije se zbrajanjem površina poprečnih presjeka noga stolice.Površinu izraženu u cm2 treba preračunati u m2.

RJEŠENJE:

#include<iostream>

using namespace std;

int main()

{

float Mc,Ms,Gs,Gc,X,F,S,s1,p;

Page 86: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

const float g=9.81; //konstanta je izrazena u m/s2

cout<<"Upisi masu stolice u kg:";

cin>>Ms;

cout<<"Upisi masu covjekau kg:";

cin>>Mc;

cout<<"Unesi vrijednost stranice kvadrata u cm:";

cin>>X;

//Racuna se tezina covjeka i stolice

Gs=Ms*g;

Gc=Mc*g;

F=Gs+Gc; //ukupna sila koja djeluje na pod

//Racuna se povrsina

s1=X*X; //povrsina presjeka jedne noge stolice

S=4*s1; //ukupna povrsina na koju djeluje sila

S=S/10000; //pretvorba cm2 u m2

p=F/S; //tlak u paskalima

cout<<"Tlak kojim covjek mase "<<Mc

<<" kg, koji sjedi na stolici mase "<<Ms

<<" kg, djeluje na pod je "<<p<<" paskala"<<endl;

return 0;}

PRIMJER 80:

Poluprečnik(polumjer) Zemlje je 6370 [ km]. Za koje će vrijeme avion obletjeti Zemlju ako leti na visini odh kilometara brzinom v [ km/h].

RJEŠENJE:

#include<iostream>

using namespace std;

Page 87: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

int main()

{

float h,v, Ruk,O,vrijeme;

const float R=6370; //konstanta je izrazena u km

const float PI=3.14;

cout<<"Upisi visinu na kojoj leti avion (u km):";

cin>>h;

cout<<"Upisi brzinu kojom leti avion (u km/h):";

cin>>v;

//Racunanje puta (opseg kruga)

Ruk=R+h; //zbroj polumjera Zemlje i visine

O=2*Ruk*PI;

vrijeme=O/v; //t=s/v, jednoliko gibanje

cout<<"Avion koji leti brzinom "<<v

<<"km/h, na visini od "<<h

<<" km obletjet ce Zemlju za "<<vrijeme

<<" sati."<<endl;

return 0;}

PRIMJER 81:

Treba izračunati snagu P koju mora imati električno kuhalo koje za t[ minuta] može vodu mase m[grama] zagrijati od temperature temp1 do temperature temp2[°C]).

RJEŠENJE:

#include<iostream>

using namespace std;

Page 88: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

int main()

{

float tmin,m,temp1,temp2,ts,DT,M,Q,P;

const float c=4186; //konstanta je izrazena u J/(kg*K)

cout<<"Upisi vrijeme (u min):";

cin>>tmin;

cout<<"Upisi masu vode (u gr):";

cin>>m;

cout<<"Upisi pocetnu temperaturu (u °C):";

cin>>temp1;

cout<<"Upisi konacnu temperaturu (u °C):";

cin>>temp2;

DT=temp2-temp1;

ts=tmin*60; //vrijeme treba pretvoriti u sekunde

M=m/1000; //masu treba pretvoriti u kg

Q=M*c*DT; //racuna se toplinska energija

P=Q/ts; //racuna se snaga

cout<<"Elektricno kuhalo koje za "<<tmin

<<" min moze "<<m<<" grama vode zagrijati sa " <<temp1<<"°C na "<<temp2<<"°C ima snagu od “ <<P<<" vata."<<endl;

return 0;}

PRIMJER 82:

Treba izračunati koliko bi vremena bilo potrebno zvuku da prevali razmak između dva mjesta ako taj isti razmak svjetlost prevali za t sekundi.

Napomene:Potrebno je deklarirati brzinu svjetlosti c=3e+8 [m/s ] i brzinu zvuka v=340 [m/s] kao konstante.

Put je isti,a kretanje(gibanje) je jednoliko.

Page 89: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

RJEŠENJE:#include<iostream>using namespace std;int main() { float t,s,tz; const float c=3e+8; //brzina svjetlosti izrazena u m/s const float v=340; //brzina zvuka izrazena u m/s cout<<"Upisi vrijeme (u sek):"; cin>>t;//racunanje puta s=c*t; tz=s/v; cout<<"Svjetlost prevali razmak izmedju dva mjesta\za "<<t<<" s, a zvuk je sporiji pa mu za isti\razmak treba "<<tz<<" sekundi."<<endl; return 0;}

NizoviN I Z O V I

Pprimjeri C++ , III-i dio

Sretno sa programiranjem,

Primjer 1:Napisati program koji ispisuje članove niza.

RJEŠENJE:

//Ispisuje na ekran clanove niza

#include <cstdlib>

#include <iostream>

using namespace std;

int main()

{

int i,N;

int X[100]; /*deklaracija niza od 100 cijelih brojeva*/

cout<<"Unesi clanove 0<N<100 = "; /*broj N mora biti manji od 100 jer je deklariran niz od maksimalno 100 clanova*/

Page 90: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cin >>N;

for (i=0;i<N;i++) /*upis članova niza*/

{

cin>>X[i]; /*upis i-tog člana niza*/

}

cout<<" Unijli ste ove clanove :"<<endl;

for (i=0;i<N;i++) /*ispis članova niza for petljom*/

{

cout << X[i]; /*ispis i- tog člana niza*/

cout <<endl; /*ispis praznog retka (end line)*/

}

return 0;

}

EKRAN:

Unesi clanove 0<N<100 =5

12

3

76

45

8

Unijli ste ove clanove :

12

3

76

Page 91: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

45

8

Primjer 2:Napisati program koji ispisuje unijete znakove i duljinu(broj) znakova.

RJEŠENJE:

#include <cstdlib>

#include <iostream>

#include <string>

using namespace std;

int main()

{

char a[80];

int i=0;

printf("Upisite niz znakova: ");

gets(a);

while (a[i+1]!='\0')

i++;

printf("Upisali ste niz: ");

puts(a);

printf("Duljina mu je %d znakova",i+1);

return 0;

}

EKRAN:

Upisite niz znakova: zt3 J65re 98d

Upisali ste niz: zt3 J65re 98d

Page 92: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Duljina mu je 13 znakova

Primjer 3:Napisati program koji ispisuje najmanji član unijetog niza.

RJEŠENJE:

#include <cstdlib>

#include <iostream>

using namespace std;

int main()

{

int polje[100];

int N,i, j, min;

cout<<"Unesi broj clanova N:";

cin>>N;

for(i = 0; i < N; i++){

cout<< "\nUnesite polje[" << i << "] = ";

cin>> polje[i];

}

min=polje[0];

// traženje najmanjeg

for(i = 0; i < N; i++)

if(polje [i] < min){

min = polje[i];

}

cout<< "\n Najmanji clan niza je: "<<min;

return 0;

Page 93: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

}

EKRAN:

Unesi broj clanova N:5

Unesite polje[0] = 45

Unesite polje[1] = 3

Unesite polje[2] = 12

Unesite polje[3] = 7

Unesite polje[4] = 98

Najmanji clan niza je : 3

Primjer 4:Napisati program koji ispisuje neparne članove ,a u drugi red parne članove unijetog niza.

RJEŠENJE:

// Ispisuje prvo parne, a u naredni red neparne brojeve za N unesenih, par_nep.cpp

#include <iostream>

using namespace std;

int main()

{

int niz[100],N;

cout<<"Unesi N : ";

cin>>N;

for(int i=0; i<N; i++)

cin>>niz[i];

cout<<“Parni clanovi : „;

for(int i=0; i<N; i++)

{

Page 94: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

// ispisuje prvo parne

if(niz[i]%2==0)

cout<<niz[i]<<" ";

}

cout<<endl; // pomjeramo kursor u naredni red

cout<<“ Neparni clanovi : „;

for(int i=0; i<N; i++)

{

// sada ispisujemo neparne

if(niz[i]%2!=0)

cout<<niz[i]<<" ";

}

cout<<endl;

system("pause");

return 0;

}

EKRAN:

Unesi N :7

2

35

6

8

7

9

11

Page 95: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Parni clanovi : 2 6 8

Neparni clanovi : 35 7 9 11

Primjer 5:Napisati program koji ispisuje svaki P-i (i-i) član niza.

RJEŠENJE:

// Ispisuje svaki P-i broj

#include <iostream>

using namespace std;

int main()

{

int niz[100],N,P;

cout<<"Upisi broj clanova N = : ";

cin>>N;

cout<<"Zelim ispisati svaki P = : ";

cin>>P;

cout<<"Sada upisi clanove : "<<endl;

for(int i=0; i<N; i++)

cin>>niz[i];

cout<<"Svaki "<< P << "-i clan je : "<<endl;

for(int i=P-1; i<N; i=i+P)

cout<<niz[i]<<" ";

cout<<endl;

return 0;

}

EKRAN:

Upisi broj clanova N :7

Page 96: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Zelim ispisati svaki P = : 3

Sada upisi clanove :

13

4

55

8

123

17

20

Svaki 3-i clan je :

55 17

Primjer 6:Napisati program koji ispisuje članove djeljive sa 5,a u drugi red članove djeljive sa 3.

RJEŠENJE:

// Ispisuje clanove djeljive sa 5, a u naredni red djeljive sa 3

#include <iostream>

using namespace std;

int main()

{

int niz[100],N;

cout<<"Unesi N : ";

cin>>N;

for(int i=0; i<N; i++)

cin>>niz[i];

cout<<"Clanovi djeljivi sa 5 : ";

Page 97: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for(int i=0; i<N; i++)

{

// ispisuje clanove djeljive sa 5

if(niz[i]%5==0)

cout<<niz[i]<<" ";

}

cout<<endl; // pomjeramo kursor u naredni red

cout<<" Clanovi djeljivi sa 3 : ";

for(int i=0; i<N; i++)

{

// sada ispisujemo clanove djeljive sa 3

if(niz[i]%3==0)

cout<<niz[i]<<" ";

}

cout<<endl;

system("pause");

return 0;

}

EKRAN:

Unesi N: 8

24

9

35

68

11

Page 98: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

15

100

87

Clanovi djeljivi sa 5 : 35 15 100

Clanovi djeljivi sa 3 : 24 9 15 87

Primjer 7:Napisati program koji ispisuje članove N djeljive sa P .

RJEŠENJE:

//Ispisuje clanove N koji su djeljivi sa P.

#include <iostream>

using namespace std;

int main()

{

int polje[100];

int N,i, j, P;

cout<<"Unesi broj clanova N:";

cin>>N;

for(i = 0; i <N; i++){

cout<< "\nUnesite polje[" << i << "] = ";

cin>> polje[i];

}

cout<<endl;

cout<< "\nUnesite djelilac :";

cin>>P;

cout<<"Cllanovi djeljivi sa "<<P<<" ..... ";

Page 99: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for(i = 0; i < N; i++)

{

if (polje[i]%P==0)

cout<<polje[i]<<" ";

}

return 0;

}

EKRAN:

Unesi broj clanova N: 7

Unesite polje[0] = 5

Unesite polje[1] = 12

Unesite polje[2] = 33

Unesite polje[3] = 59

Unesite polje[4] = 28

Unesite polje[5] = 105

Unesite polje[6] = 16

Unesite djelilac : 4

Clanovi djeljivi sa 4 ..... 12 28 16

Primjer 8:Napisati program koji ispisuje sumu (zbir) svakog P-g (i-g ) clana niza.

RJEŠENJE:

// Ispisuje svaki P-i broj

#include <iostream>

using namespace std;

int main()

Page 100: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

{

int niz[100],N,P,s=0;

cout<<"Upisi broj clanova N = : ";

cin>>N;

cout<<"Zelim sabrati svaki P = : ";

cin>>P;

cout<<"Sada upisi clanove : "<<endl;

for(int i=0; i<N; i++)

cin>>niz[i];

cout<<"Zbir svakog "<< P << "-g clana je : ";

for(int i=P-1; i<N; i=i+P)

{s=s+niz[i];}

cout<<s<<" ";

return 0; }

EKRAN:

Upisi broj clanova N :10

Zelim ispisati svaki P = : 3

Sada upisi clanove :

2

36

14

12

6

7

20

Page 101: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

15

100

53

Zbir svakog 3-g clana je : 121

Primjer 9:Napisati program koji ispisuje sumu članova N djeljivi sa P .

RJEŠENJE:

//Ispisuje sumu clanova N koji su djeljivi sa P.

#include <iostream>

using namespace std;

int main()

{

int polje[100];

int N,i, j,s=0, P;

cout<<"Unesi broj clanova N:";

cin>>N;

for(i = 0; i <N; i++){

cout<< "\nUnesite polje[" << i << "] = ";

cin>> polje[i];

}

cout<<endl;

cout<< "\nUnesite djelilac :";

cin>>P;

for(i = 0; i < N; i++)

{

Page 102: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

if (polje[i]%P==0)

s=s+polje[i];

}

cout<<" Suma djeljivih sa "<<P<<" ..... "<<s;

return 0;

}

EKRAN:

Unesi broj clanova N: 6

Unesite polje[0] = 2

Unesite polje[1] = 3

Unesite polje[2] = 6

Unesite polje[3] = 7

Unesite polje[4] = 40

Unesite polje[5] = 12

Unesite djelilac : 3

Suma djeljivih sa 3 ..... 21

Primjer 10:Napisati program koji ispisuje aritmetičku sredinu susjednih članova niza.

RJEŠENJE:

// Aritmeticka sredina susjeda, aritmeticka.cpp

#include <iostream>

using namespace std;

int main()

{

float niz[100],N;

Page 103: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<"Unesi N: ";

cin>>N;

for(int i=0; i<N; i++)

cin>>niz[i];

for(int i=0; i<N-1; i++)

cout<<((niz[i]+niz[i+1]))/2<<" ";

cout<<endl;

return 0;

}

EKRAN:

Unesi N: 6

8

2

11

6

15

25

5 6.5 8.5 10.5 20

Primjer 11:Napisati program koji ispisuje kumulativnu sumu članova niza.

RJEŠENJE:

// Kumulativna suma, suma.cpp

#include<cstdlib>

#include <iostream>

using namespace std;

Page 104: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

int main()

{

int i,N,X[100];

int suma = 0;

cout<<"Unesi N: ";

cin>>N;

for( i=0; i<N; i++)

cin>>X[i];

cout<<"Kumulativna suma : ";

for(int i=0; i<N; i++)

{

suma = suma + X[i];

cout<<suma<<" ";

}

cout<<endl;

return 0;

}

EKRAN:

Unesi N:6

3

4

12

7

19

22

Page 105: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Kumulativna suma : 3 7 19 26 45 67

Primjer 12:Napisati program koji ispisuje kvadrate članova niza.

RJEŠENJE:

// Ispisuje kvadrate za N unesenih brojeva, kvadrati.cpp

#include <iostream>

using namespace std;

int main()

{

int niz[100],N;

cout<<"Unesi N: ";

cin>>N;

for(int i=0; i<N; i++)

cin>>niz[i];

cout<<"Kvadrati clanova :"<<endl;

for(int i=0; i<N; i++)

cout<<niz[i]*niz[i]<<" ";

cout<<endl;

return 0;

}

EKRAN:

Unesi N: 5

2

3

6

Page 106: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

12

5

Kvadrati clanova :

4 9 36 144 25

Primjer 13: Napisati program koji ispisuje kvadrate za svaki treći član niza.

RJEŠENJE:

// Ispisuje kvadrate za svaki treći uneseni broj

#include <iostream>

using namespace std;

int main()

{

int niz[100],N;

cout<<"Unesi N: ";

cin>>N;

for(int i=1; i<N+1; i++)

cin>>niz[i];

for(int i=1; i<N+1; i++)

if (i%3==0)

cout<<niz[i]*niz[i]<<" ";

cout<<endl;

system("pause");

return 0;

}

EKRAN:

Page 107: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Unesi N: 9

5

4

3

2

1

6

7

8

9

9 36 81

Primjer 14: Napisati program koji ispisuje sumu članova niza.

RJEŠENJE:

// Ispisuje sumu clanova niza, zbir brojeva.cpp

#include <iostream>

using namespace std;

int main()

{

int niz[100],i,N,s=0;

cout<<"Unesi N: ";

cin>>N;

for(int i=1; i<N+1; i++)

cin>>niz[i];

for(int i=1; i<N+1; i++)

Page 108: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

s=s+niz[i];

cout<<" Suma svih clanova je S = "<<s<<endl;

return 0;

}

EKRAN:

Unesi N: 5

12

4

7

18

2

Suma svih clanova je S = 43

Primjer 15: Napisati program koji ispisuje sumu clanova N koji su djeljivi sa P.

RJEŠENJE:

//Ispisuje sumu clanova N koji su djeljivi sa P.

#include <iostream>

using namespace std;

int main()

{

int polje[100];

int N,i, j,s=0, P;

cout<<"Unesi broj clanova N:";

cin>>N;

for(i = 0; i <N; i++){

Page 109: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<< "\nUnesite polje[" << i << "] = ";

cin>> polje[i];

}

cout<<endl;

cout<< "\nUnesite djelilac :";

cin>>P;

for(i = 0; i < N; i++)

{

if (polje[i]%P==0)

s=s+polje[i];

}

cout<<" Suma djeljivih sa "<<P<<" ..... "<<s;

return 0;

}

EKRAN:

Unesi broj clanova N:6

Unesite polje[0] =23

Unesite polje[1] =8

Unesite polje[2] =3

Unesite polje[3] =45

Unesite polje[4] =122

Unesite polje[5] =16

Unesite djelilac :4

Suma djeljivih sa 4 ..... 24

Page 110: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Primjer 16: Napisati program koji Ispisuje sumu kvadrata clanova N koji su djeljivi sa P.

RJEŠENJE:

//Ispisuje sumu kvadrata clanova N koji su djeljivi sa P.

#include <iostream>

using namespace std;

int main()

{

int polje[100];

int N,i, j,s=0, P;

cout<<"Unesi broj clanova N:";

cin>>N;

for(i = 0; i <N; i++){

cout<< "\nUnesite polje[" << i << "] = ";

cin>> polje[i];

}

cout<<endl;

cout<< "\nUnesite djelilac :";

cin>>P;

for(i = 0; i < N; i++)

{

if (polje[i]%P==0)

s=s+polje[i]*polje[i];

}

cout<<" Suma kvadrata djeljivih sa "<<P<<" ..... "<<s;

Page 111: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

return 0;

}

EKRAN:

Unesi broj clanova N:6

Unesite polje[0] = 29

Unesite polje[1] = 3

Unesite polje[2] = 55

Unesite polje[3] = 200

Unesite polje[4] = 12

Unesite polje[5] = 91

Unesite djelilac :3

Suma kvadrata djeljivih sa 3 ..... 153

Primjer 17:Napisati program koji saopštava parnost članova niza unatraške.

RJEŠENJE:

// Saopstava parnost unatraske, parnost.cpp

#include <iostream>

using namespace std;

int main()

{

int niz[100],i,N;

cout<<"Unesi N: ";

cin>>N;

for(int i=0; i<N; i++)

cin>>niz[i];

Page 112: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<"Parnost unatrag :"<<endl;

for(int i=N-1; i>=0; i--)

{

if(niz[i]%2==0)

cout<<"par ";

else

cout<<"nep ";

}

cout<<endl;

return 0;

}

EKRAN:

Unesi N:5

12

8

5

37

24

Parnost unatrag :

par nep nep par par

Primjer 18: Napisati program koji provjerava mijenjanje vrijednosti članniza (pada/raste/isto).

RJEŠENJE:

// Provjerava mijenjanje vrijednosti, mijenjanje.cpp

#include <iostream>

Page 113: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

using namespace std;

int main()

{

int niz[100],N,i;

cout<<"Unesi brojeve 0<N<100: ";

cin>>N;

for(int i=0; i<N; i++)

cin>>niz[i];

for(int i=N-1; i>0; i--) // provjeravamo unatraske

{

if(niz[i]<niz[i-1])

cout<<"raste ";

else if(niz[i]==niz[i-1])

cout<<"isto ";

else

cout<<"pada ";

}

/* ovdje je [i-1] jer provjeravamo unatraske izmedju clana [i] i onog prije njega [i-1]. */

return 0;

}

EKRAN:

Unesi brojeve 0<N<100: 6

4

7

12

Page 114: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

9

2

26

pada raste raste pada pada

Primjer 19:Napisati program koji sortira unijeti niz članova u opadajući niz.

RJEŠENJE:

#include <iostream>

using namespace std;

int main ()

{

// DEKLARACIJA

int x[100];

int y[100];

int i, j, N;

// UNOSENJE

cout << "Unesite broj clanova polja 0<N<100: ";

cin >> N;

for (i = 0; i < N; i++)

{

cout << "Unesite clan br. " << i << ": ";

cin >> x[i];

y[i] = x[i];

}

// SORTIRANJE

Page 115: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for (i = 0; i < N-1; i++)

{

for (j = i+1; j < N; j++)

{

if (y[i] < y[j]) swap(y[i],y[j]);

}

}

// STAMPANJE

cout << "x:" << '\t' << "y:" << endl;

for (i = 0; i < N; i++)

{

cout << x[i] << '\t' << y[i] << endl;

}

}

EKRAN:

Unesite broj clanova polja 0<N<100: 5

Unesite clan br. 0: 4

Unesite clan br. 1: 12

Unesite clan br. 2: 3

Unesite clan br. 3: 19

Unesite clan br. 4: 46

X: y:

4 46

12 19

3 12

Page 116: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

19 4

46 3

Primjer 20:Unesi niz od N cijelih brojeva te ispiši sortiran niz od najmanjeg(min) do najvećeg(max). RJEŠENJE: #include <cstdlib>#include <iostream>using namespace std;int main(){int A[100];int N,i, j, temp;cout<<"Unesi N:";cin>>N;for(i = 0; i < N; i++){cout<< "\nUnesite polje[" << i << "] = ";cin>> A[i];}// sortiranje niza (od najmanjeg do najvećeg)for(i = 0; i < N-1; i++)for(j = i+1; j < N; j++)if(A [i] > A[j]){temp = A[i];A[i] = A[j];A[j] = temp;}for(i = 0; i<N; i++)cout<< A[i] << "\n";system ("PAUSE");return 0;}

EKRAN:

Unesi N : 6

Unesite polje[0] = 12

Unesite polje[1] = 3

Unesite polje[2] = 165

Unesite polje[3] = 53

Unesite polje[4] = 7

Page 117: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Unesite polje[5] = 25

3

7

12

25

53

165

Primjer 21: Ispisuje proizvod članova na parnim i proizvod članova na nepernim mjestima tj.svakog trećeg člana niza (prvi*treći,drugi*četvrti,treći*peti...)

RJEŠENJE:

#include <iostream>

using namespace std;

int main()

{

int niz[100],N;

cout<<"Unesi N : ";

cin>>N;

for(int i=0; i<N; i++)

cin>>niz[i];

for(int i=0; i<N-2; i++)

cout<<niz[i+2]*niz[i]<<" ";

cout<<endl;

return 0;

}

EKRAN:

Page 118: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Unesi N: 7

3

5

6

11

2

4

15

18 55 12 44 30

Primjer 22: Ispisuje proizvod susjednih članova niza.

RJEŠENJE:

//Ispisuje proizvod susjednih clanova niza

#include <iostream>

using namespace std;

int main()

{

int niz[100],N;

cout<<"Unesi N : ";

cin>>N;

for(int i=0; i<N; i++)

cin>>niz[i];

cout<<"Proizvod susjednih clanova :"<<endl;

for(int i=0; i<N-1; i++)

{

Page 119: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<(niz[i]*niz[i+1])<<" ";

}

cout<<endl;

return 0;

}

EKRAN:

Unesi N : 6

2

5

3

12

4

6

Proizvod susjednih clanova :

10 15 36 48 24

Primjer 23: Ispisuje sumu-zbir članova niza.

RJEŠENJE:

#include <cstdlib>

#include <iostream>

using namespace std;

int main()

{

int i,N, broj,s=0;

cout <<"Unesi N : ";

Page 120: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cin>>N;

i=1; /*postavljanje varijable i na vrijednost 1 */

while (i<=N) /* petlja se vrti dok je varijabla i<=N */

{

cout <<"\n Unesi "<<i<<". broj = ";

cin >> broj; /* unos broja */

s=s+broj; /* pribrajanje unesenog broja varijabli s(suma)*/

i=i+1; /*povećavanje kontrolne varijable za 1 te vraćanje na ispitivanje uvjeta u while*/

}

cout<<"\n Zbir unesenih brojeva je "<<s<<"\n";

return 0;

}

EKRAN:

Unesi N : 4

Unesi 1. broj = 34

Unesi 2. broj = 12

Unesi 3. broj = 8

Unesi 4. broj = 23

Zbir unesenih brojeva je 77

Primjer 24: Napisati program koji Ispisuje sumu i aritmetičku sredinu članova niza.

RJEŠENJE:

//Ispisuje sumu i aritmetičku sredinu unijetih clanova niza.

#include <iostream>

Page 121: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

using namespace std;

int main () {

int broj,N,suma=0;

float asred;

cout<<" Upisi N : ";

cin>>N;

for (int i=1;i<=N;i++){

cout<<i<< ".broj:";

cin>>broj;

suma+=broj;

};

asred=(float)suma/N;

cout<<"suma="<<suma<<endl;

cout<<"a.sredina="<<asred<<endl;

return 0;

}

EKRAN:

Upisi N : 6

1.broj:12

2.broj:7

3.broj:23

4.broj:9

5.broj:4

6.broj:35

suma=90

Page 122: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

a.sredina=15

Primjer 25: Napisati program koji Ispisuje članove niza N koji su djeljivi sa P.

RJEŠENJE:

#include <cstdlib>

#include <iostream>

using namespace std;

int main()

{

int polje[100];

int N,i, j, P;

cout<<"Unesi broj clanova N:";

cin>>N;

for(i = 0; i <N; i++){

cout<< "\nUnesite polje[" << i << "] = ";

cin>> polje[i];

}

cout<<endl;

cout<< "\nUnesite djelilac :";

cin>>P;

for(i = 0; i < N; i++)

{

if (polje[i]%P==0)

cout<<"\n Clanovi djeljivi sa "<<P<<" ..... " <<polje[i];

}

Page 123: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

return 0;

}

EKRAN:

Unesi broj clanova N:6

Unesite polje[0] = 23

Unesite polje[1] = 12

Unesite polje[2] = 70

Unesite polje[3] = 47

Unesite polje42] = 135

Unesite polje[3] = 91

Unesite djelilac :5

Clanovi djeljivi sa 5 .... 70

Clanovi djeljivi sa 5 .... 135

Primjer 26: Napisati program koji Ispisuje najmanji (min) i najveći (max) član niza.

RJEŠENJE:

#include <cstdlib>

#include <iostream>

using namespace std;

int main()

{

int polje[100];

int N,i, j, min,max;

cout<<"Unesi broj clanova N:";

cin>>N;

Page 124: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for(i = 0; i < N; i++){

cout<< "\nUnesite polje[" << i << "] = ";

cin>> polje[i];

}

min=polje[0];

// traženje najmanjeg

for(i = 0; i < N; i++)

if(polje [i] < min){

min = polje[i];

}

max=polje[0];

// traženje najvećeg

for(i = 0; i < N; i++)

if(polje [i] > max){

max = polje[i];

}

cout<< "\n Najmanji clan je: "<<min;

cout<< "\n Najveci clan je: "<<max;

return 0;

}

EKRAN:

Unesi broj clanova N:6

Unesite polje[0] = 23

Unesite polje[1] = 2

Unesite polje[2] = 55

Page 125: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Unesite polje[3] = 47

Unesite polje[4] = 194

Unesite polje[5] = 8

Najmanji clan je: 2

Najveci clan je: 194

Primjer 27: Napisati program koji Ispisuje najveći (max) član niza i njegovu poziciju(redni broj) u nizu.

RJEŠENJE:

#include <iostream>

using namespace std;

int main () {

int n=0, a[100];

char dn;

do {

cout << "Unesite " << n+1 << "-ti broj: ";

cin >> a[n++];

cout << "Zelite li unijeti jos brojeva (d/n)? ";

cin >> dn;

} while (dn=='d');

int max=a[0],pmax=0;

for (int i=1;i<n;i++)

if (a[i]>max) {

max=a[i];

pmax=i;

}

Page 126: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout << "Najveci broj u polju je broj " << max << " na poziciji " << pmax+1 << endl;

return 0;

}

EKRAN:

Unesite 1-i broj: 23

Zelite li unijeti jos brojeva (d/n)? d

Unesite 2-i broj: 7

Zelite li unijeti jos brojeva (d/n)? d

Unesite 3-i broj: 264

Zelite li unijeti jos brojeva (d/n)? d

Unesite 4-i broj: 105

Zelite li unijeti jos brojeva (d/n)? n

Najveci broj u polju je broj 264 na poziciji 3

Primjer 28: Napisati program koji sortira polja.

RJEŠENJE:

//Jednostavno sortiranje polja:

#include <iostream>

using namespace std;

int main () {

int n=0, a[100],pom;

char dn;

do {

cout << "Unesite " << n+1 << "-i broj: ";

cin >> a[n++];

Page 127: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout << "Zelite li unijeti jos brojeva (d/n)? ";

cin >> dn;

} while (dn=='d');

for (int i=0;i<n-1;i++)

for (int j=i+1;j<n;j++)

if (a[i]>a[j]) {

pom=a[i];

a[i]=a[j];

a[j]=pom;

}

for (int i=0;i<n;i++) cout << a[i] << endl;

return 0;

}

Primjer 29: Napisati program za ispis članova matrice.

RJEŠENJE:

#include <iostream>

using namespace std;

int main() {

int i, j, x, y, **matrica; // definirajmo brojace, velicinu polja, i matricu

cout << "x: "; // upisimo dimenzije

cin >> x;

cout << "y: ";

cin >> y;

matrica=new int*[y]; // napravimo polje dimenzije y...

Page 128: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for (i=0; i<y; i++) { // i onda u svakom njegovom elementu

matrica[i]=new int[x]; // napravimo polje dimenzije x

for (j=0; j<x; j++) { // i mozemo upisati element tog polja

cout << "[" << i << "][" << j << "]: ";

cin >> matrica[i][j]; // upisati vrijednost

}

}

return 0;

}

Primjer 30: Napisati program koji ispisuje najveći(max) član upisane matrice.

RJEŠENJE:

//Ispisuje najveći član poznate matrice

#include <iostream>

using namespace std;

const int redovi = 3;

const int kolone = 4;

int godDobTemp[redovi][kolone] = {

{26, 34, 22, 17},

{24, 32, 49, 13},

{28, 38, 25, 20}

};

int najvecaTemp (int temp[redovi][kolone])

{

int najveca = 0;

Page 129: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for (int i = 0; i < redovi; ++i)

for (int j = 0; j < kolone; ++j)

if (temp[i][j] > najveca)

najveca = temp[i][j];

return najveca;

}

main ()

{

Cout<<“Najveci(max) clan je .... „;

cout << najvecaTemp(godDobTemp) << "\n";

return 0;

}

EKRAN:

Najveci(max) clan je .... 49

Primjer 31: Napisati program koji ispisuje najveći(max) član matrice.

RJEŠENJE:

#include <iostream>

#define dim 10

using namespace std;

main()

{

int n,a[dim][dim],max=0;

cout << "Unesi broj kolona i redova N = ";

cin >> n;

Page 130: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"a["<<i<<","<<j<<"]=";

cin >>a[i][j];

if (a[i][j]>max)

max=a[i][j];

}

cout<<"Najveci clan je : "<<max<<endl;

system ("pause");

return 0;

}

Primjer 32: Napisati program koji ispisuje članove pomnožene sa najvećim članom upisane matrice.

RJEŠENJE:

#include <iostream>

#define dim 10

using namespace std;

main()

{

int n,a[dim][dim],b[dim][dim],max=0;

cout << "Unesi redova i kolona N =";

cin >> n;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

Page 131: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout <<"a["<<i<<","<<j<<"]=";

cin >>a[i][j];

if (a[i][j]>max)

max=a[i][j];

b[i][j]=max*a[i][j];

}

cout<<" Matrica ciji su clanovi pomnozeni sa max = : "<<max<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

cout <<"b["<<i<<","<<j<<"]="<<max*a[i][j]<<endl;

system ("pause");

return 0;

}

Primjer 33: Napisati program koji ispisuje sumu(zbir)članova u redu ,a zatim proizvod članova u koloni upisane matrice.

RJEŠENJE:

#include <iostream.h>

#define max 10

main ()

{

int matrica[max][max], suma[max], proizvod[max];

int n,s=0,p=1;

cout << "Unesi br.kolona i redova n=";

cin >> n;

Page 132: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for (int i=1; i<=max; i++)

{

suma[i]=0;

proizvod[i]=1;

}

for (int i=1; i<=n; i++)

for (int j=1; j<=n; j++)

{

cout <<"Mat["<<i<<","<<j<<"]=";

cin >> matrica[i][j];

suma[j]+=matrica[i][j];

proizvod[i]*=matrica[i][j];

}

cout<<" Suma reda matrice :";

cout<<endl;

for (int i=1; i<=n; i++)

cout<<"Suma["<<i<<"]="<<suma[i]<<endl;

cout<<" Proizvod kolone matrice :";

cout<<endl;

for (int i=1; i<=n; i++)

cout<<"Proizvod["<<i<<"]="<<proizvod[i]<<endl;

return 0;

}

Primjer 34: Napisati program za unos dvije matrice i ispis matrice koja je jednaka njihovom zbiru(sumi) .

Page 133: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

RJEŠENJE:

#include <iostream>

#define dim 10

using namespace std;

main()

{

int n,a[dim][dim],b[dim][dim],c[dim][dim];

cout << "Unesi broj redova i kolona N = ";

cin >> n;

cout<<" Unesi clanove matrice A: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

cout<<" Sada unesi clanove matrice B: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"b["<<i<<","<<j<<"]=";

cin >>b[i][j];

Page 134: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

c[i][j]=a[i][j]+b[i][j];

}

cout<<" Zbir ove dvije matrice je matrica C: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

cout <<"c["<<i<<","<<j<<"]="<<a[i][j]+b[i][j]<<endl;

system ("pause");

return 0;

}

Primjer 35: Napisati program za ispis članova matrice koji su proizvod istoimenih članova dvije matrice (c[1,0]=a[1,0]*b[1,0]... ).

RJEŠENJE:

#include <iostream>

#define dim 10

using namespace std;

main()

{

int n,a[dim][dim],b[dim][dim],c[dim][dim];

cout << "Unesi broj redova i kolona N = ";

cin >> n;

cout<<" Unesi clanove matrice A: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"a["<<i<<","<<j<<"]=";

Page 135: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cin >>a[i][j];

}

cout<<" Sada unesi clanove matrice B: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"b["<<i<<","<<j<<"]=";

cin >>b[i][j];

c[i][j]=a[i][j]*b[i][j];

}

cout<<" Proizvod istoimenih clanova je matrica C: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

cout <<"c["<<i<<","<<j<<"]="<<a[i][j]*b[i][j]<<endl;

system ("pause");

return 0;

}

Primjer 36: Napisati program za množenje matrice vektorom.

RJEŠENJE:

//Množenje matrice vektorom.

#include <iostream>

Page 136: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

using namespace std;

int main () {

// Unos

int m,n, a[30][30], x[30], b[30];

cout << "Unesite broj kolona u matrici: ";

cin >> m;

cout << "Unesite broj redova matrice: ";

cin >> n;

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

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

cout << "Unesite a(" << i << "," << j << "): ";

cin >> a[i][j];

}

cout << endl;

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

cout << "Unesite x(" << i << ")";

cin >> x[i];

}

// Racunanje

for (int i=0; i<n; i++) b[i]=0;

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

for (int j=0; j<m; j++)

b[i]+=a[i][j];

// Ispis

cout << endl;

Page 137: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

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

cout << b[i] << endl;

return 0;

}

Primjer 37: Napisati program za sumu (zbir) tri matrice.

RJEŠENJE:

#include <iostream>

#define dim 10

using namespace std;

main()

{

int n,a[dim][dim],b[dim][dim],c[dim][dim],d[dim][dim];

cout << "Unesi broj redova i kolona N = ";

cin >> n;

cout<<" Unesi clanove matrice A: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

cout<<" Unesi clanove matrice B: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

Page 138: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

{

cout <<"b["<<i<<","<<j<<"]=";

cin >>b[i][j];

}

cout<<" Unesi clanove matrice C: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"c["<<i<<","<<j<<"]=";

cin >>c[i][j];

d[i][j]=a[i][j]+b[i][j]+c[i][j];

}

cout<<" Suma ove tri matrice je matrica D: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

cout <<"d["<<i<<","<<j<<"]="<<a[i][j]+b[i][j]+c[i][j]<<endl;

system ("pause");

return 0;

}

Page 139: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Primjer 38: Napisati program za unos imena i prezimena.

RJEŠENJE:

//Unos imena i prezimena:

#include <iostream>

using namespace std;

int main () {

char ime[40], adresa [50];

int starost;

cout << "Upisite ime i prezime: ";

cin.getline(ime,sizeof(ime));

cout << "Upisite svoju starost: ";

cin >> starost;

cout << "Upisite adresu: ";

cin.getline(adresa,sizeof(adresa));

cin.getline(adresa,sizeof(adresa));

cout << endl << ime << endl << starost << " godina" << endl << adresa << endl;

return 0;

}

MatricePrimjer 1:

Napisati program za ispis članova kvadratne NxN matrice.

RJEŠENJE:

#include <iostream>

Page 140: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

#define dim 10

using namespace std;

int main()

{

int n,i,a[dim][dim];

cout << " Upisi br.redova i kolona matrice nxn = ";

cin >> n;

cout<<endl;

cout<<"Unesi clanove :"<<endl;

for (int i=1;i<=n;i++)

for (int j=1;j<=n; j++)

{

cout <<" a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

cout<<endl;

cout<<" Upisana matrica je : "<<endl;

for(int i=1; i<=n; i++)

{

for (int j=1; j<=n; j++)

cout <<a[i][j]<<" \t ";

cout<<endl;

}

return 0;

}

Page 141: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

EKRAN:

Upisi br.redova i kolona matrice nxn = 3

Unesi clanove :

a[1,1]=12

a[1,2]=3

a[1,3]=962

a[2,1]=23

a[2,2]=7

a[2,3]=18

a[3,1]=156

a[3,2]=77

a[3,3]=3471

Upisana matrica je :

12 3 962

23 7 18

156 77 3471

Primjer 2:

Napisati program za ispis članova pravougaone matrice MxN.

RJEŠENJE:

#include <iostream>

#define brr 10

#define brk 10

using namespace std;

int main()

{

Page 142: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

int n,i,j,m,a[brr][brk];

cout << " Upisi br.redova m = ";

cin >> n;

cout << " Upisi br.kolona n = ";

cin>>m;

cout<<endl;

cout<<"Unesi clanove :"<<endl;

for (int i=1;i<=n;i++)

for (int j=1;j<=m; j++)

{

cout <<" a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

cout<<endl;

cout<<" Upisana matrica je : "<<endl;

for(int i=1; i<=n; i++)

{

for (int j=1; j<=m; j++)

cout <<a[i][j]<<" \t ";

cout<<endl;

}

return 0;

}

EKRAN:

Upisi br.redova m = 2

Page 143: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Upisi br.kolona n = 3

Unesi clanove :

a[1,1]=2

a[1,2]=13

a[1,3]=1557

a[2,1]=34

a[2,2]=921

a[2,3]=45

Upisana matrica je :

2 13 1527

34 921 45

Primjer 3:

Napisati program koji ispisuje najveći(max) član upisane matrice.

RJEŠENJE:

//Ispisuje najveći član poznate matrice

#include <iostream>

using namespace std;

const int redovi = 3;

const int kolone = 4;

int godDobTemp[redovi][kolone] = {

{26, 34, 22, 17},

{24, 32, 49, 13},

{28, 38, 25, 20}

};

int najvecaTemp (int temp[redovi][kolone])

Page 144: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

{

int najveca = 0;

for (int i = 0; i < redovi; ++i)

for (int j = 0; j < kolone; ++j)

if (temp[i][j] > najveca)

najveca = temp[i][j];

return najveca;

}

main ()

{

Cout<<“Najveci(max) clan je .... „;

cout << najvecaTemp(godDobTemp) << "\n";

return 0;

}

EKRAN:

Najveci(max) clan je .... 49

Primjer 4:

Napisati program koji ispisuje najveći(max) član kvadratne matrice NxN.

RJEŠENJE:

#include <iostream>

#define dim 10

using namespace std;

main()

{

int n,a[dim][dim],max=0;

Page 145: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout << "Unesi broj kolona i redova N = ";

cin >> n;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"a["<<i<<","<<j<<"]=";

cin >>a[i][j];

if (a[i][j]>max)

max=a[i][j];

}

cout<<"Najveci clan je : "<<max<<endl;

system ("pause");

return 0;

}

EKRAN:

Unesi broj kolona i redova N = 3

a[1,1]=312

a[1,2]=73

a[1,3]=92

a[2,1]=235

a[2,2]=7

a[2,3]=1398

a[3,1]=156

a[3,2]=717

a[3,3]=471

Page 146: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Najveci clan je : 1398

Primjer 5:

Napisati program koji ispisuje najveći(max) član pravougaone matrice MxN.

RJEŠENJE:

//Ispisuje najveci clan matrice MxN

#include <iostream>

#define brr 10

#define brk 10

using namespace std;

int main()

{

int n,m,a[brr][brk],max=0;

cout << "Unesi broj redova m = ";

cin >> m;

cout << "Unesi broj kolona n = ";

cin >> n;

cout<<endl;

cout<<"Upisi clanove matrice :"<<endl;

for (int i=1; i<=m; i++)

for (int j=1;j<=n; j++)

{

cout <<" a["<<i<<","<<j<<"]=";

cin >>a[i][j];

if (a[i][j]>max)

max=a[i][j];

Page 147: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

}

cout<<endl;

cout<<" Upisana matrica je : ";

for(int i=1; i<=m; i++)

{

cout << endl;

for (int j=1; j<=n; j++)

cout <<a[i][j]<<" \t ";

}

cout<<endl;

cout<<endl;

cout<<"Najveci clan je : "<<max<<endl;

return 0;

}

EKRAN:

Unesi broj redova m = 3

Unesi broj kolona n = 4

Upisi clanove matrice :

a[1,1]=23

a[1,2]=12

a[1,3]=56

a[1,4]=123

a[2,1]=4

a[2,2]=987

a[2,3]=15

Page 148: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

a[2,4]=3163

a[3,1]=439

a[3,2]=2987

a[3,3]=152

a[3,4]=88

Upisana matrica je :

23 12 56 123

4 921 15 3163

439 2987 152 82

Najveci clan je : 3163

Primjer 6:

Napisati program koji ispisuje članove pomnožene sa najvećim članom upisane kvadratne matrice NxN .

RJEŠENJE:

//Ispisuje najveći(max)clan matrice i matricu pomnozenu sa max.clanom

#include <iostream>

#define dim 10

using namespace std;

int main()

{

int n,i,a[dim][dim],b[dim][dim],max=0;

cout << "Unesi br.redova i kolona n=";

cin >> n;

for (int i=1;i<=n;i++)

for (int j=1;j<=n; j++)

{

Page 149: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout <<" a["<<i<<","<<j<<"]=";

cin >>a[i][j];

if (a[i][j]>max)

max=a[i][j];

b[i][j]=max*a[i][j];

}

cout<<endl;

cout<<"Najveci clan matrice je : "<<max<<endl;

cout<<endl;

cout<<" Clanovi matrice pomnozenih sa... "<<max<< " su: "<<endl;

for (int i=1;i<=n;i++)

for (int j=1;j<=n; j++)

{

cout <<" a["<<i<<","<<j<<"]="<<max*a[i][j]<<endl;

b[i][j]=max*a[i][j];

}

cout<<endl;

cout<<"Dobivena matrica je : "<<endl;

for(int i=1; i<=n; i++)

{

for (int j=1; j<=n; j++)

cout <<b[i][j]<<" \t ";

cout<<endl;

}

return 0;

Page 150: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

}

EKRAN:

Unesi br.redova i kolona n = 3

a[1,1]=2

a[1,2]=8

a[1,3]=11

a[2,1]=1

a[2,2]=4

a[2,3]=21

a[3,1]=12

a[3,2]=33

a[3,3]=5

Najveci clan matrice je : 33

Clanovi matrice pomnozenih sa... 33 su:

a[1,1]=66

a[1,2]=264

a[1,3]=363

a[2,1]=33

a[2,2]=132

a[2,3]=693

a[3,1]=396

a[3,2]=1089

a[3,3]=165

Dobivena matrica je :

66 264 363

Page 151: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

33 132 693

396 1089 165

Primjer 7:

Napisati program koji ispisuje pravougaonu matricu MxN i matricu A sortiranu po redovima min...max.

RJEŠENJE:

//Ispisuje matricu mxn i matricu A sortiranu po redovima

#include <cstdlib>

#include <iostream>

using namespace std;

unsigned int m,n;

int i,j,k;

float A['m']['n'];

int main()

{

cout<<"Unesite broj redova m = "; cin>>m;

cout<<"Unesite broj kolona n = "; cin>>n;

cout<<"Upisi clanove matrice A :"<<endl;

// Unos elemenata matrice po redovima (za unos po kolonama zamijeniti mjesta indeksima)

for(i=0; i<m; i++){

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

cout<<"A["<<i<<"]["<<j<<"] = "; cin>>A[i][j];

}}

cout<<endl;

cout<<"Upisana je matrica A:"<<endl;

// Ispis elemenata matrice

Page 152: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for(i=0; i<m; i++){

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

cout<<A[i][j]<<"\t";

}

cout<<"\n";

}

// Sortirati matricu A['m']['n'] po redovima od najmanjeg do najveceg elemnta

for(i=0; i<m; i++){

for(j=0; j<n-1; j++){

for(k=j+1; k<n; k++){

if(A[i][k]<A[i][j]){

float pom=A[i][j];

A[i][j]=A[i][k];

A[i][k]=pom;}

}}}

// Ispis elemenata matrice

cout<<"\nMatrica A sortirana po redovima je:\n";

for(i=0; i<m; i++){

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

cout<<A[i][j]<<"\t";

}

cout<<"\n";

}

system("PAUSE");

Page 153: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

return 0;

}

EKRAN:

Unesite broj redova m = 3

Unesite broj kolona n = 4

Upisi clanove matrice A :

a[0,0]=231

a[0,1]=1284

a[0,2]=56

a[0,3]=123

a[1,0]=477

a[1,1]=79

a[1,2]=15

a[1,3]=3163

a[2,0]=639

a[2,1]=2987

a[2,2]=152

a[2,3]=82

Upisana matrica je :

231 1284 56 123

477 79 15 3163

639 2987 152 82

Matrica A sortirana po redovima je:

56 123 231 1284

15 79 477 3163

Page 154: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

82 152 639 2987

Primjer 8:

Napisati program koji ispisuje pravougaonu matricu MxN i max.clanove po redovima upisane matrice.

RJEŠENJE:

#include <cstdlib>

#include <iostream>

using namespace std;

unsigned int m,n;

int i,j,k;

float A['m']['n'],R['m'];

int main()

{

cout<<"Unesite broj redova m = "; cin>>m;

cout<<"Unesite broj kolona n = "; cin>>n;

cout<<"Unesi elemente matrice A :"<<endl;

// Unos elemenata matrice po redovima (za unos po kolonama zamijeniti mjesta indeksima)

for(i=0; i<m; i++){

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

cout<<" A["<<i<<"]["<<j<<"] = "; cin>>A[i][j];

}}

cout<<endl;

cout<<"Upisana je matrica A:"<<endl;

// Ispis elemenata matrice

for(i=0; i<m; i++){

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

Page 155: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<A[i][j]<<"\t";

}

cout<<"\n";

}

// Trazenje najveceg elementa matrice A

unsigned int i_max=0,j_max=0; //pretpostavljamo da je prvi elemnt najveci

for(i=0; i<m; i++){

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

if(A[i][j]>A[i_max][j_max]){

i_max=i;

j_max=j;

}}}

// Naci najveci element svakog reda matrice i pridruziti ga odgovarajucem

// elementu niza R['m']

for(i=0; i<m; i++){

j_max=0;

for(j=1; j<n; j++){

if(A[i][j]>A[i][j_max]) j_max=j;

}

R[i]=A[i][j_max];

}

cout<<"Najveci elementi redova matrice A su:\n";

for(i=0; i<m; i++){cout<<R[i]<<" ";}

cout<<"\n";

system("PAUSE");

Page 156: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

return 0;

}

EKRAN:

Unesite broj redova m = 3

Unesite broj kolona n = 4

Unesi elemente matrice A :

a[0,0]=2

a[0,1]=584

a[0,2]=26

a[0,3]=123

a[1,0]=847

a[1,1]=79

a[1,2]=5

a[1,3]=7163

a[2,0]=639

a[2,1]=2987

a[2,2]=211

a[2,3]=38

Upisana matrica je :

2 584 26 123

847 79 5 7163

639 2987 211 38

Najveci elementi redova matrice A su:

584 7163 2987

Page 157: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Primjer 9:

Napisati program koji ispisuje matricu A,sumu(zbir)elemenata i srednju vrijednost clanova.

RJEŠENJE:

//Ispisuje sumu (zbir) i srednju vrijednost clanova pravougaone matrice A

#include <cstdlib>

#include <iostream>

using namespace std;

unsigned int m,n;

int i,j,k;

float A['m']['n'];

int main()

{

cout<<"Unesite broj redova m = "; cin>>m;

cout<<"Unesite broj kolona n = "; cin>>n;

cout<<"Upisi clanove matrice A :"<<endl;

for(i=0; i<m; i++){

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

cout<<" A["<<i<<"]["<<j<<"] = "; cin>>A[i][j];

}}

cout<<endl;

cout<<"Upisana je matrica A:"<<endl;

// Ispis elemenata matrice

for(i=0; i<m; i++){

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

cout<<A[i][j]<<"\t";

Page 158: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

}

cout<<"\n";

}

// Suma i srednja vrijednost elemenata matrice

float suma=0;

for(i=0; i<m; i++){

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

suma+=A[i][j]; // suma=suma+A[i][j];

}}

cout<<endl;

cout<<"Suma svih elemenata matrice je "<<suma

<<", a srednja vrijednost je "<<suma/(m*n)<<".\n";

system("PAUSE");

return 0;

}

EKRAN:

Unesite broj redova m = 3

Unesite broj kolona n = 4

Upisi clanove matrice A :

a[0,0]=24

a[0,1]=5

a[0,2]=11

a[0,3]=53

a[1,0]=8

Page 159: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

a[1,1]=90

a[1,2]=15

a[1,3]=3

a[2,0]=392

a[2,1]=28

a[2,2]=2

a[2,3]=86

Upisana je matrica A :

24 5 11 53

8 90 15 3

392 28 2 86

Suma svih elemenata matrice je 717, a srednja vrijednost je 59.75.

Primjer 10:

Napisati program koji ispisuje kvadratnu matricu A,sumu elemenata reda i zbir clanova kolone.

RJEŠENJE:

//Ispisuje matricu,sumu cl.kolone i sumu cl.reda

#include <iostream.h>

#define max 10

main ()

{

int matrica[max][max], sk[max], sr[max];

int n,s=0,p=1;

cout << " Unesi br.redova i kolona matrice nxn = ";

cin >> n;

for (int i=1; i<=max; i++)

Page 160: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

{

sk[i]=0;

sr[i]=0;

}

for (int i=1; i<=n; i++)

for (int j=1; j<=n; j++)

{

cout <<"polje["<<i<<","<<j<<"]=";

cin >> matrica[i][j];

sk[j]+=matrica[i][j];

sr[i]+=matrica[i][j];

}

cout<<endl;

cout<<" Upisana matrica je : "<<endl;

for(int i=1; i<=n; i++)

{

cout << endl;

for (int j=1; j<=n; j++)

cout <<matrica[i][j]<<" \t ";

}

cout<<endl;

for (int i=1; i<=n; i++)

cout<<" Suma kolone ["<<i<<"] = "<<sk[i]<<endl;

cout<<endl;

for (int i=1; i<=n; i++)

Page 161: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<"Suma reda ["<<i<<"] = "<<sr[i]<<endl;

return 0;

}

EKRAN:

Unesi br.redova i kolona matrice nxn = 3

polje[1,1]=12

polje[1,2]=378

polje[1,3]=4

polje[2,1]=98

polje[2,2]=11

polje[2,3]=2

polje[3,1]=61

polje[3,2]=9

polje[3,3]=20

Upisana matrica je :

12 378 4

98 111 2

61 9 20

Suma kolone [1] = 171

Suma kolone [2] = 498

Suma kolone [3] = 26

Suma reda [1] = 394

Suma reda [2] = 211

Suma reda [1] = 90

Primjer 11:

Page 162: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Napisati program koji ispisuje pravugaonu matricu MxN, proizvod clanova kolone i sumu elemenata reda upisane matrice .

RJEŠENJE:

//Ispisuje matricu,proizvod cl.kolone i sumu cl.reda

#include <iostream>

#define brr 10

#define brk 10

using namespace std;

int main ()

{

int matrica[brr][brk], pk[brk], sr[brr];

int n,m;

cout << " Unesi br.redova : ";

cin >> n;

cout << " Unesi br.kolona : ";

cin>>m;

cout<<endl;

cout<<"Unesi clanove :"<<endl;

for (int i=1; i<=brr; i++)

for (int j=1; i<=brk; i++)

{

pk[i]=1;

sr[i]=0;

}

for (int i=1; i<=n; i++)

for (int j=1; j<=m; j++)

Page 163: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

{

cout <<"polje["<<i<<","<<j<<"]=";

cin >> matrica[i][j];

pk[j]*=matrica[i][j];

sr[i]+=matrica[i][j];

}

cout<<endl;

cout<<" Upisana matrica je : ";

for(int i=1; i<=n; i++)

{

cout << endl;

for (int j=1; j<=m; j++)

cout <<matrica[i][j]<<" \t ";

}

cout<<endl;

for (int i=1; i<=m; i++)

cout<<" Proizvod kolone ["<<i<<"] = "<<pk[i]<<endl;

cout<<endl;

for (int i=1; i<=n; i++)

cout<<"Suma reda ["<<i<<"] = "<<sr[i]<<endl;

return 0;

}

EKRAN:

Unesi br.redova m = 3

Unesi br.kolopna n = 4

Page 164: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

polje[1,1]=12

polje[1,2]=378

polje[1,3]=4

polje[1,4]=214

polje[2,1]=98

polje[2,2]=11

polje[2,3]=2

polje[2,4]=43

polje[3,1]=61

polje[3,2]=9

polje[3,3]=20

polje[3,4]=742

Upisana matrica je :

12 378 4 214

98 111 2 43

61 9 20 742

Proizvod kolone [1] = 71736

Proizvod kolone [2] = 37422

Proizvod kolone [3] = 16 0

Proizvod kolone [4] = 6827884

Suma reda [1] = 608

Suma reda [2] = 244

Suma reda [1] = 832

Primjer 12:

Napisati program koji ispisuje pravugaonu matricu MxN,proizvod elemenata reda i proizvod clanova kolone.

Page 165: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

RJEŠENJE:

//Ispisuje pravougaonu matricu,proizvod cl.kolone i proizvod cl.reda

#include <iostream>

#define brr 10

#define brk 10

using namespace std;

int main ()

{

int matrica[brr][brk], pk[brk], pr[brr];

int n,m;

cout << " Unesi br.redova : ";

cin >> n;

cout << " Unesi br.kolona : ";

cin>>m;

cout<<endl;

cout<<"Unesi clanove :"<<endl;

for (int i=1; i<=brr; i++)

for (int j=1; i<=brk; i++)

{

pk[i]=1;

pr[i]=1;

}

for (int i=1; i<=n; i++)

for (int j=1; j<=m; j++)

{

Page 166: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout <<"polje["<<i<<","<<j<<"]=";

cin >> matrica[i][j];

pk[j]*=matrica[i][j];

pr[i]*=matrica[i][j];

}

cout<<endl;

cout<<" Upisana matrica je : ";

for(int i=1; i<=n; i++)

{

cout << endl;

for (int j=1; j<=m; j++)

cout <<matrica[i][j]<<" \t ";

}

cout<<endl;

for (int i=1; i<=m; i++)

cout<<" Proizvod kolone ["<<i<<"] = "<<pk[i]<<endl;

cout<<endl;

for (int i=1; i<=n; i++)

cout<<"Proizvod reda ["<<i<<"] = "<<pr[i]<<endl;

return 0;

}

EKRAN:

Unesi br.redova m = 2

Unesi br.kolopna n = 3

polje[1,1]=2

Page 167: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

polje[1,2]=4

polje[1,3]=11

polje[2,1]=3

polje[2,2]=6

polje[2,3]=22

Upisana matrica je :

2 4 11

3 6 22

Proizvod kolone [1] = 6

Proizvod kolone [2] = 24

Proizvod kolone [3] = 232

Proizvod reda [1] = 88

Proizvod reda [2] = 396

Primjer 13:

Napisati program koji ispisuje proizvod članova u koloni ,sumu(zbir)članova u redu upisane matrice a zatim matricu ciji su clanovi pomnozeni sa 2.

RJEŠENJE:

#include <iostream>

#define brr 10

#define brk 10

using namespace std;

int main ()

{

int matrica[brr][brk], sk[brk], pr[brr];

int n,m;

Page 168: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout << " Unesi br.redova : ";

cin >> n;

cout << " Unesi br.kolona : ";

cin>>m;

cout<<endl;

cout<<"Unesi clanove :"<<endl;

for (int i=1; i<=brr; i++)

for (int j=1; i<=brk; i++)

{

sk[i]=0;

pr[i]=1;

}

for (int i=1; i<=n; i++)

for (int j=1; j<=m; j++)

{

cout <<"polje["<<i<<","<<j<<"]=";

cin >> matrica[i][j];

sk[j]+=matrica[i][j];

pr[i]*=matrica[i][j];

}

cout<<endl;

cout<<" Upisana matrica je : ";

for(int i=1; i<=n; i++)

{

cout << endl;

Page 169: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for (int j=1; j<=m; j++)

cout <<matrica[i][j]<<" \t ";

}

cout<<endl;

for (int i=1; i<=m; i++)

cout<<" Suma kolone ["<<i<<"] = "<<sk[i]<<endl;

cout<<endl;

for (int i=1; i<=n; i++)

cout<<"Proicvod reda ["<<i<<"] = "<<pr[i]<<endl;

cout<<endl;

cout<<" Matrica sa clanovima pomnozeni sa 2 je : ";

for(int i=1; i<=n; i++)

{

cout << endl;

for (int j=1; j<=m; j++)

cout <<matrica[i][j]*2<<" \t ";

}

return 0;

}

EKRAN:

Unesi br.redova m = 3

Unesi br.kolopna n = 4

polje[1,1]=2

polje[1,2]=1

polje[1,3]=3

Page 170: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

polje[1,4]=23

polje[2,1]=11

polje[2,2]=6

polje[2,3]=5

polje[2,4]=33

polje[3,1]=100

polje[3,2]=20

polje[3,3]=15

polje[3,4]=9

Upisana matrica je :

2 1 3 23

11 6 5 33

1 00 20 15 9

Suma kolone [1] = 113

Suma kolone [2] = 27

Suma kolone [3] = 23

Suma kolone [4] = 65

Proizvod reda [1] = 138

Proizvod reda [2] = 10890

Proizvod reda [1] = 270000

Matrica sa clanovima pomnozeni sa 2 je :

4 2 6 46

22 12 10 66

2 00 40 30 18

Primjer 14:

Page 171: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Napisati program za unos matrice A , ispis zbira(sume) clanova i ispis sume(zbira) elementa koji su djeljivi sa 2.

RJEŠENJE:

//suma clanova djeljivih sa 2

#include <iostream>

#define dim 10

using namespace std;

int main()

{

int n,i,a[dim][dim],zbir;

cout << " Upisi br.redova i kolona matrice nxn = ";

cin >> n;

cout<<endl;

cout<<"Unesi clanove :"<<endl;

for (int i=1;i<=n;i++)

for (int j=1;j<=n; j++)

{

cout <<" a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

zbir=0;

for(int i=1;i<=n;i++)

{

for(int j=1;j<=n;j++)

{

Page 172: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

if(a[i][j]%2==0)

zbir=zbir+a[i][j];

}

}

cout<<endl;

cout<<" Upisana matrica je : "<<endl;

for(int i=1; i<=n; i++)

{

for (int j=1; j<=n; j++)

cout <<a[i][j]<<" \t ";

cout<<endl;

}

cout<<"Suma clanova djeljivih sa 2 je : "<<zbir<<endl;

return 0;

}

EKRAN:

Unesi br.redova i kolona matrice nxn = 3

Unesi clanove :

a[1,1]=1

a[1,2]=2

a[1,3]=3

a[2,1]=4

a[2,2]=5

a[2,3]=6

a[3,1]=7

Page 173: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

a[3,2]=8

a[3,3]=10

Upisana matrica je :

1 2 3

4 5 6

7 8 10

Suma clanova djeljivih sa 2 je : 30

Primjer 15:

Napisati program za unos matrice A , ispis broja clanova koji su djeljivi sa 3 i broj clanova djeljivih sa 2 .

RJEŠENJE:

//Ispisuje matricu,broj clanova djeljivih sa 3 i broj clanova djeljivih sa 2

#include <iostream>

#define max 10

using namespace std;

int main ()

{

int matrica[max][max];

int n,s,s1;

cout << " Unesi br.redova i kolona matrice nxn = ";

cin >> n;

for (int i=1; i<=max; i++)

{

s=0;

s1=0;

}

Page 174: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for (int i=1; i<=n; i++)

for (int j=1; j<=n; j++)

{

cout <<"polje["<<i<<","<<j<<"]=";

cin >> matrica[i][j];

s+=matrica[i][j]%3==0;

s1+=matrica[i][j]%2==0;

}

cout<<endl;

cout<<" Upisana matrica je : "<<endl;

for(int i=1; i<=n; i++)

{

cout << endl;

for (int j=1; j<=n; j++)

cout <<matrica[i][j]<<" \t ";

}

cout<<endl;

cout<<endl;

cout<<"Broj clanova djeljivih sa 3 je : "<<s<<endl;

cout<<" ,a djeljivi sa 2 je : "<<s1<<" "<<endl;

return 0;

}

EKRAN:

Unesi br.redova i kolona matrice nxn = 3

a[1,1]=1

Page 175: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

a[1,2]=2

a[1,3]=3

a[2,1]=4

a[2,2]=5

a[2,3]=6

a[3,1]=7

a[3,2]=8

a[3,3]=9

Upisana matrica je :

1 2 3

4 5 6

7 8 9

Broj clanova djeljivih sa 3 je : 3

, a djeljivih sa 2 je : 4

Primjer 16:

Napisati program za unos matrice A , ispis clanova djeljivih sa „p“ i njihovu sumu.

RJEŠENJE:

//Ispis clanova djeljivih sa "p" i njihov zbir(suma)

#include <iostream>

#define dim 10

using namespace std;

int main()

{

int n,i,a[dim][dim],zbir,p;

cout << " Upisi br.redova i kolona matrice nxn = ";

Page 176: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cin >> n;

cout<<endl;

cout<<"Unesi clanove :"<<endl;

for (int i=1;i<=n;i++)

for (int j=1;j<=n; j++)

{

cout <<" a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

cout<<"Upisi djelilac P = ";

cin>>p;

cout<<endl;

zbir=0;

for(int i=1;i<=n;i++)

{

for(int j=1;j<=n;j++)

{

if(a[i][j]%p==0)

zbir=zbir+a[i][j];

}

}

cout<<endl;

cout<<" Upisana matrica je : "<<endl;

for(int i=1; i<=n; i++)

Page 177: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

{

for (int j=1; j<=n; j++)

cout <<a[i][j]<<" \t ";

cout<<endl;

}

cout<<endl;

cout<<"Clanovi djeljivih sa "<<p<<" su : "<<endl;

for(int i=1; i<=n; i++)

{

for (int j=1; j<=n; j++)

if(a[i][j]%p==0)

cout <<a[i][j]<<" \t ";

cout<<endl;

}

cout<<"Suma clanova djeljivih sa "<<p<<" je : "<<zbir<<endl;

return 0;

}

EKRAN:

Upisi br.redova i kolona matrice nxn = 3

Unesi clanove :

a[1,1]=12

a[1,2]=2

a[1,3]=3

a[2,1]=4

a[2,2]=5

Page 178: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

a[2,3]=44

a[3,1]=7

a[3,2]=200

a[3,3]=10

Upisi djelilac P = 4

Upisana matrica je :

12 2 3

4 5 44

7 200 10

Clanovi djeljivi sa 4 su :

12

4 44

200

Suma clanova djeljivih sa 4 je : 260

Primjer 17:

Napisati program za unos matrice A , ispis zbira(sume) clanova i ispis matrice B ciji su elementi uvecani za ovu sumu.

RJEŠENJE:

//Ispisuje sumu (zbir) clanova matrice A i matricu B ciji su clanovi uvecani za sumu upisanih clanova

#include <cstdlib>

#include <iostream>

using namespace std;

unsigned int m,n;

int i,j,k;

float A['m']['n'];

Page 179: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

int main()

{

cout<<"Unesite broj redova m = "; cin>>m;

cout<<"Unesite broj kolona n = "; cin>>n;

cout<<"Upisi clanove matrice A :"<<endl;

for(i=0; i<m; i++){

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

cout<<" A["<<i<<"]["<<j<<"] = "; cin>>A[i][j];

}}

cout<<endl;

cout<<"Upisana je matrica A:"<<endl;

// Ispis elemenata matrice

for(i=0; i<m; i++){

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

cout<<A[i][j]<<"\t";

}

cout<<"\n";

}

// Suma elemenata matrice

float suma=0;

for(i=0; i<m; i++){

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

suma+=A[i][j]; // suma=suma+A[i][j];

}}

Page 180: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<endl;

cout<<"Suma svih elemenata matrice A je "<<suma<<".\n";

cout<<endl;

cout<<" Matrica B,elementi uvecani za..."<<suma<<endl;

// Ispis elemenata matrice

for(i=0; i<m; i++){

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

cout<<A[i][j]+int(suma)<<"\t";

}

cout<<"\n";

}

system("PAUSE");

return 0;

}

EKRAN:

Unesite broj redova m = 3

Unesite broj kolona n = 4

Upisi clanove matrice A :

a[0,0]=9

a[0,1]=8

a[0,2]=7

a[0,3]=6

a[1,0]=5

a[1,1]=4

a[1,2]=3

Page 181: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

a[1,3]=2

a[2,0]=1

a[2,1]=23

a[2,2]=4

a[2,3]=5

Upisana je matrica A :

9 8 7 6

5 4 3 2

1 23 4 5

Suma svih elemenata matrice A je 77.

Matrica B,elementi uvecani za...77

86 85 84 83

82 81 80 79

78 100 81 82

Primjer 18:

Napisati program za unos matrice A , ispis max.clanova po redovima i ispis matrice B ciji su elementi sortirani po redovima od min...max.

RJEŠENJE:

#include <cstdlib>

#include <iostream>

using namespace std;

unsigned int m,n;

int i,j,k;

float A['m']['n'],R['m'],K['n'];

int main()

{

Page 182: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<"Unesite broj redova m = "; cin>>m;

cout<<"Unesite broj kolona n = "; cin>>n;

cout<<"Unesi elemente matrice A :"<<endl;

for(i=0; i<m; i++){

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

cout<<" A["<<i<<"]["<<j<<"] = "; cin>>A[i][j];

}}

cout<<endl;

cout<<"Upisana je matrica A:"<<endl;

// Ispis elemenata matrice

for(i=0; i<m; i++){

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

cout<<A[i][j]<<"\t";

}

cout<<"\n";

}

// Trazenje najveceg elementa matrice A

unsigned int i_max=0,j_max=0; //pretpostavljamo da je prvi elemnt najveci

for(i=0; i<m; i++){

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

if(A[i][j]>A[i_max][j_max]){

i_max=i;

j_max=j;

}}}

Page 183: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

// Naci najveci element svakog reda matrice i pridruziti ga odgovarajucem

// elementu niza R['m']

for(i=0; i<m; i++){

j_max=0;

for(j=1; j<n; j++){

if(A[i][j]>A[i][j_max]) j_max=j;

}

R[i]=A[i][j_max];

}

cout<<"Najveci elementi redova matrice A su:\n";

for(i=0; i<m; i++){cout<<R[i]<<" ";}

cout<<"\n";

// Sortirati matricu A['m']['n'] po redovima od najmanjeg do najveceg elemnta

for(i=0; i<m; i++){

for(j=0; j<n-1; j++){

for(k=j+1; k<n; k++){

if(A[i][k]<A[i][j]){

float pom=A[i][j];

A[i][j]=A[i][k];

A[i][k]=pom;}

}}}

// Ispis elemenata matrice

cout<<"\nMatrica A sortirana po redovima je:\n";

for(i=0; i<m; i++){

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

Page 184: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<A[i][j]<<"\t";

}

cout<<"\n";

}

system("PAUSE");

return 0;

}

EKRAN:

Unesite broj redova m = 3

Unesite broj kolona n = 4

Uneisi clanove matrice A :

a[0,0]=12

a[0,1]=54

a[0,2]=3

a[0,3]=2

a[1,0]=7

a[1,1]=89

a[1,2]=123

a[1,3]=4

a[2,0]=6

a[2,1]=337

a[2,2]=100

a[2,3]=32

Upisana je matrica A :

12 54 3 2

Page 185: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

7 89 123 4

6 337 100 32

Najveci elementi redova matrice A su :

54 123 337

Matrica A sortirana po redovima je :

2 3 12 54

4 7 89 123

6 32 100 337

Primjer 19:

Napisati program za unos matrice A i ispis clanova glavne dijagonale.

RJEŠENJE:

//Ispisuje elemente glavne dijagonale matrice A

#include <cstdlib>

#include <iostream>

using namespace std;

unsigned int m,n;

int i,j,k;

float A['m']['n'];

int main()

{

cout<<"Unesite broj redova i kolona m = "; cin>>m;

cout<<"Upisi clanove matrice A :"<<endl;

for(i=0; i<m; i++){

for(j=0; j<m; j++){

cout<<" A["<<i<<"]["<<j<<"] = "; cin>>A[i][j];

Page 186: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

}}

cout<<endl;

cout<<"Upisana je matrica A:"<<endl;

// Ispis elemenata matrice

for(i=0; i<m; i++){

for(j=0; j<m; j++){

cout<<A[i][j]<<"\t";

}

cout<<"\n";

}

cout<<endl;

// Ispis elemenata glavne dijagonale matrice

cout<<"Elementi glavne dijagonale su:\n";

for(i=0; i<m; i++){cout<<A[i][i]<<" ";}

cout<<endl;

return 0;

}

EKRAN:

Unesite broj redova i kolona m = 3

Upisi clanove matrice A :

a[0,0]=12

a[0,1]=54

a[0,2]=3

a[1,0]=7

a[1,1]=89

Page 187: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

a[1,2]=123

a[2,0]=6

a[2,1]=337

a[2,2]=100

Upisana je matrica A :

12 54 3

7 89 123

6 337 100

Elementi glavne dijagonale su :

12 89 100

Primjer 20:

Napisati program za unos matrice A i ispis clanova glavne i sporedne dijagonale.

RJEŠENJE:

//Ispisuje elemente glavne i sporedne dijagonale matrice A

#include <cstdlib>

#include <iostream>

using namespace std;

unsigned int m,n;

int i,j,k;

float A['m']['n'];

int main()

{

cout<<"Unesite broj redova i kolona m = "; cin>>m;

cout<<"Upisi clanove matrice A :"<<endl;

for(i=0; i<m; i++){

Page 188: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for(j=0; j<m; j++){

cout<<" A["<<i<<"]["<<j<<"] = "; cin>>A[i][j];

}}

cout<<endl;

cout<<"Upisana je matrica A:"<<endl;

// Ispis elemenata matrice

for(i=0; i<m; i++){

for(j=0; j<m; j++){

cout<<A[i][j]<<"\t";

}

cout<<"\n";

}

cout<<endl;

// Ispis elemenata glavne i sporedne dijagonale matrice

cout<<"Elementi glavne dijagonale su:\n";

if(m<n) k=m; //broj elemenata glavne odn. sporedne dijagonale

else k=m; //odgovara broju manje dimenzije matrice

for(i=0; i<k; i++){cout<<A[i][i]<<" ";}

cout<<endl;

cout<<"\nElementi sporedne dijagonale su:\n";

for(i=0; i<k; i++){cout<<A[i][m-1-i]<<" ";}

cout<<endl;

return 0;

}

EKRAN:

Page 189: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Unesite broj redova i kolona m = 3

Upisi clanove matrice A :

A[0,0]=1

A[0,1]=2

A[0,2]=3

A[1,0]=4

A[1,1]=5

A[1,2]=6

A[2,0]=7

A[2,1]=8

A[2,2]=9

Upisana je matrica A :

1 2 3

4 5 6

7 8 9

Elementi glavne dijagonale su :

1 5 9

Elementi sporedne dijagonale su :

3 5 7

Primjer 21:

Napisati program za unos matrice A i ispis clanova glavne i njihovu sumu(zbir).

RJEŠENJE:

//Ispisuje clanove glavne dijagonali i njihov zbir

#include <iostream>

#define dim 10

Page 190: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

using namespace std;

int main()

{

int n,i,a[dim][dim],suma;

cout << " Upisi br.redova i kolona matrice nxn = ";

cin >> n;

cout<<endl;

cout<<"Unesi clanove :"<<endl;

for (int i=1;i<=n;i++)

for (int j=1;j<=n; j++)

{

cout <<" a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

suma=0;

for (int i=1; i<n+1; i++)

{

suma = suma + a[i][i];

}

cout<<endl;

cout<<" Upisana matrica je : "<<endl;

for(int i=1; i<=n; i++)

{

for (int j=1; j<=n; j++)

Page 191: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout <<a[i][j]<<" \t ";

cout<<endl;

}

cout<<endl;

cout<<" CL.glavne dijagonale su : "<<endl;

for(int i=1; i<=n; i++)

{

cout <<a[i][i]<<" \t ";

}

cout<<endl;

cout<<endl;

cout<<"Zbir clanova glavne dijagonale je :"<<suma<<endl;

return 0;

}

RJEŠENJE:

Unesite broj redova i kolona m = 3

Unesi clanove :

a[1,1]=12

a[1,2]=3

a[1,3]=4

a[2,1]=5

a[2,2]=6

a[2,3]=7

a[3,1]=23

a[3,2]=42

Page 192: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

a[3,3]=100

Upisana je matrica A :

12 3 4

5 6 7

23 42 100

CL. glavne dijagonale su :

12 6 100

Zbir clanova glavne dijagonale je : 118

Primjer 22:

Napisati program za unos matrice A i ispis sume(zbira) clanova glavne dijagonale.

RJEŠENJE:

//Ispis matrice i sumu(zbir) clanova glavne dijagonale

#include <stdio.h>

#include <conio.h>

#define MAX 20

int main(){

int i,j,n,mat[MAX][MAX];

float sum=0;

printf("\nUnesi velicinu cjelobrojne kvadratne matrice nxn: ");

scanf("%d",&n);

printf("\nUnesi elemente matrice:\n\n");

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

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

printf("\tM[%d][%d]= ",i+1,j+1);

scanf("%d",&mat[i][j]);

Page 193: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

if(i==j) sum += mat[i][j];

}

}

printf("\nUnesena je matrica:\n\n");

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

printf("\n");

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

printf("\t%d",mat[i][j]);

}

}

printf("\n\nSuma (zbir) clanova glavne dijagonale je %f", sum);

getch();

return 0;

}

EKRAN:

Unesi br.redova i kolona matrice nxn = 3

Unesi clanove :

a[1,1]=12

a[1,2]=2

a[1,3]=3

a[2,1]=4

a[2,2]=5

a[2,3]=44

a[3,1]=7

a[3,2]=200

Page 194: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

a[3,3]=10

Upisana matrica je :

12 2 3

4 5 44

7 200 10

Suma clanova glavne dijagonale je : 27

Primjer 23:

Napisati program za unos matrice A i ispis sume clanova glavne dijagonale i ispis zbira clanova sporedne dijagonale.

RJEŠENJE:

//Ispis matrice i suma clanova dijagonala

#include <stdio.h>

#include <conio.h>

#define MAX 20

int main(){

int i,j,n,mat[MAX][MAX];

float sumd=0,suml=0;

printf("\nUnesi velicinu cjelobrojne kvadratne matrice nxn: ");

scanf("%d",&n);

printf("\nUnesi elemente matrice:\n\n");

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

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

printf("\tM[%d][%d]= ",i+1,j+1);

scanf("%d",&mat[i][j]);

if(i==j) suml += mat[i][j];

if(i+j==n-1) sumd += mat[i][j];

Page 195: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

}

}

printf("\nUnesena je matrica:\n\n");

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

printf("\n");

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

printf("\t%d",mat[i][j]);

}

}

printf("\n\nSuma clanova glavne dijagonale je %f", suml);

printf("\n\nSuma clanova sporedne dijagonale je %f", sumd);

return 0;

}

Primjer 24:

Napisati program za unos matrice A i ispis aritmeticke sredine clanova obe dijagonale.

RJEŠENJE:

//Ispis matrice i aritmeticke sredine diijagonalnih clanova

#include <stdio.h>

#include <conio.h>

#define MAX 20

int main(){

int i,j,n,mat[MAX][MAX];

float sred=0;

printf("\nUnesi velicinu cjelobrojne kvadratne matrice nxn: ");

scanf("%d",&n);

Page 196: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

printf("\nUnesi elemente matrice:\n\n");

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

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

printf("\tM[%d][%d]= ",i+1,j+1);

scanf("%d",&mat[i][j]);

if(i==j) sred += mat[i][j];

if(i+j==n-1) sred += mat[i][j];

}

}

sred /= 2*n;

printf("\nUnesena je matrica:\n\n");

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

printf("\n");

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

printf("\t%d",mat[i][j]);

}

}

printf("\n\nAritmeticka sredina dijagonalnih clanova je %f",sred );

getch();

return 0;

}

Primjer 25:

Napisati program za unos matrice A i ispis matrice B ciji su clanovi uvecani za zbir clanova glavne dijagonale.

RJEŠENJE:

#include <stdio.h>

Page 197: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

#include <conio.h>

#define MAX 20

int main(){

int i,j,n,mat[MAX][MAX];

float sum=0;

printf("\nUnesi velicinu cjelobrojne kvadratne matrice nxn: ");

scanf("%d",&n);

printf("\nUnesi elemente matrice:\n\n");

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

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

printf("\tM[%d][%d]= ",i+1,j+1);

scanf("%d",&mat[i][j]);

if(i==j) sum += mat[i][j];

}

}

printf("\nUnesena je matrica:\n\n");

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

printf("\n");

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

printf("\t%d",mat[i][j]);

}

}

printf("\n\nSuma (zbir) clanova glavne dijagonale je %f", sum);

printf("\n");

printf("\nMatrica ciji su clanovi uvecani za ovu sumu je:\n\n");

Page 198: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

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

printf("\n");

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

printf("\t%d",mat[i][j]+int(sum));

}

}

getch();

return 0;

}

Primjer 26:

Napisati program za unos matrice A, ispis sume obe dijagonale pojedinacno i ispis aritmeticke sredine clanova obe dijagonale.

RJEŠENJE:

//Ispis matrice,suma clanova dijagonala i njihova artimeticka sredina

#include <stdio.h>

#include <conio.h>

#define MAX 20

int main(){

int i,j,n,mat[MAX][MAX];

float sumd=0,suml=0;

printf("\nUnesi velicinu cjelobrojne kvadratne matrice nxn: ");

scanf("%d",&n);

printf("\nUnesi elemente matrice:\n\n");

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

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

printf("\tM[%d][%d]= ",i+1,j+1);

Page 199: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

scanf("%d",&mat[i][j]);

if(i==j) suml += mat[i][j];

if(i+j==n-1) sumd += mat[i][j];

}

}

printf(" \nUnesena je matrica:\n");

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

printf("\n");

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

printf("\t%d",mat[i][j]);

}

}

printf("\n\nSuma clanova glavne dijagonale je %f", suml);

printf("\n\nSuma clanova sporedne dijagonale je %f", sumd);

printf("\n\nAritmeticka sredina clanova obe dijagonale je %f", ((suml+sumd)/2));

return 0;

}

Primjer 27:

Napisati program za unos matrice A , ispis sume clanova glavne dijagonale, ispis zbira clanova sporedne dijagonale,ispis aeitmeticke sredine clanova obe dijagonale i ispis matrice B ciji clanovi su clanovi matrice A uvecani za sumu(zbir) clanova glavne i sporedne dijagonale.

RJEŠENJE:

#include <stdio.h>

#include <conio.h>

#define MAX 20

int main(){

Page 200: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

int i,j,n,mat[MAX][MAX];

float sumd=0,suml=0;

printf("\nUnesi velicinu cjelobrojne kvadratne matrice nxn: ");

scanf("%d",&n);

printf("\nUnesi elemente matrice:\n\n");

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

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

printf("\tM[%d][%d]= ",i+1,j+1);

scanf("%d",&mat[i][j]);

if(i==j) suml += mat[i][j];

if(i+j==n-1) sumd += mat[i][j];

}

}

printf(" \nUnesena je matrica A:\n");

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

printf("\n");

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

printf("\t%d",mat[i][j]);

}

}

printf("\n\nSuma clanova glavne dijagonale je %f", suml);

printf("\n\nSuma clanova sporedne dijagonale je %f", sumd);

printf("\n\nAritmeticka sredina clanova obe dijagonale je %f", ((suml+sumd)/2));

printf("\n");

printf("\nMatrica B ciji su clanovi uvecani za %f", (suml+sumd));

Page 201: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

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

printf("\n");

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

printf("\t%d",mat[i][j]+int(suml+sumd));

}

}

return 0;

}

Primjer 28:

Napisati program za unos matrice A , ispis sume clanova glavne dijagonale, ispis zbira clanova sporedne dijagonale, i ispis matrice B ciji clanovi su clanovi matrice A pomnozeni sa sumom(zbirom) clanova sporedne dijagonale.

RJEŠENJE:

#include <stdio.h>

#include <conio.h>

#define MAX 20

int main(){

int i,j,n,mat[MAX][MAX];

float sumd=0,suml=0;

printf("\nUnesi velicinu cjelobrojne kvadratne matrice nxn: ");

scanf("%d",&n);

printf("\nUnesi elemente matrice:\n\n");

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

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

printf("\tM[%d][%d]= ",i+1,j+1);

scanf("%d",&mat[i][j]);

Page 202: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

if(i==j) suml += mat[i][j];

if(i+j==n-1) sumd += mat[i][j];

}

}

printf(" \nUnesena je matrica A:\n");

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

printf("\n");

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

printf("\t%d",mat[i][j]);

}

}

printf("\n\nSuma clanova glavne dijagonale je %f", suml);

printf("\n\nSuma clanova sporedne dijagonale je %f", sumd);

printf("\n");

printf("\nMatrica B ciji su clanovi pomnozeni sa %f", sumd);

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

printf("\n");

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

printf("\t%d",mat[i][j]*int(sumd));

}

}

return 0;

}

Primjer 29:

Napisati program za unos dvije matrice i ispis matrice koja je jednaka njihovom zbiru(sumi)

Page 203: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

RJEŠENJE:

#include <iostream>

#define dim 10

using namespace std;

main()

{

int n,a[dim][dim],b[dim][dim],c[dim][dim];

cout << "Unesi broj redova i kolona N = ";

cin >> n;

cout<<" Unesi clanove matrice A: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

cout<<" Sada unesi clanove matrice B: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"b["<<i<<","<<j<<"]=";

cin >>b[i][j];

c[i][j]=a[i][j]+b[i][j];

}

cout<<" Zbir ove dvije matrice je matrica C: "<<endl;

Page 204: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

cout <<"c["<<i<<","<<j<<"]="<<a[i][j]+b[i][j]<<endl;

system ("pause");

return 0;

}

Primjer 30:

Napisati program za unos matrice A ,ispis zbira(sume) i ispis srednje vrijednosti clanova upisane matrice .

RJEŠENJE:

//Ispisuje sumu (zbir) i srednju vrijednost clanova matrice A

#include <cstdlib>

#include <iostream>

using namespace std;

unsigned int m,n;

int i,j,k;

float A['m']['n'];

int main()

{

cout<<"Unesite broj redova m = "; cin>>m;

cout<<"Unesite broj kolona n = "; cin>>n;

cout<<"Upisi clanove matrice A :"<<endl;

for(i=0; i<m; i++){

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

cout<<" A["<<i<<"]["<<j<<"] = "; cin>>A[i][j];

}}

Page 205: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<endl;

cout<<"Upisana je matrica A:"<<endl;

// Ispis elemenata matrice

for(i=0; i<m; i++){

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

cout<<A[i][j]<<"\t";

}

cout<<"\n";

}

// Suma i srednja vrijednost elemenata matrice

float suma=0;

for(i=0; i<m; i++){

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

suma+=A[i][j]; // suma=suma+A[i][j];

}}

cout<<endl;

cout<<"Suma svih elemenata matrice je "<<suma<<".\n";

cout<<endl;

cout<<" Matrica B,elementi uvecani za..."<<suma<<endl;

// Ispis elemenata matrice

for(i=0; i<m; i++){

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

cout<<A[i][j]+int(suma)<<"\t";

}

cout<<"\n";

Page 206: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

}

system("PAUSE");

return 0;

}

Primjer 31:

Napisati program za ispis članova matrice koji su proizvod istoimenih članova dvije matrice (c[1,0]=a[1,0]*b[1,0]... ).

RJEŠENJE:

#include <iostream>

#define dim 10

using namespace std;

main()

{

int n,a[dim][dim],b[dim][dim],c[dim][dim];

cout << "Unesi broj redova i kolona N = ";

cin >> n;

cout<<" Unesi clanove matrice A: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

cout<<" Sada unesi clanove matrice B: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

Page 207: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

{

cout <<"b["<<i<<","<<j<<"]=";

cin >>b[i][j];

c[i][j]=a[i][j]*b[i][j];

}

cout<<" Proizvod istoimenih clanova je matrica C: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

cout <<"c["<<i<<","<<j<<"]="<<a[i][j]*b[i][j]<<endl;

system ("pause");

return 0;

}

Primjer 32:

Napisati program za množenje matrice vektorom.

RJEŠENJE:

//Množenje matrice vektorom.

#include <iostream>

using namespace std;

int main () {

// Unos

int m,n, a[30][30], x[30], b[30];

cout << "Unesite broj kolona u matrici: ";

cin >> m;

cout << "Unesite broj redova matrice: ";

cin >> n;

Page 208: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

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

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

cout << "Unesite a(" << i << "," << j << "): ";

cin >> a[i][j];

}

cout << endl;

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

cout << "Unesite x(" << i << ")";

cin >> x[i];

}

// Racunanje

for (int i=0; i<n; i++) b[i]=0;

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

for (int j=0; j<m; j++)

b[i]+=a[i][j];

// Ispis

cout << endl;

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

cout << b[i] << endl;

return 0;

}

Primjer 33:

Napisati program za sumu (zbir) tri matrice.

RJEŠENJE:

#include <iostream>

Page 209: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

#define dim 10

using namespace std;

main()

{

int n,a[dim][dim],b[dim][dim],c[dim][dim],d[dim][dim];

cout << "Unesi broj redova i kolona N = ";

cin >> n;

cout<<" Unesi clanove matrice A: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

cout<<" Unesi clanove matrice B: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"b["<<i<<","<<j<<"]=";

cin >>b[i][j];

}

cout<<" Unesi clanove matrice C: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

Page 210: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout <<"c["<<i<<","<<j<<"]=";

cin >>c[i][j];

d[i][j]=a[i][j]+b[i][j]+c[i][j];

}

cout<<" Suma ove tri matrice je matrica D: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

cout <<"d["<<i<<","<<j<<"]="<<a[i][j]+b[i][j]+c[i][j]<<endl;

system ("pause");

return 0;

}

Primjer 34:

Napisati program za sumu (zbir) tri matrice.

RJEŠENJE:

#include <iostream>

#define dim 10

using namespace std;

main()

{

int n,a[dim][dim],b[dim][dim],c[dim][dim],d[dim][dim];

cout << "Unesi broj redova i kolona N = ";

cin >> n;

cout<<" Unesi clanove matrice A: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

Page 211: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

{

cout <<"a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

cout<<" Unesi clanove matrice B: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"b["<<i<<","<<j<<"]=";

cin >>b[i][j];

}

cout<<" Unesi clanove matrice C: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"c["<<i<<","<<j<<"]=";

cin >>c[i][j];

d[i][j]=a[i][j]+b[i][j]+c[i][j];

}

cout<<" Suma ove tri matrice je matrica D: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

cout <<"d["<<i<<","<<j<<"]="<<a[i][j]+b[i][j]+c[i][j]<<endl;

cout<<endl;

cout<<"Izgled matrice D je : "<<endl;

Page 212: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for(int i=1; i<=n; i++)

{

cout<<endl;

for (int j=1; j<=n; j++)

cout <<d[i][j]<<" \t ";

}

return 0;

}

Primjer 35:

Napisati program za proizvod i sumu (zbir) tri kvadratne matrice NxN.

RJEŠENJE:

#include <iostream>

#define dim 10

using namespace std;

int main()

{

int n,a[dim][dim],b[dim][dim],c[dim][dim],d[dim][dim],e[dim][dim];

cout << "Unesi broj redova i kolona N = ";

cin >> n;

cout<<" Unesi clanove matrice A: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"a["<<i<<","<<j<<"]=";

cin >>a[i][j];

Page 213: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

}

cout<<" Unesi clanove matrice B: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<" b["<<i<<","<<j<<"]=";

cin >>b[i][j];

}

cout<<" Unesi clanove matrice C: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"c["<<i<<","<<j<<"]=";

cin >>c[i][j];

d[i][j]=a[i][j]*b[i][j]*c[i][j];

e[i][j]=a[i][j]+b[i][j]+c[i][j];

}

cout<<endl;

cout<<"Proizvod matrica je matrica D : ";

for(int i=1; i<=n; i++)

{

cout<<endl;

for (int j=1; j<=n; j++)

cout <<d[i][j]<<" \t ";

}cout<<endl;

Page 214: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout<<endl;

cout<<"Suma matrica je matrica E : ";

for(int i=1; i<=n; i++)

{

cout<<endl;

for (int j=1; j<=n; j++)

cout <<e[i][j]<<" \t ";

}

return 0;

}

Primjer 36:

Napisati program za unos tri kvadratne matrice NxN,ispis sume (zbira) matrica D=A+B ,i ispis matrice koja je jednaka proizvodu zbira prve dvije matrice i matrice C (E=D*C).

RJEŠENJE:

#include <iostream>

#define dim 10

using namespace std;

int main()

{

int n,a[dim][dim],b[dim][dim],c[dim][dim],d[dim][dim],e[dim][dim];

cout << "Unesi broj redova i kolona N = ";

cin >> n;

cout<<" Unesi clanove matrice A: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

Page 215: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

cout <<" a["<<i<<","<<j<<"]=";

cin >>a[i][j];

}

cout<<"Unesi clanove matrice B: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<"b["<<i<<","<<j<<"]=";

cin >>b[i][j];

}

cout<<"Unesi clanove matrice C: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

{

cout <<" c["<<i<<","<<j<<"]=";

cin >>c[i][j];

d[i][j]=a[i][j]+b[i][j];

e[i][j]=d[i][j]*c[i][j];

}

cout<<"Suma matrice A i matrice B je matrica D: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

cout <<" d["<<i<<","<<j<<"]="<<a[i][j]+b[i][j]<<endl;

cout<<endl;

cout<<"Izgled matrice D je : ";

Page 216: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

for(int i=1; i<=n; i++)

{

cout<<endl;

for (int j=1; j<=n; j++)

cout <<d[i][j]<<" \t ";

}

cout<<endl;

cout<<endl;

cout<<"Proizvod matrice D i matrice C je matrica E: "<<endl;

for (int i=1; i<=n; i++)

for (int j=1;j<=n; j++)

cout <<" e["<<i<<","<<j<<"]="<<(a[i][j]+b[i][j])*c[i][j]<<endl;

cout<<endl;

cout<<"Izgled matrice E je : ";

for(int i=1; i<=n; i++)

{

cout<<endl;

for (int j=1; j<=n; j++)

cout <<e[i][j]<<" \t ";

}

return 0;

}

Page 217: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Potprogrami(funkcije u C++2008-08-02 10:57

1.1 Potprogrami (funkcije) u C++Potprogrami su izdvojene logičke cjeline unutar programa. Za razliku od Pascala, koji razlikuje procedure i funkcije, C/C++ poznaje samo funkcije. Funkcija je zamišljena tako da vrati vrijednost koja odgovara njenom tipu (pomoću naredbe return). Ako funkcija umjesto tipa ima oznaku void, tada ne vraća vrijednost, odnosno, predstavlja pandan proceduri.

Opći oblik funkcije :

<povratni tip ili void> ime_funkcije (<tip> par1, <tip> par2, ... ,<tip> par N){..<blok instrukcija>..return <povratna vrijednost>; // izostavlja se ako je funkcija tipa void}

Razlikujemo formalne parametre (navode se u zaglavlju funkcije) i stvarne parametre (navode se kod poziva funkcije). Prilikom poziva funkcije formalni parametri poprime vrijednosti odgovarajućih stvarnih parametara.

Primjer :

#include <iostream.h>float kvadrat (float x){return x * x;}void main () { // main je rezervirano imefloat broj;float kvad = kvadrat (broj);cout << broj << “ na kvadrat iznosi “ << kvad << endl;}

1.1.1 Koncept globalnih i lokalnih podatakaGlobalni podaci dostupni su u svim dijelovima programa (osim u funkcijama gdje su definirani istoimeni lokalni podaci), dok su lokalni dostupni isključivo u okviru funkcije gdje su definirani.

Primjer :

Page 218: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

#include <iostream.h>int a,b;float c,d; // a,b,c,d su globalne varijablevoid main () {int e,f; //varijable e,f lokalne su za funkciju mainchar a,c // varijable a,c lokalne su za funkciju main i prekrivaju// istoimene globalne varijablea = ‘A’;c = ‘B’;b = 5; // globalne varijable b,d dostupne su unutar funkcije maind = 3.14;}

1.1.2 Statički članoviStatički članovi označavaju se pomoću ključne riječi static.Statička lokalna varijabla ima doseg lokalne, a trajanje globalne varijable :

Primjer :

#include <iostream.h>void funkcija_stat () {int a;static int b;cout << "a = " << a << endl;cout << "b = " << b << endl;a = 5;b = 10;}void main () {cout << "1. poziv funkcije :" << endl;funkcija_stat();cout << "2. poziv funkcije :" << endl;funkcija_stat();}

Daje slijedeći ispis kao rezultat :

1. poziv funkcije :a = 6618616b = 02. poziv funkcije :a = 6618616b = 10

Vrijednost statičke lokalne varijable b ostala je sačuvana do slijedećeg poziva funkcije.

1.1.3 Pokazivači i reference kao argumentiOsim prijenosa argumenata po vrijednosti, moguće je koristiti pokazivače i reference kao

Page 219: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

argumente. U tom slučaju funkcija ne vrši obradu nad kopijama podataka nego nad originalnim podacima.

Primjer (pokazivači kao argumenti) :

#include <iostream h>void zamjena (int *prvi, int *drugi){int pom = *prvi;*prvi = *drugi;*drugi = pom;}void main (){int a=5;int b=10;zamjena (&a,&b);cout << “a = “ << a << endl; // 10cout << “b = “ << b << endl; // 5}

Primjer (reference kao argumenti) :

#include <iostream.h>void zamjena (int &prvi, int &drugi) {int pom = prvi;prvi = drugi;drugi = pom;}void main (){int a=5;int b=10;zamjena (a,b);cout << “a = “ << a << endl; // 10cout << “b = “ << b << endl; // 5}

1.1.4 Preopterećenje funkcijaPreopterećenje omogućuje korištenje istog imena za različite funkcije, pri čemu se te funkcije međusobno razlikuju po tipu argumenata u svom zaglavlju.

Primjer:

#include <iostream.h>void funkcija (int n){cout << “n (int) = “ << n << endl;}void funkcija (float n){cout << “n (float) = “ << n << endl;}void main () {

Page 220: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

int a=5;float b=3.125;funkcija (a); //cjelobrojni parametarfunkcija (b); //realni parametar}

1.1.5 Rekurzivna funkcijaRekurzija je svojstvo potprograma (funkcije) da može pozivati sam sebe.

Primjer (računanje n!) :

#include <iostream.h>int fakto (int n){if (n ==1) //sidreni uvjetreturn 1;elsereturn n*fakto (n – 1); //pojednostavljenje}void main () {cout << fakto (5) << endl;}

Za realizaciju rekurzivne funkcije potrebno je osigurati slijedeće :

Sidreni izraz : 1! = 1Rekurzivnu formulu ili postupak : n! = n * (n – 1)!

Sidreni izraz omogućuje izlazak iz rekurzivne funkcije (tj. sprijećava beskonačno pozivanje funkcije), a rekurzivna formula ili postupak trebaju pojednostaviti zadatak, odnosno, približiti ga rješenju zadanom kao sidreni izraz.

1.1.6 Pretprocesorska naredba #include#include kaže kompilatoru da na njeno mjesto ubaci sadržaj zadane datoteke.

Sintaksa :

#include "naziv datoteke"

ili

#include <naziv datoteke>

Primjer :

Sadržaj datoteke “vanjska.cpp” uključujemo u program, čiji izvorni kod se nalazi u datoteci “Ukljuci.cpp” .

Datoteka “Ukljuci.cpp” :

Page 221: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

#include <iostream.h>#include "vanjska.cpp"void main () {v_var = 10; // Globalna varijablaf_vanjska();}

Datoteka “Vanjska.cpp”:

int v_var;void f_vanjska (){cout <<"Vanjska funkcija" << endl;}

Funkcija f_vanjska poziva se na isti način kao da je uključena u glavnu datoteku.

1.1.7 Standardne biblioteke funkcija

1.1.7.1 iostream.h

Biblioteka iostream definira razrede (klase) koje podržavaju rad s ulaznim i izlaznim tokovima.

1.1.7.1.1 Predefinirani objekti tokova C++ :Ime Tip razreda Opiscin ulazni tokPridružen standardnom ulazu (tipkovnica)cout izlazni tokPridružen standardnom izlazu (ekran)cerrizlazni tokPridružen standardnom izlazu u slučaju pogreške (ekran) s izlazom bez korištenja međuspremnika

clogizlazni tokPridružen standardnom izlazu u slučaju pogreške (ekran) s izlazom uz korištenje međuspremnika

1.1.7.2 string.h

1.1.7.2.1 Funkcije za kopiranjevoid *memcpy(void *s1, const void *s2, size_t n);

Page 222: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

Kopira n znakova s memorijskog područja s2 u s1. Radi kao strncpy ali ne stane kod null znakova. Ne radi ako se memorijska područja preklapaju.

void *memmove(void *s1, const void *s2, size_t n); Slično memcpy() ali radi čak i ako se memorijska područja preklapaju.

char *strcpy(char *s1, const char *s2); Kopira s1 u s2 tako dugo dok se ne iskopira null znak.

char *strncpy(char *s1, const char *s2, size_t n); Kao strcpy(), ali kopira najviše n znakova.

1.1.7.2.2 Funkcije spajanja polja znakovachar *strcat(char *s1, const char *s2); Dodaje kopiju s2 na kraj polja s1.

char *strncat(char *s1, const char *s2, size_t n); Kao strcat(), ali dodaje najviše n znakova.

1.1.7.2.3 Funkcije uspoređivanjaint memcmp(const void *s1, const void* s2, size_t n); Kao strncmp() ali ne stane kod null znakova.

int strcmp(const char *s1, const char* s2); Uspoređuje argumente i vraća cijeli broj kao rezultat (0 ako je s1 jednak s2).

int strcoll(const char *s1, const char* s2); Slično strcmp() ali koristi lokalno definiran poredak znakova umjesto originalnog.

int strncmp(const char *s1, const char* s2, size_t n); Kao strcmp(), ali uspoređuje najviše n znakova.

size_t strxfrm(char *s1, const char *s2, size_t n); Transformacija polja znakova. Transformira s2 u prostor jednak onom kojeg zauzima s1 tako da se rezultat može uspoređivati s strcmp().

1.1.7.2.4 Funkcije za pretraživanjevoid *memchr(const void *s, int c, size_t n); Kao strchr(), ali stane nakon prvih n znakova umjesto nakon null znaka.

char *strchr(const char *s, int c); Vraća pokazivač na prvo pojavljivanje znaka c u polju znakova s, ili NULL pokazivač ako se c ne pojavljuje u polju znakova.

size_t strcspn(const char *s1, const char *s2); Vraća dužinu početnog segmenta polja znakova s1 koje se u potpunosti sastoji od znakova koji nisu iz s2.

Page 223: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

char *strpbrk(const char *s1, const char *s2); Vraća pokazivač na prvo pojavljivanje polja znakova s1, na bilo koji znak iz polja znakova s2, ili na NULL pokazivač ako nema znakova iz s2 koji postoje u s1.

char *strrchr(const char *s, int c); Vraća pokazivač na zadnje pojavljivanje znaka c u polju znakova s, ili NULL pokazivač ako c ne postoji u polju znakova.

size_t strspn(const char *s1, const char *s2); Vraća dužinu početnog segmenta polja znakova s1 koja se u potpunosti sastoji od znakova iz polja znakova s2.

char *strstr(const char *s, const char *pat); Vraća pokazivač na prvo pojavljivanje uzorka polja znakova pat u s.

1.1.7.2.5 Razne funkcijevoid *memset(void *s, int c, size_t n); Postavlja prvih n znakova u memorijskom području s na vrijednost znaka c.

char *strerror(int errnum); Vraća pokazivač na tekst poruke za zadani broj pogreške.

size_t strlen(const char *s); Vraća broj znakova u s, ne računajući null znak za prekidanje polja znakova.

1.1.7.3 math.h

1.1.7.3.1 Trigonometrijske funkcijedouble acos(double x); Daje arkus arc cos od x. Domena: -1 do +1. Raspon: 0 do pi.

double asin(double x); Daje arc sin od x. Domena: -1 do +1. Raspon: -pi/2 do pi/2.

double atan(double x); Daje arc tan od x. Domena: nedefinirana. Raspon: -pi/2 do pi/2.

double atan2(double x, double y); Vrijednost arc tan od y/x, koristi predznak oba argumenta za određivanje kvadranta povratne vrijednosti.Bilo x ili y mogu biti nula, ali ne oba.

double cos(double x); Kosinus od x, gdje je x u radijanima.

double sin(double x); Sinus x, gdje je x u radijanima.

Page 224: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

double tan(double x); Tangens od x, gdje je x u radijanima.

1.1.7.3.2 Eksponencijalne i logaritamske funkcijedouble exp(double x); Eksponencijalna funkcija od x.

double frexp(double x, int *eksponent);Rastavlja broj x na mantisu i eksponent na bazu 2, tako da je rezultat funkcije mantisa, a eksponent se pohranjuje na mjesto drugog argumenta funkcije.

double ldexp(double x, int eksponent); Računa broj na temelju zadane mantise i eksponenta; inverzna funkcija je frexp.

double log(double); Prirodni logaritam.

double log10(double); Logaritam po bazi 10.

double modf(double x, double *cijeliDio);Rastavlja x na njegov cijeli i decimalni dio.

1.1.7.3.3 Funkcije za potenciranjedouble pow(double baza, double eksponent);Potenciranje; argumenti su baza i eksponent.

double sqrt(double x); Kvadratni korijen od x.

1.1.7.3.4 Najbliži cijeli broj, apsolutna vrijednost, i funkcije ostatka dijeljenjadouble ceil(double x); Najbliži veći cijeli broj od x.

double fabs(double x); Apsolutna vrijednost realnog broja x.

double floor(double x); Najbliži manji cijeli broj od x.

double fmod(double x, double y);Ostatak dijeljenja realnih brojeva x i y.

1.1.7.4 ctype.h

1.1.7.4.1 Funkcije testiranja znakovaint isalnum(int ch); ch je alfanumerički znak.

Page 225: Zadaci:Dev C++ · PDF fileZadaci:Dev C++ PROGRAMIRANJE za POČETNIKE Sretno sa programiranjem, Primjer 1: Tradicionalni program svih programera početnika je vrlo jednostavan. Naime

int isalpha(int ch); ch je slovo.

int iscntrl(int ch); Provjerava je li znak neki kontrolni znak (ASCII kodovi 0..31 i 127).

int isdigit(int ch); Provjerava je li ch znamenka (0..9).

int isgraph(int ch); ch je znak za ispis; kao isprint osim što vraća false za razmak.

int islower(int ch); ch je malo slovo.

int isprint(int ch); Provjerava je li ch znak za ispis (ASCII kod između 32 i 126).

int isspace(int ch); Je li znak praznina (razmak, tab, znak CR, znak za novi red, ili prijelaz na novu stranicu).

int isupper(int ch); Provjerava da li je ch veliko slovo.

int isxdigit(int ch); Provjerava da li je ch heksadecimalni broj, 0 - F.

1.1.7.4.2 Funkcije za promjenu malih/velikih slovaint tolower(int ch); Ako ch predstavlja veliko slovo, rezultat je odgovarajuće malo slovo.

int toupper(int ch); Ako ch predstavlja malo slovo, rezultat je odgovarajuće veliko slovo.