zadaci

51
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,

Upload: nermin-jukic

Post on 26-Jun-2015

367 views

Category:

Documents


10 download

TRANSCRIPT

Page 1: Zadaci

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++

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

Page 2: Zadaci

Primjer 2:    Jednostavan program koji već ima unaprijed definisane brojne vrijednosti u obliku varijabli 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;

Page 3: Zadaci

int main()

{

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

Page 4: Zadaci

3

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

}    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

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

/* 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

    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

    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

                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

 

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

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

                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

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

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

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

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

 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

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

 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

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

    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

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

    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

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

                                               <<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

                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

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

                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

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

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

                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

                               }

                               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

                               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

  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

}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

                               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

{

                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

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

#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

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

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

// 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

    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

                               {

                                               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