P. 1
Zbirka rješenih zadataka C++

Zbirka rješenih zadataka C++

5.0

|Views: 13,908|Likes:
Published by saulas

More info:

Published by: saulas on Dec 30, 2009
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOC, PDF, TXT or read online from Scribd
See more
See less

12/21/2014

pdf

text

original

1. Обим или површина ...................................................................................................

3
2. Калкулатор-примјер са насилним прекидом програма у случају грешке ............. 4
3. Калкулатор-примјер са кориштењем логичке промјењиве .................................... 6
4. Hаsив унесеног мјесеnа и број дана у том мјесеnу ................................................. 7
5. uакторјел-Ior пет¬а ................................................................................................... 8
6. uакторјел-поsив ]ункnије ......................................................................................... 9
7. uакторјел-рекурsивно ................................................................................................ 9
8. Cавршен број ............................................................................................................. 10
9. Hајмањи sаједнички садрxилаn .............................................................................. 10
10. Hајвеhи sаједнички дјелилаn ................................................................................. 12
11. Hрост број ................................................................................................................ 12
12. Квадратна једначина ............................................................................................... 13
13. uибоначијев број-рекурsивно ............................................................................... 15
14. uибоначијев ниs ..................................................................................................... 15
15. Mинималан члан ниsа ............................................................................................. 16
16. Hиста простиx ......................................................................................................... 16
17. Aритметичка средина ниsа .................................................................................... 18
18. Cортирање ниsа ....................................................................................................... 18
19. Eлементи на главној дијагонали ............................................................................ 19
20. ¡ијагонална матриnа .............................................................................................. 20
21. Hроиsвод-матриnа са скаларом ............................................................................. 21
22. Hроиsвод-двије матриnе ........................................................................................ 22
23. Tранспонована матриnа ......................................................................................... 23
24. Xаној ........................................................................................................................ 24
25. Hаскалов троугао .................................................................................................... 25
26. Cабирање и одуsимање комплексниx бројева-класе ........................................... 26
27. Apsolutna vrijednost ................................................................................................. 27
28. Ispis prvih 20 brojeva ............................................................................................... 27
29. Pridruzivanje slova ................................................................................................... 28
30. Zvucni signal ............................................................................................................ 28
31. Pozdrav korisniku ..................................................................................................... 29
32. Povrsina kruga .......................................................................................................... 30
33. Kvadrat broja ............................................................................................................ 30
34. Stepenovanje ............................................................................................................ 31
35. Pozdrav u vise radova ............................................................................................... 31
36. Negativan broj u pozitivan ........................................................................................ 32
37. Tri osnovne operacije ............................................................................................... 33
38. Djeljenje dva broja .................................................................................................... 33
39. Djeljenje sa ostatkom ................................................................................................ 34
40. Broj osvojenih bodova .............................................................................................. 35
41. Operatori obnavljajuceg pridruzivanja ..................................................................... 36
42. Ime korisnika i njegove godine ................................................................................ 37
43. TrociIreni brojevi djeljivi sa 9 .................................................................................. 38
44. Zapremina kupe ........................................................................................................ 38
45. Heronov obrazac ...................................................................................................... 39
46. Paranost broja ........................................................................................................... 40
47. Ispis brojeva u odredenom rasponu .......................................................................... 41
48. Tablica mnozenja ..................................................................................................... 42
49. Faktorijel ................................................................................................................... 42
50. Kalkulator ................................................................................................................. 43
51. Kvadrati zadanog niza .............................................................................................. 44
52. Djeljivost brojeva ...................................................................................................... 45
53. Brojac studenata ........................................................................................................ 46
54. Srednja vrijednost ..................................................................................................... 47
55. Suma Iaktorijela ........................................................................................................ 48
56. NZD Najveci zajednicki djelilac - NZD .................................................................. 49
57. NZS Najmanji zajednicki sadrzilac- NZS. ............................................................... 51
58. Hanojski stubovi 1 .................................................................................................... 52
59. Hanojski stubovi 2 .................................................................................................... 52
60. Dani u sedmici .......................................................................................................... 54
61. Sahovska tabla .......................................................................................................... 56
62. Savrseni brojevi ........................................................................................................ 57
63. Zbir dva vektora ........................................................................................................ 58
64. Napisati C program koji ce pronaci i ispisati na ekran sve trociIrene brojeve kod
kojih je suma ciIri djeljiva sa 7. .................................................................................................. 60
65. Napisati program koji ce pronaci i ispisati na ekran koliko ima peterociIrenih
brojeva kod kojih je suma zadnje 4 ciIre jednaka prvoj ciIri. .................................................... 60
66. Izostvaljanje suvisnog razmaka medju rijecima ....................................................... 62
1. Обим или површина
Hачинити програм који sа унесене вриједности страниnа троугла иsрачунава обим или
површину троугла у sависности од иsбора: тастер 1 обим О, тастер 2 површина P.
Hрограм се рјешава кориштењем наредбе switch, гдје у sависности од иsбора идемо
на ниs наредби sа иsрачунавање обима или ниs наредби sа иsрачунавање површине. Hрије
преласка на само иsрачунавање провјерава се да ли је која од страниnа троугла једнака 0, и
да ли унесене вриједности чине страниnе троугла ( sбир 2 страниnе мора не смије бити мањи
или једнак треhој).
#include <iostream>
#include <cmath>
using namespace std;
//deklaracija promjenljivih
float O, P, S, a,,c;
int i!or;
int main"#
$
cout <<%&nesite vrijednost prve stranice a' %;
cin >>a;
cout <<%&nesite vrijednost druge stranice ' %;
cin >>;
cout <<%&nesite vrijednost trece stranicec' %;
cin >>c;
if ""a''(# )) "''(# )) "c''(##//da li su unesene vrijednosti (
$
cout << %*rijednosti stranica trougla ne smiju iti <' (+%;
s,stem"%Pause%#;
goto kraj;
-
if ""a.<'c# )) ".c<'a# )) "a.c<'##//cine li stranice trougla
$
cout << %&nesene vrijednosti ne cine stranice trougla+%;
s,stem"%Pause%#;
goto kraj;
-
cout <<%/ko !elite oim trougla trougla 0O0 pritisnite taster 1, ako
!elite povrsinu trougla 0P0 pritisnite taster 2%<<endl;
cin >>i!or;
switch"i!or#//u !avisnosti od i!ora
$
case 13 O'a..c;
cout <<% Oim trougla je3 % <<O<<endl;
s,stem"%Pause%#;
reak;
case 23 S'"a..c#/2;
P's4rt"S5"S6a#5"S6#5"S6c##;
cout <<%Povrsina trougla je3 %<<P<<endl;
s,stem"%Pause%#;
reak;
default3 cout <<% 7o!eta i!arati taster 1 ili taster 2+%;
s,stem"%Pause%#;
reak;
-
kraj3return (;
-
2. Калкулатор-примјер са насилним прекидом програма у случају
грешке
Hачинити програм који иsвршава 4 основне аритметичке операnије: сабирање,
одуsимање, мноxење и дије¬ење.
Hрограм се рјешава кориштењем наредбе switch, у случају покушаја дије¬ења са 0
програм се насилно прекида.
#include <iostream>
using namespace std;
float f1"float par1, float par2, char oper#//funkcija koja i!racunava
vrijednosti
$
float privremena'(;
switch "oper#
$
case 0.03privremena'par1.par2;
reak;
case 0603privremena'par16par2;
reak;
case 0503privremena'par15par2;
reak;
case 0/03if "par2''(#
$
cout <<%8ijeljenje sa nulom nije do!voljeno+%;
s,stem"%Pause%#;
e9it"61#;//ako je parametar <>1 kao re!ultat daje
nasilno prekidanje programa
reak;
-
else
$
privremena'par1/par2;
reak;
-
default3 cout <<%Program radi samo : osnovne aritmeticke operacije3
., 6, 5, / %<<endl;
-
return privremena;
-
float main"#//glavni program
$
float parametar1, parametar2, re!ultat;
char operacija;
cout <<% &nesi prvi roj %;
cin >> parametar1;
cout <<endl;
cout <<% &nesi drugi roj %;
cin >> parametar2;
cout <<endl;
cout <<% &nesi operaciju %;
cin >> operacija;
cout <<endl;
re!ultat'f1"parametar1, parametar2, operacija#;
cout << % ;e!ultat % << operacija << % rojeva % <<parametar1 << % i %<<
parametar2 << % i!nosi %<< re!ultat<<endl;
s,stem "%Pause%#;
return (;
-
3. Калкулатор-примјер са кориштењем логичке промјењиве
3адатак је исти као и предxодни али се у рјешење уводи нова промјењива логичког
типа ind<reske "ool# и у sависности од стања промјењивиx ова промјењива поприма
вриједности true или Ialse па самим тим диктира да¬е иsвршавање програма.
#include <iostream>
using namespace std;
float f1"float par1, float par2, char oper, ool= ind<reske#//funkcija sa :
parametra, uvodim parametar ool koji ce mi omoguciti i!la!ak i! programa
$
float privremena'(;
switch "oper#
$
case 0.03privremena'par1.par2;
reak;
case 0603privremena'par16par2;
reak;
case 0503privremena'par15par2;
reak;
case 0/03if "par2''(#
$
ind<reske'false;//omogucice mi i!la!ak i!
programa ukoliko je djelilac jednak (
reak;
-
else
$
privremena'par1/par2;
reak;
-
default3 cout <<%Program radi samo : osnovne aritmeticke operacije3
., 6, 5, / %<<endl;
-
return privremena;
-
float main"#
$
float parametar1, parametar2, re!ultat;
char operacija;
ool ind<reske'true;//postavljam indikator na vrijednost istinito
cout <<% &nesi prvi roj %;
cin >> parametar1;
cout <<endl;
cout <<% &nesi drugi roj %;
cin >> parametar2;
cout <<endl;
cout <<% &nesi operaciju %;
cin >> operacija;
cout <<endl;
re!ultat'f1"parametar1, parametar2, operacija, ind<reske#;
if "ind<reske''true#//vrsim ispis u !avisnosti od indikatora greske
$
cout << % ;e!ultat % << operacija << % rojeva % <<parametar1 << % i
%<< parametar2 << % i!nosi %<< re!ultat<<endl;
s,stem "%Pause%#;
-
else
$
cout <<%8ijeljenje sa nulom nije do!voljeno+%;
s,stem"%Pause%#;
-
return (;
-
4. Наsив унесеног мјесеuа и број дана у том мјесеuу
Hачинити програм који sа унесену годину иsинтервала 1901-2099 и бројчану оsнаку
мјесеnа 1-12 исписује наsив мјесеnа и број дана у том мјесеnу. Hровјерити да ли је година
преступна.
Hроблем се рјешава са двије switch наредбе. Hреступне године су све дје¬иве с 4, ако нису
дје¬иве са 100, којима се додају оне коју су дје¬иве са 400.-програм провјерава да ли је
година дје¬ива са 4, да не би копликовали са раsгранатом структуром.
#include <iostream>
using namespace std;
int main "#
$
int godina, mjesec,privremena;//deklaracija promjenljivih
cout << %&nesi godinu i! intervala 1>(162(>>3 %;
cin >>godina;
cout << %&nesi mjesec predstavljen rojcanom vrijednoscu 16123 %;
cin >>mjesec;
if ""godina>'1>(1# == "godina<'2(>>##//kontrola unosa godine
$
switch "mjesec#//swich !a roj dana u mjesecu
$
case 13
case ?3
case @3
case A3
case B3
case 1(3
case 123
switch "mjesec# //swich !a na!iv mjeseca
$
case 13 cout<<%Canuar%;
reak;
case ?3 cout<<%7art%;
reak;
case @3 cout<<%7aj%;
reak;
case A3 cout<<%Culi%;
reak;
case B3 cout<<%/vgust%;
reak;
case 1(3 cout<<%Oktoar%;
reak;
case 123 cout<<%8ecemar%;
reak;
-
cout <<% ima ?1 dan+%;
s,stem"%Pause%#;
reak;
case :3
case D3
case >3
case 113
switch "mjesec#
$
case :3 cout<<%/pril%;
reak;
case D3 cout<<%Cuni%;
reak;
case >3 cout<<%Septemar%;
reak;
case 113 cout<<%Eovemar%;
reak;
-
cout <<% ima ?( dana+%;
s,stem"%Pause%#;
reak;
case 23
cout <<%Feruar%;
if "godinaG:''(#//provjeravam da li je prestupna
$
cout<<% prestupna je godina i ima 2> dana+%;
s,stem"%Pause%#;
-
else
$
cout <<% ima 2B dana+%;
s,stem"%Pause%#;
-
reak;
default3 cout<<% O!naka mjeseca mora iti i! intervala 1612%;
s,stem"%Pause%#;
reak;
-
-
else
$
cout<<%&nesui godinu i! navedenog intervala+%;
s,stem"%Pause%#;
-
return (;
-
5. Oакторјел-for петnа
Hачинити програм који иsрачунава ]акторјел унесеног броја.
Hрограм се рјешава кориштењем једне Ior пет¬е и акумулирањем проиsвода бројева
од 1 до траxене вриједности. Aкумулирани проиsвод чини коначно рјешење.
#include <iostream>
using namespace std;
int main"#
$
doule Hroj, FaktorC;//deklaracija promjenljivih
int Hrojac;
cout << %&nesi roj ciji + !elis% << endl;
cin >> Hroj;//unos roja ciji se + !eli
FaktorC'1;//pocetna vrijednost
for"Hrojac'1;Hrojac<'Hroj;Hrojac'Hrojac.1#
$
FaktorC'FaktorC5Hrojac;//i!racunavanje u for petlji
-
cout << %Faktorjel roja %<<Hroj<< % i!nosi3 % << FaktorC << endl;
s,stem"%Pause%#;
return (;
-
6. Oакторјел-поsив qункuије
Hрограм је начињен тако да се иsрачунавање вриједности ]акторјела иsвршава у
посебној ]ункnији. Hs главног програма иsвршавам поsив ]ункnије и тако долаsим до
xе¬еног реsултата.
#include <iostream>
using namespace std;
doule F1 "doule H#//Funkcija koja i!racunava + !adatog roja
$
doule FC'1;
int Hrojac;
for"Hrojac'2;Hrojac<'H;Hrojac.'1#
$
FC'FC5Hrojac;
-
return FC;//I!racunata vrijednost +
-
float main"#//<lavni program koji po!iva funkciju
$
doule Hroj, FaktorC;//8eklaracija promjewivih
cout << %&nesite roj ciji + !elite% << endl;
cin >> Hroj;
FaktorC'F1"Hroj#;//Po!iv funkcije
cout << %;e!ultat je3 % << FaktorC <<endl;
s,stem"%Pause%#;
return (;
-
7. Oакторјел-рекурsивно
¡о рјешења се долаsи рекурsивним поsивом ]ункnије .
#include <iostream>
using namespace std;
//definisem promjenjive
int n;
long doule FaktorC;
//ovo je funkcija koja i!racunava +
long doule Fak "int n#
$
if "n<'(# return 1; //ako je n<'( vraca 1 i time o!nacava da je greska
else
$
return Fak"n61#5n;//rekur!ivni po!iv funkcije
-
-
//glavni program
int main"#
$
cout << %&nesi prirodan roj ciji + !alis %;
cin >>n;
FaktorC'Fak"n#;
cout <<% *rijednost %<<n<<%+ je3 %<<FaktorC<<endl;
s,stem"%Pause%#;
return (;
-
8. Cавршен број
Hачинити програм који провјерава да ли је учитани број савршен.
Fрој је савршен ако је једнак суми свиx својиx дјелилаnа ( сам број се не рачуна).
//D, 2B, :>D, B12B
#include <iostream>
using namespace std;
int Hroj,i,Suma;
int main"#
$
cout <<%&nesi roj !a koji !elis provjeriti da li je savrsen+%;
cin >> Hroj;
Suma'1;
for "i'2;i<'"Hroj/2#;i..#//dovoljno je provjeriti djelioce do polovine
roja
$
if"HrojGi''(#//provjeravam da li je djeljiv
$
Suma.'i;//akumuliram djelioce
-
-
if "Hroj''Suma#//da li je jednak sumi svojih djelioca
$
cout<<% Hroj %<<Hroj<<% je savrsen+%;
-
else
$
cout<<% Hroj %<<Hroj<<% nije savrsen+%;
-
s,stem"%Pause%#;
return (;
-
9. Најмањи sаједнички садрxилаu
Hачинити програм који иsрачунава најмањи sаједнички садрxилаn два природна
броја.
Hроблем се рјешава са двије do while пет¬е, при чему је једна пет¬a угнијеxhена у
другу. Hрвом пет¬ом контролишем бројеве и пет¬а се иsвршава док бројеви нису једнаки
јединиnи, исто тако мијењам вриједност бројача помоhу кога вршим дије¬ење бројева и
акумулирам садрxилаn.
¡руга пет¬а дијели бројеве (растав¬а бројеве на просте ]акторе) и то sа вриједност
бројача док је остатак једнак нули. Hмам три раsличита случаја:
1. оба броја дје¬ива-дијелим оба (nјелобројно)
2. први број дје¬ив-дијелим први
3. други број дје¬ив-дијелим други
Кад бројеви нису дје¬иви бројачем иsлаsим иs угнијеxhене пет¬е и мијењам
вриједност бројача.
#include <iostream>
using namespace std;
//8eklarisem potrene promjenjive
int PrviHroj, 8rugiHroj, Sadr!ilac, Hrojac;
int OstatakPrvi, Ostatak8rugi;
int main "#
$
cout << %&nesi vrijednost prvog roja %;
cin >> PrviHroj;
cout << %&nesi vrijednost drugog roja %;
cin >> 8rugiHroj;
if ""PrviHroj<'(#))"8rugiHroj<'(##
$
cout<<%Program funkcionise !a cijele rojeve vece od (%;
s,stem"%Pause%#;
goto kraj;
-
Sadr!ilac'1;
//Postavljam pocetnu vrijednost Hrojaca i sadr!ioca
Hrojac'1;
//Hrojac je kontrolna promjenjiva a sadr!ilac akumulativna
//dvije do petlje, prva ima !adatak da odrojava rojac od 2 do najveceg prostog
faktora najmanjeg !ajednickog sadr!ioca
do
$
Hrojac'Hrojac.1;//ako ne stavim rojac na 2 upadam u eskonacnu
petlju
OstatakPrvi'PrviHrojGHrojac;
Ostatak8rugi'8rugiHrojGHrojac;//racunam ostatak dijeljenja sa
aktivnim rojacem
do
$
//imam ? opcije 1Joa roja djljiva
if""OstatakPrvi''(# == "Ostatak8rugi''(##
$
PrviHroj'PrviHroj/Hrojac;
8rugiHroj'8rugiHroj/Hrojac;
Sadr!ilac'Sadr!ilac5Hrojac;
OstatakPrvi'PrviHrojGHrojac;
Ostatak8rugi'8rugiHrojGHrojac;
-//2Jprvi roj djeljiv
if "OstatakPrvi''(#
$
PrviHroj'PrviHroj/Hrojac;
Sadr!ilac'Sadr!ilac5Hrojac;
OstatakPrvi'PrviHrojGHrojac;
-//?Jdrugi roj djeljiv
if "Ostatak8rugi''(#
$
8rugiHroj'8rugiHroj/Hrojac;
Sadr!ilac'Sadr!ilac5Hrojac;
Ostatak8rugi'8rugiHrojGHrojac;
--
while ""OstatakPrvi''(# )) "Ostatak8rugi''(##;
//unutrasnja while !avrsava kad su oa ostatka ra!licita od nule
-
while ""PrviHroj+'1# )) "8rugiHroj+'1##;
//spoljna while !avrsava kad su oa roja svedena na 16podijeljena do
kraja
//ispisujem akumulirani Sadr!ilac
cout << %Eajmanji !ajednicki sadr!ilac !a rojeve je3 % <<
Sadr!ilac;
s,stem "%Pause%#;
kraj3return (;
-
10. Највеhи sаједнички дјелилаu
Hачинити програм који иsрачунава највеhи sаједнички дјелилаn два природна броја.
Hроблем је ријешен Eуклидовим алгоритмом: веhи број дијелим мањим, sатим мањи
остатком дије¬ења, потом тај остатак новим остатком и настав¬ам поступак док не добијем
остатак нула-последњи остатак раsличит од нуле је највеhи sаједночки дјелите¬ ( највеhа
sаједничка мјера).
#include <iostream>
using namespace std;
int main"#
$
//deklaracija promjenjivih i unos
int Hroj1,Hroj2,Ostatak;
cout <<%&nesi rojeve ciji najveci !ajednicki djelilac !elis "2 roja#3
%<<endl;
cout<<%Prvi roj3 %;
cin>>Hroj1;
cout<<%8rugi roj3 %;
cin>>Hroj2;
if""Hroj1''(# )) "Hroj2''(## //rojevi moraju iti ra!liciti od (
$
cout<<%Hrojevi moraju iti ra!liciti od (%;
s,stem "%Pause%#;
goto kraj;//nasilni i!la!ak i! programa
-
else
$
//dijelim cjelorojno "ostatak# veci sa manjim, dok ostatak nije
nula, poslednji ostatak je rjesenje
do
$
if "Hroj1>Hroj2#
$
Ostatak'Hroj1GHroj2;
Hroj1'Hroj2;
Hroj2'Ostatak;
-
else
$
Ostatak'Hroj2;
Hroj2'Hroj1;
Hroj1'Ostatak;
-
-
while "Hroj2+'(#;
-//ispisujem rjesenje
cout<< %Eajveci !ajedniski djelilac je3 %<<Hroj1<<endl;
s,stem "%Pause%#;
kraj3return (;
-
11. Rрост број
Hачинити програм који провјерава да ли је учитани број прост.
Fрој је прост ако је дје¬ив са 1 и са самим собом. Fрој је прост ако не постоји ни један
nјелобројни дјелилаn броја иs интервала од 1 до квадратног коријена броја.
#include <iostream>
#include <cmath>
using namespace std;
//8eklarisem promjenljive
int Hroj;
ool ProstHroj;
//funkcija koja vraca logicku promjenljivu tacno ako je !adti roj prost
ool prost"int r#
$
int i;
ool Prostr;
//van petlje su ? vrijednosti, !ato sto je u petlji od ? pa navise
if ""r''1# )) "r''2# )) "r''?##
$
Prostr'true;
-
else
$//ako nije paran
if "rG2+'(#
$//provjeravam do korijena roja, toliko je dovoljno da ne idem do
kraja
for "i'?; i<' "int#s4rt""doule#r#.1; i.'2#
$//da li je djeljiv
if "rGi''(#
$
Prostr'false;
-
else
$
Prostr'true;
-
-
-
else
$
Prostr'false;
-
-
return Prostr;
-
int main"#
$
cout << %&nesi roj !a koji !elis provjeriti da li je u skupu prostih
rojevaJ%<<endl;
cin>> Hroj;
//po!iv funkcije
ProstHroj'prost"Hroj#;
if "ProstHroj''true#
$
cout <<%Hroj % << Hroj<<% je prostJ% <<endl;
s,stem"%Pause%#;
-
else
$
cout <<%Hroj % << Hroj<<% nije prostJ% <<endl;
s,stem"%Pause%#;
-
return (;
-
12. Квадратна једначина
Hачинити програм који иsрачунава рјешења квадратне једначине.
Pјешење се моxе подијелити у 2 nјелине:
1. провјеравам вриједности кое]иnијената, у случају да да¬и рачун има смисла
прелаsим на корак 2
2. иsрачунавам детерминанту, па на основу вриједности детерминанте рачунам рјешења
једначине.
#include <iostream>
#include <cmath>
using namespace std;
int main"#
$
float a,,c,8,Pom,;eal,Imag,K1,K2;
//unos koeficijenata
cout <<%&nesi vrijednost koeficijenata kvadratne jednacine%<<endl;
cout << %a'%;
cin >>a;
cout << %'%;
cin >>;
cout << %c'%;
cin >>c;
if ""a''(# == "''(# == "c''(##//svi koeficijenti nule
$
cout << %Ovakva kvadratna jednacina ima eskonacno mnogo rjesenja+%<<endl;
s,stem "%Pause%#;
goto kraj;
-
if ""a''(# == "''(# == "c+'(##//samo c ra!licito od nule6jednacina nemoguca
$
cout << %Ovakva kvadratna jednacina je nemoguca+%<<endl;
s,stem "%Pause%#;
goto kraj;
-
if ""a''(# == "c''(# == "+'(##//a i c ra!licito od nule6rjesenja ista i to (
$
cout <<% ;jesenja ovakve kvadratne jednacine su ista i to K1'K2'(%<<endl;
s,stem "%Pause%#;
goto kraj;
-
if ""a''(# == "+'(# == "c+'(##// i c ra!licito od nule6linearna jednacina
$
K1'6c/;
cout <<%Lvadratna jednacina je svedena na linearnu i i!nosi3 % <<K1<<endl;
s,stem "%Pause%#;
goto kraj;
-
8'56:5a5c;//racunam determinantu"? slucaja vrijednosti determinante#
Pom'a.a;
if "8''(#
$
K1'6/Pom;
cout <<% ;jesenja ovakve kvadratne jednacine su ista i to K1'K2'
%<<K1<<endl;
s,stem "%Pause%#;
-
else
$
if "8<(#
$
;eal'6/Pom;
Imag's4rt"68#/Pom;
cout << %Prvo rjesenje K1'% <<;eal<<%.%<<Imag<<% i%<<endl;
cout << %8rugo rjesenje K2'% <<;eal<<%6%<<Imag<<% i%<<endl;
s,stem"%Pause%#;
-
else
$
K1'"6.s4rt"8##/Pom;
K2'"66s4rt"8##/Pom;
cout << %Prvo rjesenje K1'%<<K1<<endl;
cout << %8rugo rjesenje K2'%<<K2<<endl;
s,stem"%Pause%#;
-
-
kraj3return (;
-
13. Oибоначијев број-рекурsивно
Hачинити програм који sа учитани број иsрачунава вриједност члана uибоначијевиг
ниsа чији је индекс учитани број.
Pјешење: F
0
÷1; F
1
÷1 ; F
n
÷F
n-1
¹F
n-2
#include <iostream>
using namespace std;
int E,i;
//funkcija koja racuna clan ni!a rekur!ivno
int Fi"int E#
$
if "E<'1# return 1;//!a svaki E<'1 kao re!ultat vraca 1
else return Fi"E61#.Fi"E62#;
-
int main"#
$
cout<<%&nesi indeks clana Fionacijevog ni!a koji !elis3 %;
cin>>E;
//Po!iva funkciju i stampa
cout<<%FionaciM%<<E<<%N'%<<Fi"E#<<endl;
s,stem "%Pause%#;
return (;
-
14. Oибоначијев ниs
Hачинити програм који исписује uибоначијев ниs до индекса броја који се уноси са
тастатуре.
#include <iostream>
using namespace std;
int E,i;
int KM1((N;
int main"#
$
cout<<%&nesi granicnu vrijednost Fionacijevog ni!a <1((3 %;
cin>>E;
//provjerava da li je E veci ili jednak nuli
if "E<(#
$
cout<<%<ranicna vrijednost ne mo!e iti manja od (%;
s,stem"%Pause%#;
-
else
//ako jeste racuna clanove ni!a do E i smijesta ih u ni! K
$
KM(N'1;
KM1N'1;
for"i'2;i<E;i..#
$
KMiN'KMi61N.KMi62N;
-
-
//ispisuje clanove ni! K
for"i'(;i<E;i..#
$
cout<<%FionaciM%<<i<<%N'%<<KMiN<<endl;
-
s,stem"%Pause%#;
return (;
-
15. Mинималан члан ниsа
Hачинити програм који проналаsи и штампа минималан члан ниsа.
Hрограм ради тако да први члан ниsа проглашава минималним, sатим га упореhује са
осталим члановима, када наhе да је неки члан ниsа мањи од минималног уsима њега sа
минималан и тако до краја ниsа.
#include <iostream>
using namespace std;
//deklarcija promjenljivih
int E, 7inO, i;
int KM1((N;
int main"#
$//unos granicne vrijednosti ni!a
cout<<% &nesi roj clanova ni!a <1(( 3%;
cin>>E;
//unos clanova ni!a
for "i'(;i<E;i..#
$
cout<<i<<%J clan ni!a i!nosi %<<%KM%<<i<<%N'%;
cin>>KMiN;
-
//prvi clan ni!a proglasavam minimalnim
7inO'KM(N;
for "i'1;i<E;i..#
$
//ula!im u petlju i poredim moj minimalan sa ostalim clanovima ni!a, kad nadjem
manji on je minimalan
if "KMiN<7inO#
$
7inO'KMiN;
-
-
//stampam najmanji
cout<<%7inimalan clan ni!a je clan3 %<<7inO<<endl;
s,stem"%Pause%#;
return (;
-
16. Rиста простиx
Hачинити програм који sа учитану граниnу интервала исписује све просте бројеве до
граниnе интервала.
Hроблем рјешавам поsивом ]ункnије prost која sа сваки члан ниsа провјерава да ли
припада скупу простиx бројева.
#include <iostream>
#include <cmath>
using namespace std;
//deklarisem promjenljive6gloalne
int E,i;
int KM@(N;
ool prost"int r#
$
ool Prostr;
//van petlje su ? vrijednosti, !ato sto je u petlji od ? pa navise
if ""r''1# )) "r''2# )) "r''?##
$
Prostr'true;
-
else
$//ako nije paran
if "rG2+'(#
$//provjeravam do korijena roja, toliko je dovoljno da ne idem do
kraja
for "i'?; i<' "int#s4rt""doule#r#.1; i.'2#
$//da li je djeljiv
if "rGi''(#
$
Prostr'false;
-
else
$
Prostr'true;
-
-
-
else
$
Prostr'false;
-
-
return Prostr;
-
//glavni program
int main"#
$
cout <<%&nesi roj clanova ni!a <@( 3%;
cin>>E;
//&pis clanova ni!a, koristim prirodne rojeve od ( do E61
for "i'(;i<E;i..#
$
KMiN'i;
-
//u for petlji provjeravam da li je clan ni!a prost roj
for "i'(;i<E;i..#
$
if"prost"KMiN#''true#//po!iv funkcije prost i upit da li je prost
$
//ispis prostih clanova ni!a
cout<<%Olan ni!a %<<%KM%<<i<<%N'%<<KMiN<<% je prost
roj%<<endl;
-
-
s,stem"%Pause%#;
return (;
-
17. Aритметичка средина ниsа
Hачинити програм који иsрачунава аритметичку средину учитаниx чланова ниsа.
Pјешење је класично сумирање чланова ниsа , и након тога, ван пет¬е суму
подијелимо са бројем чланова ниsа. Оно на шта треба обратити паxњу је тип податка који
добијамо дије¬ењем суме-морамо га експлиnитно sаxтијевати.
#include <iostream>
using namespace std;
int KM@(N, i, Sum, E;
float /rts;
int main"#
$
cout<<%&nesi roj clanova ni!a3 %;
cin>>E;
cout<<endl<<%Olanovi ni!a su3%<<endl;
//unesi clanove ni!a
for"i'(;i<E;i..#
$
cout<<%KM%<<i<<%N'%;
cin>>KMiN;
-
Sum'(;//pocetna vrijednost sume
for"i'(;i<E;i..#
$
Sum.'KMiN;//sumiram clanove ni!a
-
cout<<%Suma clanova ni!a i!nosi3 %<<Sum<<endl;
/rts'"float#Sum/E;//pa!iti na tip podatka+
cout<<%/ritmeticka sredina ucitanog ni!a i!nosi3 %<</rts<<endl;
s,stem"%Pause%#;
return (;
-
18. Cортирање ниsа
Hачинити програм који учитани ниs елемената сортира у нерастуhем редослиједу.
Cорт је ријешен методом 'buble¨ sort-a. Hмамо 2 Ior пет¬е у којој прва уsима ел. ниsа,
а друга Ior пет¬а тај елеменат, ако је највеhи, гура на крај и тако sа сваки ел. ниsа.
#include <iostream>
using namespace std;
int E, i,j,pom;
int KM1((N;
int main"#
$
cout<<%&nesi granicnu vrijednost ni!a <1((3 %;
cin>>E;
if "E<(#
$
cout<<%roj clanova ni!a mora iti >(+%;
s,stem "%Pause%#;
goto kraj;
-
for "i'(;i<E;i..#//unos clanova ni!a
$
cout<<%KM%<<i<<%N'%;
cin>>KMiN;
-
for "i'(;i<E;i..#//postupak sortiranja
$
for"j'(;j<E6i;j..#
$
if"KMjN >' KMj . 1N#
$//!amjena mjesta, veci clan se %gura% na kraj
pom ' KMjN;
KMjN ' KMj . 1N;
KMj . 1N ' pom;
-
-
-
cout<<%Sortirani ni! je3%<<endl;
for "i'(;i<E;i..#
$
cout<<%KM%<<i<<%N'%<<KMiN<<endl;
-
s,stem"%Pause%#;
kraj3return (;
-
19. Eлементи на главној дијагонали
Hачинити програм који исписује елементе главне дијагонале учитане матриnе.
//Ispis clanova glavne dijagonale, matrica mora iti kvadratna
#include <iostream>
using namespace std;
//8eklaracija promjenjivih
int /M1(NM1(N, i,j,E;
//funkcija !a unos matrice
int unesi"int E#
$
for"i'(;i<E;i..#
for"j'(;j<E;j..#
$
cout << %/M% << i << %,% << j << %N'% ;
cin >> /MiNMjN;
-
return /MiNMjN;
-
void ispisi"int E#
$
for"i'(;i<E;i..#
$
cout<<endl;
for"j'(;j<E;j..#
$
cout<<% %<</MiNMjN;
-
-
-
//glavni program
int main"#
$
//unos dimen!ija matrice
cout<<%&nesi dimen!ije matrice3 %;
cin>>E;
//po!iv funkcije unesi
/MENMEN'unesi"E#;
//po!iv funkcije ispisi6da napise matricu u preglednom oliku
ispisi"E#;
//i!dvajanje i ispis clanova dijagonale
cout<<endl;
cout<<%Olanovi matrice koji se nala!e na glavnoj dijagonali su3 %<<endl;
for"i'(;i<E;i..#
for"j'(;j<E;j..#
$
if"i''j#
$
cout<<%/M%<<i<<%,%<<j<<%N'%<</MiNMjN<<endl;
-
-
s,stem "%Pause%#;
return (;
-
20. þијагонална матриuа
Hачинити програм који провјерава да ли је учитана матриnа дијагонална.
Mатриnа је дијагонална ако су јој сви чланови ван главне дијагонале једнаки нули, а
бар један члан на главној дијагонали раsличит од нуле.
//7atrica je dijagonalana ako su joj svi clanovi, osim onih na glavnoj
dijagonali jednaki (
#include <iostream>
using namespace std;
//deklarisem promjenjive
int /M1(NM1(N, i, j, 7;
ool contProm;
int main"#
$
cout<<%&nesi red matrice3 %;
cin>>7;
//&nos matrice
for"i'(;i<7;i..#
$
for"j'(;j<7;j..#
$
cout<<%/M%<<i<<%,%<<j<<%N'%;
cin>>/MiNMjN;
-
-
cout<<endl;
//Ispisi matricu6lijepo
for"i'(;i<7;i..#
$
cout<<endl;
for"j'(;j<7;j..#
$
cout<<% %<</MiNMjN;
-
-
cout<<endl;
//Provjeri da li na glavnoj dijagonali postoji elemanat +'(
contProm'false;
for"i'(;i<7;i..#
$
for"j'(;j<7;j..#
$
if""i''j# == "/MiNMjN+'(##
$
contProm'true;
-
-
-
if "contProm''true#
$//ako postoji pitam da li su svi ostali '(
for"i'(;i<7;i..#
$
for"j'(;j<7;j..#
$
if""/MiNMjN+'(# == "i+'j##
$ cout<<%7atrica nije dijagonalna+%;
s,stem"%Pause%#;
goto kraj;
-
-
-
cout<<%7atrica je dijagonalna+%;
s,stem "%Pause%#;
goto kraj;
-
else
$
cout<<%Svi elementi na glavnoj dijagonali su nule, e! o!ira na ostale
vrijednosti matrica nije dijagonalna+%;
s,stem"%Pause%#;
goto kraj;
-
kraj3return (;
-
21. Rроиsвод-матриuа са скаларом
Hачинити програм који иsрачунава проиsвод унесене матриnе се sаданим скаларом.
#include <iostream>
using namespace std;
int /M1(NM1(N, i, j, 7, E, Hroj;
int main"#
$
cout<<%&nesi roj redova matrice3 %;
cin>>7;
cout<<%&nesi roj kolona matrice3 %;
cin>>E;
//&nos matrice
for"i'(;i<7;i..#
$
for"j'(;j<E;j..#
$
cout<<%/M%<<i<<%,%<<j<<%N'%;
cin>>/MiNMjN;
-
-
cout<<endl;
//Ispisi matricu6lijepo
for"i'(;i<7;i..#
$
cout<<endl;
for"j'(;j<E;j..#
$
cout<<% %<</MiNMjN;
-
-
cout<<endl;
cout<<%&nesi roj sa kojim !elis pomno!iti matricu3 %;
cin>>Hroj;
cout<<%Proi!vod unesene matrice i datog roja je3 %<<endl;
for"i'(;i<7;i..#//i!racunavanje i ispis proi!voda
$
cout<<endl;
for"j'(;j<E;j..#
$
cout<<% %<</MiNMjN5Hroj;
-
-
cout<<endl;
s,stem"%Pause%#;
return (;
-
22. Rроиsвод-двије матриuе
Hачинити програм који иsрачунава проиsвод двије унесене матриnе.
#include <iostream>
using namespace std;
//8eklaracija promjenjivih
int /M1(NM1(N, HM1(NM1(N, OM1(NM1(N, i, j, m, k, ar,ak, r,k;
int main"#
$
cout<<%&nesi dimen!ije prve matrice3 Hr6kolona, Hr6redova%<<endl;
cin>>ak;
cin>>ar;
for"i'(;i<ar;i..#
$
for"j'(;j<ak;j..#
$
cout << %/M% << i << %,% << j << %N'% ;
cin >> /MiNMjN;
-
-
cout<<endl<<%&nesi dimen!ije druge matrice3 Hr6kolona, Hr6redova%<<endl;
cin>>k;
cin>>r;
for"i'(;i<r;i..#
$
for"j'(;j<k;j..#
$
cout << %HM% << i << %,% << j << %N'% ;
cin >> HMiNMjN;
-
-
//ispisujem unesenu prvu matricu
cout<<endl<<%&nesena matrica je olika3 %<<endl;
for"i'(;i<ar;i..#
$
cout<<endl;
for"j'(;j<ak;j..#
$
cout<<% %<</MiNMjN;
-
-
//ispisujem unesenu drugu matricu
cout<<endl<<%&nesena matrica je olika3 %<<endl;
for"i'(;i<r;i..#
$
cout<<endl;
for"j'(;j<k;j..#
$
cout<<% %<<HMiNMjN;
-
-
//pitam da li se mogu i!mno!iti
if"ak+'r#
$
cout<<%8imen!ije matrica su takve da mno!enje nije moguce%;
s,stem"%Pause%#;
goto kraj;
-
//mno!im ove dvije matrice
for"i'(;i<ar;i..#
$
for"k'(;k<k;k..#
$
m'(; //ovjde uaci
for"j'(;j<r;j..#
$
m'm./MiNMjN5HMjNMkN;
-
OMiNMkN'm;
-
-
cout<<endl<<%;e!ultat mno!enja ove dvije matrice je3 %<<endl;
for"i'(;i<ar;i..#
$
cout<<endl;
for"j'(;j<k;j..#
$
cout<<% %<<OMiNMjN;
-
-
s,stem"%Pause%#;
kraj3return (;
-
23. Tранспонована матриuа
Hачинити програм који иsрачунава и исписује транспоновану матриnу учитане
матриnе.
#include <iostream>
using namespace std;
//8eklaracija promjenjivih
int /M1(NM1(N, HM1(NM1(N, i, j, E,7;
void unesi"int 7,int E#
$
for"i'(;i<7;i..#
$
for"j'(;j<E;j..#
$
cout << %/M% << i << %,% << j << %N'% ;
cin >> /MiNMjN;
-
-
-
void ispisi"int pP/M1(NM1(N, int 7, int E#
$
for"i'(;i<7;i..#
$
cout<<endl;
for"j'(;j<E;j..#
$
cout<<% %<<pP/MiNMjN;
-
-
-
//transponovanje
void transponuj"int 7, int E#
$
for"i'(;i<7;i..#
$
for"j'(;j<E;j..#
$
HMjNMiN'/MiNMjN;
-
-
-
//glavni program
int main"#
$
cout<<%&nesi roj redova matrice /3 %;
cin>>7;
cout<<%&nesi roj kolona matrice /3 %;
cin>>E;
unesi"7,E#;
cout<<%Originalna matrica / i!gleda ovako3 %;
ispisi"/,7,E#;
cout<<endl;
transponuj"7,E#;
cout<<%Qransponovana matrica / i!gleda ovako3 %;
cout<<endl;
ispisi"H,E,7#;
cout<<endl;
cout<<endl;
s,stem"%Pause%#;
return (;
-
24. Xаној
Hа једном од три вертикална стуба слоxена је пирамида од N дискова раsличитиx
полупречника (што је диск на вишем полоxају полупречник му је мањи). 3адатак је да се сви
дискови премјесте на један од два слободна стуба тако да они буду у истом поретку као и на
првом стубу. Hри томе треба водити рачуна о с¬едеhим правилима:
а) доsво¬ено је премјештати само један по један диск,
б) приликом премјештања није доsво¬ено да диск са веhим буде иsнад диска са
мањим пречником.
Nачинити програм који одреhује редослијед премјештања дискова.
Hрограм прикаsује кораке потребне sа премјештање дискова са стуба на стуб. Cтубови
су оби¬еxени бројевима 1, 2 и 3.
#include <iostream>
using namespace std;
int main"#
$
int rojPdiskova,r;
void preaci"int,int,int,int#;
cout<<%&nesi roj diskova3 %;
cin>>rojPdiskova;
preaci"rojPdiskova,1,2,?#;
s,stem"%pause%#;
return (;
-
void preaci"int n,int sa,int na, int pom#/5deklarisanje promjenljivih,n6roj
diskova, %sa%6sa stua na stu, %na%6na stu, %pom%6pomocni stu5/
$
if"n>(#
$
preaci"n61,sa,pom,na#;//preaci disk sa stua %sa% na stu %na%
cout<<sa<<% 6> %<<na<<endl;
preaci"n61,pom,na,sa#;
-
-
25. Rаскалов троугао
Hачинити програм који исписује Hаскалов троугао, ред троугла који hе бити исписан
уносимо са тастатуре.
#include <iostream>
using namespace std;
int Paskal"int 9,int ,#
$
int a,;
if""9''1# )) "9'',##
return 1;
a'Paskal"961, ,61#;//red i!nad, kolona prije
'Paskal"9, ,61#;//red i!nad, tekuca kolona
return a.;
-
int main"#
$
int n,i,j;
cout<<%&nesi vrijednost3 %<<endl;
cin>>n;
for "j'1;j<'n;j..#
$
cout<<endl;
for"i'1;i<'j;i..#
cout<<% %<<Paskal"i,j#;
-
s,stem"%Pause%#;
return (;
-
26. Cабирање и одуsимање комплексниx бројева-класе
Hачинити програм који пројектује класу са елементарним операnијама над
комплексним бројевима (сабирање, одуsимање).
#include <iostream>
using namespace std;
//definicija klase
class compleksHr$//ime klase i krecemo sa definisanjem
float imag, real;//privatni podaci clanovi
pulic3//javni "funkcije clanice klase#
void c&citaj"float, float#;
compleksHr cSa"compleksHr#;
compleksHrcOdu!"compleksHr#;
float c;e"#const$return real;-;//vraca vrijednost realnog dijela
"inspektor6ne mijenja stanje ojekta#
float cIm"#const$return imag;-;
-;//!avrsena definicija klase
void compleksHr33c&citaj"float a, float #$//inicijali!acija ojekta klase
compleksHr "primjerak klase#
real'a;//dodjeljuje vrijednosti podacima clanovima ojekta
imag';
-
compleksHr compleksHr33cSa"compleksHr a#$
compleksHr priv;
privJreal'real.aJreal;
privJimag'imag.aJimag;
return priv;
-
compleksHr compleksHr3cOdu!"compleksHr a#$
compleksHr priv;
privJreal'real6aJreal;
privJimag'imag6aJimag;
return priv;
-
int main"#
$
compleksHr c1,c2,c?;
float a,;
cout<<%&nesi vrijednosti !a realni i imaginarni dio c1%;
cout<<endl;
cin>>a>>;
c1Jc&citaj"a,#;
cout<<%&nesi vrijednosti !a realni i imaginarni dio c2%<<endl;
cin>>a>>;
c2Jc&citaj"a,#;
c?'c1JcSa"c2#;//c2 po!ivamo kao argument, a c1 pristupamo direktno
cout<<%Rir dva data kompleksna roja je3 %<<%"%<<c?Jc;e"#<<%,
%<<c?JcIm"#<<%#%<<endl;
c?'c1JcOdu!"c2#;
cout<<%;a!lika dva data kompleksna roja je3 %<<%"%<<c?Jc;e"#<<%,
%<<c?JcIm"#<<%#%<<endl;
s,stem"%Pause%#;
return (;
-
27. ApsoIutna vrijednost
Korisnik unosi cijeli broj, racuna se apsolutna vrijednosttog broja pa se ispisuje rezultat.
(Treba uociti da redoslijed izvrsavanja naredbi zavisi od unesenog broja.
//O8 svakog cijelog roja racuna apsolutnu vrijednost
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
int a;
cout<<%;acuna apsolutnu vrijednost%<<endl<<endl;
cout<<%&nesi ilo koji cijeli roj%<<endl;
cin>>a;
if"a>(#//uslov prvi
cout<<a<<endl;
else//ako nije ispunjen uslov onada i!vrsava sledecu radnju
cout<<a5"61#<<endl;
s,stem"%pause%#;
return (;
-
28. Ispis prvih 20 brojeva
Potrebno je ispisati prvih 20 prirodnh brojeva. (Treba uociti da se dio naredbi izvrsava 20
puta.)
Ispis prvih 2( prirodnih rojeva
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
int rojac;//deklarisanje promjenljive
cout<<%Ispis rojeva od 1 d( 2(%<<endl;
for"rojac'1;rojac<'2(;rojac..#/5ovdje se u !agradu stavlja
"pocetno stanje;uslov;prirast# 5/
$
cout<<rojac<<%,%;//navodne !nake stavljamo da se napravi
rastojanje i!medju rojeva
-
cout<<endl;
s,stem"%pause%#;
return (;
-
29. Pridruzivanje sIova
Naciniti program koji na dva nacina ispisuje slovo 'A¨ na ekranu u dva reda. Prvoj je
pridruzen znak oznacen jednostrukim navodnicima, a drugoj dekadska ASCII vrijednost tog znaka.
//Eacini pridru!ivanja slova
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
char a,;
a'0/0;
'D@;///SOII vrijednost slova /
cout<<a<<endl;
cout<<<<endl;
s,stem "%P/&SS%#;
return (;
-
U ovom programu moramo uociti da se na ekranu pokazuju slova A i B bez obzira sto su
razlicite naredbe.
30. Zvucni signaI
Naciniti program koji proizvodi zvucni signal.
//Program koji proi!vodi !vuk
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
char !vuk'0Ta0;// a je o!naka !a !vuk od rjeUi %alter%
char noviPred'0Tn0;// isto ima !naUenje kao endl;
cout<<!vuk<<!vuk<<noviPred;
s,stem "%P/&SS%#;
return (;
-
U ovom programu nema nikakvog ispisa na ekranu, kada pokrenemo program cuje se zvucni
signal. Ako je potreban znak koji se ne moze prikazati na ekranu, koristi se slijed koji pocinje
lijevom kosom crtom (engl. backslash). U primjeru je prikaz zvucnog signala (engl. alert), te
pomak u novi red.
31. Pozdrav korisniku
Naciniti program koji pri unosu imena korisnika , ispisuje pozdrav korisniku.
//naciniti program koji ispisuje po!dravnu poruku korisnikuJ
#include %stdaf9Jh%
#include<iostream>
#include<string>//po!iv datoteke sa klasom string
using namespace std;
int main "#
$
string userPname;//da i mogli procitati ime koje korisnik upise
cout<<%&nesi svoje ime3%<<endl;
cin>>userPname;
cout<<endl;
cout<<%Rdravo,%<<userPname<<%, kako steV%<<endl;
s,stem "%pause%#;
return (;
-
Da bi mogli unijeti ime moramo deklarisati promjenljivu kao tip string, sve ono sto ce biti
ispisano na ekranu treba staviti unutar para dvostrukih navodnika. Npr.: "Zdravo,"
32. Povrsina kruga
Naciniti program koji racuna obim i povrsinu kruga. Koristiti konstantu Pi.
//Program !a i!racunavanje O i P kruga
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
float r, P, O ;//deklarisanje promjenljivih
const float Pi'?J1:;//deklarisanje konstante Pi
cout<<%Program !a racunanje oim i povrsine kruga%<<endl<<endl;
cout<<%&nesi poluprecnik kruga%<<endl<<endl;
cin>>r;//ucitavanje unesene vrijednosti
O'25r5Pi;
P'r5r5Pi;
cout<<%oim je3 %<<O<<endl<<endl;
cout<<%Povrsina je3 %<<P<<endl<<endl;
s,stem"%pause%#;
return (;
-
33. Kvadrat broja
Naciniti program koji racuna kvadrat broja koji se unese preko tastature.
//Eaciniti program koji racuna kvadrat unesenog roja
#include %stdaf9Jh%
#include <iostream>
using namespace std;
int main"#
$
int a;
cout<< %&nesite roj3 %<<endl;//ispis poruke
cin >>a; // nareda !a unos roja5/
cout << endl;
cout << %Lvadrat roja %;
cout << endl;
cout << % je %<<a5a;//racuna kvadrat unesenog roja
cout << endl;//ispis pra!nog reda
cout << endl;
s,stem "%P/&SS%#;
return (;
-
34. Stepenovanje
Naciniti program koji stepenuje uneseni broj sa unesenim eksponentom.
//Eaciniti program koji stepenuje uneseni roj
#include %stdaf9Jh%
#include<iostream>
#include<cmath>// ukljucujemo ilioteku matematickih funkcija
using namespace std;
int main "#
$
float roj;//roj mo!e iti svaki realni roj
float eksponent;
float re!ultat;
cout<<%Stepenovanje rojeva%<<endl;
cout<<%&nesi roj koji !elis stepenovati3%<<endl;
cin>>roj;
cout<<%&nesi eksponent%<<endl;
cin>>eksponent;
re!ultat'pow"roj,eksponent#;//%%pow% je nareda !a stepenovanje
cout<<%;e!ultat je%<<endl;
cout<<re!ultat<<endl;
cout<<endl;
s,stem"%pause%#;

return (;
U ovom programu se poziva biblioteka cmath, jer se koristi naredba pow , naredba za
stepenovanje, sto znaci da racunar sam racuna stepen zadanog broja na zadani eksponent.
35. Pozdrav u vise radova
Naciniti program koji ispisuje na ekranu u tri reda pozdravnu poruku ,Pozdrav svim studentima
Apeirona'
.
//Program ispisuje po!dravnu poruku u vise redova
#include %stdaf9Jh%
#include <cstdli>
#include <iostream>
using namespace std;
int main"#
$
cout << %TnTn%;//o!nake !a novi red
cout << %Po!drav,Tn%;
cout << %svim studentimaTn%; // sadarWaj !nakovnog ni!a se ispisuje u
navodnim !nacima
cout <<%/peironaTnTn%;
cout << XTn%;;
s,stem "%P/&SS%#;
return (;
-
Da bi poruka bila ispisana u vise redova koristimo oznake za novi red.U ovom primjeru za
novi red koriscena je oznaka \n, a sadrzaj znakovnog ispisa se ispisuje izmedu navodnih znakova.
36. Negativan broj u pozitivan
Nacini program koji negativan broj pretvara u pozitivan broj.
//Eaciniti program koji negativan roj pretvara u po!itivan
#include %stdaf9Jh%
#include <iostream>
#include<cmath>
using namespace std;
int main"#
$
float roj;
float re!ultat;
cout<<%&nesi negativan roj%<<endl;
cin>>roj;
cout<<endl;
re!ultat'as"roj#;//%as%je nareda !a pretvaranje negativnog roja u
po!itivan
cout<<%Po!itivan roj je%<<endl;
cout<<re!ultat<<endl;
cout<<endl;
s,stem"%pause%#;
return (;
-
U ovom programu se poziva bilioteka cmath jer se koristila naredba abs, naredba koja
negativan broj pretvara u pozitivan.
37. Tri osnovne operacije
Naciniti program koji od korisnika trazi da unese dva cijela broja i nad njima vrsi tri
osnovne racunske operacije (*, ¹, - ).
/Eaciniti program koji mno!i, saira i odu!ima dva unesena roja
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
int a, , c, d, e;//deklarisanje varijali
cout<< %Osnovne racunske operacije%<<endl;
cout<<%&nesite dva cijela roja%<<endl;
cin >> a;//Eareda koja ucitava vrijednost koju unese korisnik
cin >> ;
c'"a5#;
cout<<%Proi!vod je3%<<c<<endl;
d'"a.#;
cout<<%Rir je3%<<d<<endl;
e'"a6#;
cout<<%ra!lika je3%<<e<<endl;
cout<<%Lraj%<<endl;
s,stem"%pause%#;
return (;
-
Ovdje su koriYteni inarni aritmetiUki operatori ., 6 i 5 J
38. DjeIjenje dva broja
Nacini program koji dijeli dva broja koja se unesu preko tastature.
/Eaciniti program koji djeli dava proi!voljna roja
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main "#
$ float a; // u prostor formiran naredom %float%,
float ;// mo!emo spremiti rojeve sa decimalnim !are!omJ
float kolicnik;
cout <<%8jeljenje%<<endl;//na ekranu se ispisuje tekst
cout<<endl;
cout <<%unesi prvi roj3%<<endl;
cout<<endl;
cin >> a;
cout<<endl;// sa ovim samo uljepsavamo ekran
cout <<%unesi drugi roj3%<<endl;cout<<endl;
cin >> ;
cout<<endl;
kolicnik ' a/;
cout<<%Lolicnik je3%<<endl;cout<<endl;
cout<< kolicnik;
cout<<endl;
cout<<endl;
s,stem"%pause%#;
return (;
-
Ovdje je koriscen binarni operator podijeljeno , / , .
39. DjeIjenje sa ostatkom
Naciniti program koji racuna cjelobrojni kolicnik i ostatak. Koristiti aritmeticki operator
modul %
/Eaciniti program koji racuna cjelorojni kolicnik i ostatak pri djeljenju
dva roja
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
int a, , ostatak, kolicnik;//deklarisanje promjenljivih
cout<<%&pisi djeljenik%<<endl<<endl;
cin>> a;
cout<<%&pisi djelilac%<<endl<<endl;
cin>> ;
kolicnik ' a / ;
ostatak ' aG;//%G%je inarni operator !a moduo"ostatak pri djeljenju#
cout<<endl;
cout<<a<<%3%<<<<%'%<<endl<<endl;
cout<<kolicnik<<endl<<endl;
cout<<%cijelih, a ostatak je%<<endl<<endl;
cout<<ostatak<<endl;
s,stem"%pause%#;
return (;
-
Redoslijed izvrsavanja operatora, je isti kao u matematici.
40. Broj osvojenih bodova
Naciniti program koji na osnovu unesene ocjene iz testa ispisuje broj osvojenih bodova. U
programu koristiti switch-case naredbu.
//nacini program koji na osnovu unesene ocjene ispisuje roj odova
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
int ocj;
cout<<%&nesi ocjenu3%<<endl;
cin>>ocj;
switch "ocj#//Eareda %switch% omogucava visestruko grananje
$ //i!a narede %switch%dola!i cjelorojni i!ra! u viticastoj !agradi
case @3//provjerava se vrijednost i ako je tacna i!vrsava se nareda
cout<<%Imate >(61(( odova%<<endl;
reak;//%reak je !avrsetak loka naredi
case :3
cout<<%Imate B(6B> odova%<<endl;
reak;
case ?3
cout<<%Imate A(6A> odova%<<endl;
reak;
case 23
cout<<%Imate D(6D> odova%<<endl;
reak;
case 13
cout<<%Imate ispod D( odova%<<endl;
reak;
default3//ako nije nista od ponudjenog i!vrasava se naredna nareda
cout<<%Eekoraktna ocjena%<<endl;
-
s,stem"%pause%#;
return (;
-
41. Operatori obnavIjajuceg pridruzivanja
Naciniti program koji unijeti realni broj pridruzuje varijabli a. Sadrzaj varijable a prvo treba
uvecati za 5, pa umanjiti za 8, na kraju pomnoziti sa 3. Koristiti operatore obnavljajuceg
pridruzivanja. Neka postoji ispis svih koraka na ekranu.
//Eaciniti program koji nekom realnom roju pridru!uje varijalu i mjenja
jeJ
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
float a;//deklarisanje promjenjljive
cout<<%&pisi !eljeni roj%<<endl;
cin>>a;
cout<<%Sadr!aj varijale se uvecava !a @J%<<endl;
cout<<%Sada a i!nosi3%<<endl;
cout<<"a.'@#<<endl;//a.'@ ima isto !nacenje kao a.@'a
cout<<%Od trenutnog sadr!aja varijale a odu!ima se B%<<endl;
cout<<%Sada a i!nosi%<<endl;
cout<<"a6'B#<<endl;
cout<<%Qrenutni sadr!aj varijale a se mno!i sa ?%<<endl;
cout<<%Sada a i!nosi%<<endl;
cout<<"a5'?#<<endl<<endl;
s,stem"%pause%#;
return (;
-
42. Ime korisnika i njegove godine
Naciniti program gdje se unosi ime korisnika i na osnovu date godine rodenja i postojece
godine, na ekranu ispisuje ime korisnika i koliko godina ima korisnik.
/Eaciniti program u kom se unosi ime korisnika i racuna koliko ima
korisnik godina
#include %stdaf9Jh%
#include<iostream>
#include<string>
using namespace std;
int main"#
$
int IPgodina, godP;, godPS;//deklaracija promjenljivih
string ime;//narea koja omogucava unos imena
cout<<%Sa!naj koliko imas godina%<<endl;
cout<<%&pisi svoje ime%<<endl;
cin>>ime;
cout<<endl;
cout<<%&pisi godinu svog rodjenja3%<<endl;
cin>>godP;;
cout<<endl;
cout<<%Loja je godina sadaV%<<endl;
cin>>godPS;
cout<<endl;
IPgodina'godPS6godP;;
cout<<ime<<% ima %<<IPgodina<<% godina %<<endl<<endl;
s,stem"%pause%#;
return (;
-
43. Trocifreni brojevi djeIjivi sa 9
Naciniti program koji na ekran ispisuje sve trociIrene brojeve , ciji je zbir ciIara djeljiv sa 9.
5Eaciniti program koji na ekran ispisuje sve trocifrene
rojeve ciji je !ir cifara djeljiv sa >5/
#include %stdaf9Jh%
#include <iostream>
using namespace std;
int main"#
$
int s,d,j; //stotine, desetice, jediniceJJJ
cout<<%Qrocifrene rojeve kod kojih je suma cifri djeljiva sa
>3%<<endl<<endl<<endl;
for "int i'1((; i<1(((; i..# //petlja vrti sve ?6cifrene rojeve
$
int temp'i;/5 i!dvaja redom cifre roja tako Yto prvo traWi
ostatak pri djeljenju sa 1(, a !atim roj i djeli sa 1( da se
osloodi !adnje cifre i
omoguZi traWenje nove5/
j'tempG1(;
temp/'1(;
d'tempG1(;
temp/'1(;
s'tempG1(;
int sum's.d.j;
if "sumG>''(# //provjera da li je suma djeljiva sa >
cout << i <<%, %; // ako jeste, ispisuju se rojevi
-
cout<<endl<<endl<<endl;
s,stem "%pause%#;
return (;
-
44. Zapremina kupe
Naciniti program koji na osnovu unesenog poluprecnika i visine kupe racuna zapreminu
kupe.
/Program !a racunanje !apremine kupe
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$ float r, [, *;//definisanje promjenljivih
const float Pi'?J1:;//definisanje konstante Pi
cout<<%Rapremina kupe%<<endl<<endl;
cout<<%&nesi poluprecnik kupe%<<endl<<endl;
cin>>r;
cout<<%&nesi visinu kupe%<<endl<<endl;
cin>>[;
cout<<endl;
if "r>( == [>(#//uslov
$
*'r5r5Pi5[;
cout<<%*' %<<r<<% 5 %<<r<<% 5 %<<Pi<<% 5 %<<[<<endl<<endl;//!a prika!
i!rade !adatka
cout<<%*' %<<*<<endl;//gotov re!ultat
-
else
cout<<%&nesi po!itivne rojeve%<<endl;//ako se unesu negativni rojevi
s,stem"%pause%#;
return (;
-
45. Heronov obrazac
Naciniti program koji racuna povrsinu trougla po Heronovom obrascu.
//[eronov ora!ac
#include %stdaf9Jh%
#include<iostream>
#include<cmath>
using namespace std;
int main"#
$
float a, , c, s , P;
cout<<%&nesi stranicu a%<<endl;
cin>>a;
cout<<%&nesi stranicu %<<endl;
cin>>;
cout<<%&nesi stranicu c%<<endl;
cin>>c;
if "a.>c>a6 == a.c>>a6c == .c>a>6c##
$
s' "a..c#/2;
P' s4rt"s5"s6a#5"s6#5"s6c##;
cout<<%P' %<<P<<endl<<endl;
-
else
$
cout<<%Qe stranice ne cine trougao, proaj ponovo%<<endl;
-
s,stem"%pause%#;
return (;
-
46. Paranost broja
Naciniti program, tako da se unese cijeli broj razlicit od nule . Program dalje provjerava i
ispisuje na ekranu, da li je broj manji ili veci od 100 i da li je broj paran ili neparan.
//Provjeriti parnost roja i da li je veci ili manji od 1((
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
int a;
cout<<%&nesi cijeli roj ra!licit od nule%<<endl<<endl<<endl;
cin>>a;
cout<<endl;
if "a<1((#//*anjska if nareda
$
cout<<%&neseni roj je manji od 1(( i %;
if "aG2''(#//ovo je ugnje!dena if nareda, provjerava da li je
roj paran
cout<<% paran jeJ%<<endl;
else
cout<<% neparan jeJ%<<endl;
-
else if"a>1((#
$
cout<<%uneseniroj je veci od 1(( i% ;
if"aG2''(#
cout<<% paran jeJ%<<endl;
else
cout<<% neparan jeJ%<<endl;
-
else // ako roj nije ni veci ni manji od 1(( i!vrsava se ova nareda
$
cout<<%&nesen je roj 1((, on je paran%<<endl;
-
s,stem "%pause%#;
return (;
-
47. Ispis brojeva u odredenom rasponu
Naciniti program koji na ekranu ispisuje brojeve u rasponu M do N ( raspon bira korisnik).
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
int rojac, 7, E ;
cout<<%Ispis pocinje od3 %<<endl;
cin>>7;
cout<<%Ispis !avrsava rojem3 %<<endl;
cin>>E;
if "7<E#
$
for"rojac'7; rojac<'E; rojac..#
$
cout<<rojac<<%,%;
-
-
else
cout<<%Prvi roj mora iti manji od drugog%;
cout<<endl<<endl;
s,stem "%pause%#;
return (;
-
48. TabIica mnozenja
Naciniti program koji ispisuje tablicu mnozenja odabranog broja sa brojevima od 1 do 10.
Broj bira korisnik.
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main "#
$
int ,rojac;
cout<<%&pisi roj s kojim !elis mno!iti%<<endl;
cin>>;
for"rojac'1;rojac<'1(;rojac..#
cout<<<<%5%<<rojac<<%'%<<5rojac<<endl;
s,stem"%pause%#;
return (;
-
49. FaktorijeI
Naciniti program kojim se za dato n izracunava Iaktorijel prirodnog broja n: Iakt÷n!
÷1*2*3¹..*n.
//racuna faktorijel !adanog roja
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
long i,n, fakt;//ovdje su definisane promjnljive
cout<<%faktorijel proi!voljnog roja%<<endl;
cout<<%&nesi roj ciji faktorijel !elisJ %<<endl<<endl;
cin>>n;
for"fakt'1,i'1;i<'n;,i..#//pocetno stanje,uslov,prirast
fakt5'i;//formula po kojoj racuna re!ultat
cout<<%Faktorijel je3%<<fakt<<endl;//ispisi re!ultat
cout<<endl;
s,stem"%pause%#;
return (;
-
50. KaIkuIator
Naciniti program koji vrsi cetiri osnovne racunske operacije, tako da korisnik sam unosi
brojeve i racunsku operaciju koju zeli izvrsiti.Ovdje se koristi switch petlja.
//program sa cetiri racunske operacije
#include "stdaIx.h"
#include·iostream~
using namespace std;
int main()
¦
Iloat a;
Iloat b;
int rezultat;
cout··"Unesite prvi broj"··endl;
cin~~a;
cout··"Unesite drugi broj"··endl;
cin~~b;
cout··"1-sabrati"··endl;
cout··"2-oduzeti"··endl;
cout··"3-mnoziti"··endl;
cout··"4-djeliti"··endl;
cout··"unesi broj racunske opeacije koju zelis izvrsiti"··endl··endl;
cin~~rezultat;
switch(rezultat)/*naredbom case zapocinje dio programa koji ce se izvrsavati u varijabli
zavisno od toga koju racunsku operaciju zeli korisnik*/
¦
case 1:
cout··a··"¹"··b··"÷"··a¹b··endl;
break;//naredbom break se zavrsava case 1 naredba
case 2:
cout··a··"-"··b··"÷"··a-b··endl;
break;
case 3:
cout··a··"*"··b··"÷"··a*b··endl;
break;
case 4:iI (b÷÷0)
¦
cout··"Dijeljenje sa nulom nije dozvoljeno"··endl;//uslov za djeljenje
s•stem("pause");
break;

else
¦
cout··a··":"··b··"÷"··a/b··endl;
break;

deIault://Ovaj dio se izvrsava ako ni jedan uslov "case" nije zadovoljen
cout··"morate unijeti 1,2,3 ili 4"··endl;
€//ovom viticastom zagradom se zavrsava naredba case
cout··endl;
s•stem ("PAUS•");
return 0;

51. Kvadrati zadanog niza
Naciniti program koji racuna i ispisuje kvadrate zadanog niza (niz zadaje korisnik)
//program koji racuna kvadrate odredjenog niza
#include "stdaIx.h"
#include·iostream~
using namespace std;
int main()
¦
int n; // Broj elemenata niza
Iloat *A; // Pokazivac niza
cout ·· "Unesite broj elemenata niza‚ "··endl;
cin ~~ n;
A ÷ new Iloat ƒn„; // Alocira se niz A od n Iloat elemenata.
Ior (int i ÷ 0; i · n; i¹¹)
Aƒi„ ÷ i * i; // Aƒi„ ÷ i…2.
// Ispis vrijednosti elemenata niza.
Ior (int i ÷ 0; i · n; i¹¹)
cout ·· "Aƒ" ·· i ·· "„ ÷÷ " ·· Aƒi„ ·· endl;// Dealokacija niza.
delete ƒ„ A;
s•stem("pause");
return 0;

52. DjeIjivost brojeva
Naciniti program koji na osnovu unesenog raspona provjerava djeljivost sa zadanim brojem.
Svi brojevi se ispisuju na ekranu.
/*Program koji ispisuje sve brojeve koji su djeljivi sa zadanim brojem u zadanom rasponu
(raspon zadaje korisnik)*/
#include "stdaIx.h"
#include·iostream~
using namespace std;
int main()
¦
int brojac, m, n, b;//deklarisanje promjenljivih
cout··"Unesi od kog broja racunamo djeljivost: "··endl··endl;//ispis na ekranu
cin~~ m;
cout··"Unesi do kog broja se racuna djeljivost: "··endl··endl;
cin~~ n;
cout··"Sa kojim brojem provjeravamo djeljivost: "··endl··endl;
cin~~ b;
cout··"Brojevi djeljivi sa "··b··" u rasponu od "··m··"do "··n··" su "··endl··endl;
Ior(brojac÷m;brojac·÷n;brojac¹¹)//deklarisanje pocetnog stanja,uslova i prirasta
¦
iI(brojac†b÷÷0)//uslov koji treba biti uspunjen
cout··brojac··",";//ako je uslov ispunjen stampa

cout··endl;
cout··endl;
s•stem("pause");

return 0;

53. Brojac studenata
Naciniti program kojim se unosi 20 studenata opcijama 1-prolaz, 2-pad i na kraju ispisuje
koliko je proslo , a koliko palo.
/*20 studenata, opcija 1 je prolaz, a 2 pad na ispitu, nakon toga na izlazu dobijamo zbir
kolko je proslo, as koliko palo na ispitu*/
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
int Prola! ' (,
Pad ' (,
HrojacStudenata ' 1,
;e!ultat; //deklaracija promjenjljivih
while " HrojacStudenata<'2( #//uslov !a while petlju "ona ce se i!vrsavati
dok se ne unese 2( studenata#
$
cout<<%&nesite re!ultate sa ispita /;[QSLQ&;/ ;/O&E/;/ "1' prola!,
2'pad#3 %;
cin>>;e!ultat;
if" ;e!ultat''1 #
Prola! ' Prola! . 1;//prvi unos

else
Pad ' Pad . 1;//prvi unos ako je negativan
HrojacStudenata ' HrojacStudenata . 1;//provjerava roj unosa
-
cout<<% &kupno proslo %<<Prola!<<endl<<endl;
cout<<% &kupno palo %<<Pad<<endl<<endl;
s,stem"%pause%#;
return (;
-
54. Srednja vrijednost
Naciniti program koji nakon unesenih proizvoljnih brojeva racuna njihovu srednju
vrijednost.
//trea unijeti E realnih rojeva i odrediti njihovu srednju vrijednost
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
cout<<%& programu se unose proi!voljni rojevi i racuna se njihova srednja
vrijednostJ%<<endl;
float E, roj,!ir;//deklarisanje promjenljivih, mogu iti svi realni
rojevi
roj'(;
!ir'(;
cout<<%Eakon poslednjeg roja unesi (J %<<endl;//nareda korisniku
do //koristi se ako pocetni roj nije unaprijed po!na
$ cout<<%&nesi roj3 %;
cin>>E;
roj'roj.1;//koliko se unese rojeva
!ir'!ir.E;// saira unesene rojeve
-
while "E+'(#;//uslov da se i!adje i! petlje
roj'roj61;//umanjiti roj unesenih rojeva !a 1
cout<<%&neseno je %<<roj;
cout<<% rojeva JSrednja vrijednost je %<<!ir/roj<<endl;//srednja
vrijednost
s,stem"%pause%#;
return (;
-
55. Suma faktorijeIa
Naciniti program kojim se za dato n, izracunava suma: S÷1!¹2!¹3!¹...¹n!.
//!a !adano n , i!racunava sumu faktorijela
#include %stdaf9Jh%
#include <iostream>
using namespace std;
int main"#
$
long i,n,fakt,s;//definisanje promjenljivih
cout<<%unesi roj n%<<endl;
cin>> n;
for "s'(,fakt'1,i'1;i<'n;i..#//pocetno stanje, uslov,prirast
$
fakt5'i,s.'fakt;//formula po kojoj se racuna rjesenja
-
cout<<%Suma ' %<<s<<endl<<endl;//ispis rjesenja
s,stem "%pause%#;
return (;
-
-
56. NZD Najveci zajednicki djeIiIac - NZD
Najveci zajednicki djelilac dva prirodna broja je najveci broj kojim mozemo podijeliti i broj
a i broj b, a da pri tome nemamo ostatak.
//Program koji !a dva unesena roja racuna ER8
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
long int roj1,roj2,ostatak,pomProj;
cout<<%&nesite prvi roj3 %;
cin>>roj1;
cout<<%&nesite drugi roj3 %;
cin>>roj2;
if ""roj1''(#=="roj2''(##//prvi uslov ,ako su oa roja (, == je i
$
cout<<%Pogresan unos%<<endl;
s,stem "%Pause%#;
return (;
-
if "roj1<(# roj1'6roj1;//pretvara roj u po!itivan roj
if "roj2<(# roj2'6roj2;//pretvara roj u po!itivan roj
if ""roj1''1#== "roj2''1##//ako su oa roja 1,
cout<<%n!d je 1%<<endl;// I!racunavanje ER8
if"roj1<roj2#//uslov
$
pomProj'roj1;//pomocni roj
roj1'roj2;
roj2'pomProj;
-
do
$
ostatak'roj1Groj2;//racunanje po modulu
roj1'roj2;
roj2'ostatak;
-
while "ostatak +'(#;//ostatak nije (
cout<<%Eajveci !ajednicki djelilac "ER8#je3 %<<roj1<<endl;
cout<<endl;
s,stem "%Pause%#;
-
57. NZS Najmanji zajednicki sadrziIac- NZS.
Koristeci •uklidov algoritam za nalazenje najveceg zajednickog djelioca naciniti program za
nalazenje najmanjeg zajednickog sadrzioca datih celih brojeva. Algoritam realizovati u opstem
obliku, a posebne podatke uneti na pocetku glavnog programa.
//program koji racuna ERS
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
long int roj1,roj2,ostatak1,ostatak2,pomProj,rojac'(;// 8eklarisanje
promjenljivih
cout<<%&nesite prvi roj3 %;cin>>roj1;// &nos rojeva
cout<<%&nesite drugi roj3 %;cin>>roj2;
if ""roj1''(#=="roj2''(##// Provjera unesenih rojeva, ne smiju iti
nula
$
cout<<%Pogresan unos%<<endl;
s,stem "%Pause%#;
return (;
-
// I!racunavanje ERS
do
$
rojac'rojac.1;
ostatak1'rojacGroj1;
ostatak2'rojacGroj2;
pomProj'ostatak1.ostatak2;//ukljucen je pomocni roj
-
while "pomProj+'(#;///ko je pomocni roj ra!licit od nule
// Ispis re!ultata
cout<<%Eajmanji !ajednicki sadr!alac "ERS#je3 %<<rojac<<endl;
cout<<endl;
s,stem "%Pause%#;
58. Hanojski stubovi 1
Na jednom od tri vertikalna stuba slozena je piramida od N diskova razlicitih poluprecnika
(sto je disk na visem polozaju poluprecnik mu je manji). Zadatak je da se svi diskovi premjeste na
jedan od dva slobodna stuba tako da oni budu u istom poretku kao i na prvom stubu. Pri tome treba
voditi racuna o sledecim pravilima:
a) dozvoljen je premestati samo po jedan disk,
b) prilikom premestanja nije dozvoljeno da disk sa vecim bude iznad diska sa manjim
precnikom.
Naciniti program koji odreduje redoslijed premestanja diskova.
//Eaciniti program koji rjesava prolem [anojskih stuova
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
int rojPdiskova;
void preaci"int,int,int,int#;
cout<<%&nesi roj diskova%<<endl;
cin>>rojPdiskova;
preaci"rojPdiskova,1,2,?#;
-
void preaci"int n,int sa,int na,int pom#/5n6roj diskova,%sa%6sa kojeg
preacuje,%na%6na koji preacuje, %pom%6pomocni disk5/
$if "n>(#//ovdje smo moli pisati samo n
$preaci"n61,sa,pom,na#;
cout<<sa<<%6>%<<na<<endl;
preaci"n61,pom,na,sa#;
-
s,stem"%pause%#;

59. Hanojski stubovi 2
Na jednom od tri vertikalna stuba slozena je piramida od 3 diska razlicitih poluprecnika (sto
je disk na visem polozaju poluprecnik mu je manji). Zadatak je da se svi diskovi premeste na jedan
od dva slobodna stuba tako da oni budu u istom poretku kao i na prvom stubu. Pri tome treba voditi
racuna o sledecim pravilima:
a) dozvoljen je premestati samo po jedan disk,
b) prilikom premestanja nije dozvoljeno da disk sa vecim bude iznad diska sa manjim
precnikom.
Naciniti program koji odreduje redosled premestanja diskova.
//[anojski stuovi sa tri diska
#include %stdaf9Jh%//6 [anojske kule 5/
#include <iostream>
using namespace std;
void [anoj" int, int, int #;//stavljamo ih !og rekur!ivnog po!iva
int main"#
$
int a, n ' ?;
[anoj" n, 1, 2 #;//po!iv funkcije, argumenti su ma9 roj diskova na
stau
cin >>a;
return (;
-
void [anoj" int n, int i, int j #
$
if" n > ( # $
[anoj" n61, i, D6"i.j##;//rekur!ivni po!iv f6je, D je ma9
cout<<%Preaci sa %<<i<<% na %<<j<< % , %<<endl<<endl;
[anoj" n61, D6"i.j#, j #;//formula
-
-
60. Dani u sedmici
Naciniti program za utvrdivanje dana u sedmici koji odgovara zadatom datumu.
Program ispsuje koji je dan u sedmici ako mu unesemo dan, mjesec i godinu. U
programu je koriscena Ior petlja i switch case.
//Program i!acuje na!iv dana ako mu !adamo tacan datum
#include %stdaf9Jh%
#include<stdliJh>
#include<conioJh>
#include<iostream>
using namespace std;
int main"#
$
//Ispis naslova
cout<<%P;O<;/7 R/ &Q*;8CI*/ECS 8/E/ & SS87IOI LOCI O8<O*/;/ R/8/QO7
8/Q&7&%<<endl;
cout<<endl;
int d,m,g,godina,mjesec,dan,i,n;//deklaracija promjenljivih
cout<<%Loliko puta !elite pokrenuti program "unesite roj#3 %<<endl;
cin>>n;
for"i'1;i<'n;i..#//petlja,krece od roja 1 do !adanog roja
$
//&nos datuma
cout<<%&nesi datum3%<<endl<<endl;
cout<<%8an "16?1# 3 %<<endl;
cin>>d; //dan
cout<<%7jesec "1612# 3 %<<endl;
cin>>m; //mjesec
cout<<%<odina"1>((62(1(#3 %<<endl;
cin>>g;//godina
cout<<endl;
//Provjera unosa !a dan, mjesec, godinu
if" d>?1 )) m>12 )) "g<1>(( )) g>'2(1(# #//))6o!nacava logicko %i% i svi
moraju iti tacni
$
cout<<%PO<;SS/E &EOS%<<endl; // Ispis ako uslov nije !adovoljen
getch"#;
e9it"(#;//i!adji
-
godina ' g61>((;
godina ' godina/:;
godina ' godina.g61>((;
//godina ' ""g61>((#/:#."g61>((#
switch"m#
$
case 13 case 1(3
mjesec ' 1; reak;
case 23 case ?3 case 113
mjesec ' :; reak;
case A3 case :3
mjesec ' (; reak;
case @3
mjesec ' 2; reak;
case D3
mjesec ' @; reak;
case B3
mjesec ' ?; reak;
case >3 case 123
mjesec ' D; reak;
-
godina ' godina.mjesec;
godina ' godina.d;
// godina ' "godina.mjesec#.d
dan ' godinaGA; //sedmica ima A dana
//Ispis re!ultata
switch"dan#
$
case (3
cout<<"%8an je S&HOQ/ %#;reak;
case 13
cout<<"%8an je ES8CS\C/ %#;reak;
case 23
cout<<"%8an je POES8CS\C/L %#;reak;
case ?3
cout<<"%8an je &QO;/L %#;reak;
case :3
cout<<"%8an je S;ICS8/% #;reak;
case @3
cout<<"%8an je OSQ*;Q/L %#;reak;
case D3
cout<<"%8an je PSQ/L %#;reak;
-
-
//Lraj programa
cout<<endl<<endl;
s,stem "%Pause%#;
return (;
-
61. Sahovska tabIa
Izracunati ukupan broj zrna pšenice koje je Seta (navodni pronalazac saha) trazio od cara
kao nagradu, te ispisati koliko je trebalo "staviti" psenice na svako od 64
šahovska polja.
/*primjer sa postavljanjem zrna psenice na sahovsku tablu tako da na sakoj sledecoj bude
duplo vise zrna*/
// Pocetak programa i ukljucivanje ilioteka u program
#include %stdaf9Jh%
#include <iostream>
#define ma9 @(
using namespace std;
void init"int ni!MN#;//deklaracija ni!a
void ispisi"int ni!MN#;
int main"void#
$
int rMma9N;
init "r#;
rM(N'1;
cout << %1J polje3Tt% << rM(N << endl;
for "int n'1; n<'D:; n..#
$
int temp'(;
int i'(;
while "rMiN+'61#
$
rMiN'rMiN52.temp;//formula !a racunanje
temp'(;
if "rMiN>>#
$
if "rMi.1N''61#
rMi.1N'(;
temp'rMiN/1(;
rMiNG'1(;
-
i..;
-
if "n<D:#
$
cout << n.1 << %J polje3Tt%; ispisi"r#;//ispis rojeva
-
else
$
rM(N6'1;
cout << %Tn&L&PEO3TtTt%; ispisi"r#;//korisceno Tt !a prela!ak u drugi red
-
-
cout << endl << endl;
s,stem "%pause%#;
return SKIQPS&OOSSS;//uspjesno napusti funkciju
-
void init"int ni!MN#
$
for "int i'(; i<ma9; i..#//deklaracija promjenljivih u for petlji
ni!MiN'61;
-
void ispisi"int ni!MN#
$
int i'(;
while "ni!MiN+'61#
i..;
for "int j'i61; j>'(; j66#
cout << ni!MjN;
cout << endl;
-
62. Savrseni brojevi
Nacinite program koji omogucava nalazenje savršenih brojeva na intervalu zadatom
brojevima M i N. (Napomena: broj se naziva savrsenim ako je jednak zbiru svojih cinilaca,
ukljucujuci 1 ali ne ukljucujuci samoga sebe. Na primer, 6 je savrsen broj, jer je 6÷1¹2¹3.)
//Program racuna sve savrsene rojeve u !adanom intervalu
#include %stdaf9Jh%
#include<iostream>
using namespace std;
int main"#
$
int roj, d, s, p, k;//deklaracija promjenljivih
// &nos pocetnog i krajnjeg roja
cout<<%Savrsen roj je onaj roj koji je djeljiv %<<endl<<endl;
cout<<% sa samim soom i rojem jedan %<<endl<<endl<<endl;
cout<<%&nesite pocetni roj3 %<<endl<<endl;
cin>>p;//unos donje granice intervala
cout<<%&nesite krajnji roj3 %<<endl<<endl;
cin>>k; //unos gornje granice intervala
// I!racunavanje i ispis savrsenih rojeva
cout<<%Savrseni rojevi su3 %<<endl;
for " roj'p ; roj<k ; roj.. #//dupla for petlja
$
for " s'1, d'2 ; d<'roj/2 ; d.. #//delaracija pocetnih vrijednosti i
nacina racunanja
s .' "rojGd# V ( 3 d;
if "roj''s#
cout<<roj<<endl;
-
cout<<endl<<endl;
s,stem"%pause%#;
return (;
-
63. Zbir dva vektora
Naciniti program za nalazenje zbira dva vektora (‡¹ˆ‰). Sa ulaza se unose dimenzije 2
vektora (iste dimenzije), a zatim se izracuna treci vektor koji predstavlja zbir (prvi clan prvog
vektora plus prvi clan drugog vektora...) dva unesena vektora.
//Program koji saira dva vektora , tako da korisnik unese roj elemenata
vektora
#include %stdaf9Jh%
#include <iostream>
#include <vector>//ukljucivanje ilioteke !a vektore
using namespace std;
int main"#$
vector<int> a"1((#, "1((#, c;//definisanje promjenljivih
int roj;
cout << %&nesite roj elemenata vektora M161((N3 %;
cin >> roj;//unos dimen!ija vektora
cout << %&nesite elemente prvog vektora3 % << endl;
for"int i'(; i<roj; i..#//definisanje promjenljivih prvog vektora
$
cin >>aMiN;
-
cout << %&nesite elemente drugog vektora3 % << endl;
for"int i'(; i<roj; i..#//definisanje promjenljivih drugog vektora
cin >> MiN;
-
for"int i ' (; i < aJsi!e"#; i..# //deklarisanje treceg vektora
cJpushPack"aMiN . MiN#; //tako da se sairaju odgovarajuci elementi
vektora a i
cout << %T%RirT% vektora je vektor3 "%;
for"int i'(; i<roj; i..#
cout << cMiN << %, %;//ispis vektora c
cout << %#%;
cout<<endl;
s,stem "%Pause%#;
return (;
-
64. Napisati C program koji ce pronaci i ispisati na ekran sve
trocifrene brojeve kod kojih je suma cifri djeIjiva sa 7.
http3//furkaJcom/procitaj/A/:2(22/c6programiranje6!a6pocetnike
#include iostream
using namespace std;
main"#
$
int s,d,j; //stotine, desetice, jediniceJJJ
for "int i'1((; i1(((; i..# //petlja vrti sve ?6cifrene rojeve
$
int temp'i;
j'tempG1(; //i!dvajamo redom cifre roja tako Yto
temp/'1(; //prvo traWimo ostatak pri djeljenju
d'tempG1(; //sa 1(, a !atim roj i djelimo sa 1(
temp/'1(; //da se osloodimo !adnje cifre i
s'tempG1(; //omoguZimo traWenje nove
int sum's.d.j;
if "sumGA''(# //provjeravamo da li je suma djeljiva sa A
cout i endl; //ako jeste, ispisujemo roj
-
s,stem "%pause%#;
return (;
-
65. Napisati program koji ce pronaci i ispisati na ekran koIiko ima
peterocifrenih brojeva kod kojih je suma zadnje 4 cifre jednaka
prvoj cifri.
Oode3
#include iostream
using namespace std;
main"#
$
long int i;
int cfMDN,r'(;
for "i'1((((; i1(((((; i..# //petlja koja vrti sve @6cifrene rJ
$
long int temp'i;
for "int j'@; j(; j66# //petlja u kojoj i!dvajamo cifre roja
$
cfMjN'tempG1(; //u!imamo !adnju cifru roja i spremamo je u ni!
temp/'1(; //%odsjecamo% !adnju cifru da i mogli naZi sledeZu
-
int sum'cfM2N.cfM?N.cfM:N.cfM@N; //suma !adnje : cifre
if "cfM1N''sum# //ako je suma jednaka prvoj cifri
$ //ispisuje se taj roj
cout i endl; //a rojaU se uveZava !a 1
r..;
-
-
cout %r'% r endl; //ispis rojaUa
s,stem "%pause%#;
return (;
-
66. IzostvaIjanje suvisnog razmaka medju rijecima
#include %stdaf9Jh%
#include <iostream>
using namespace std;
int main "# $
int !nak; ool ima ' true;
while ""!nak ' cinJget "## +' SOF# // while "cinJget "!nak##
if "!nak +' 0 0 == !nak +' 0Tt0#
$ coutJput "!nak#; ima ' !nak '' 0Tn0; -
else if "+ ima# $ coutJput "0 0#; ima ' true; -
return (;
-

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->