You are on page 1of 75

/* pobrojani tip*/ #include <iostream> using namespace std; int main (){ enum dani{ponedeljak=1, utorak, srijeda, cetvrtak,

petak, subota, nedelja}; cout<<"srijeda je "<<srijeda<<". dan u tjednu"<<endl; system ("pause"); return 0; }

/*Izracunavanje povrsine i obima kruga*/ #include <iostream> #define Pi 3.141592653 using namespace std; int main(){ double r; cout<<"Unesite poluprecnik kruga u mm: "; cin>>r; cout<<"Obim kruga je "<<2*r*Pi<<" mm."<<endl; cout<<"Povrsina kruga je "<<r*r*Pi<<" mm^2."<<endl; system ("pause"); return 0; }

/* Napisati program koji sa dvije cjelobrojne vrijednosti daje cijelobrojne vrijednosti kad se saberu, oduzmu, pomnoze i podijele.*/ #include <iostream> using namespace std; int main (){ int a, b; cout<<"Unesite prvi broj: "; cin>>a; cout<<"Unesite drugi broj; "; cin>>b; cout<<"Zbir brojeva je "<<a+b<<endl; cout<<"Razlika brojeva je "<<a-b<<endl; cout<<"Proizvod brojeva je "<<a*b<<endl; cout<<"Kolicnik brojeva je "<<a/b<<" s ostatkom "<<a%b<<endl; system ("pause"); return 0; }

/* Napisati program koji ce od korisnika traziti da unese a, b, c stranice trokuta. Program mora utvrditi da li je uneseni objekt trokut, te ako jeste da li je taj trokut istostranican, raznostranican ili istokracni.*/ #include <iostream> using namespace std; int main (){ float a, b, c; cout<<"Unesite a stranicu trokuta (u cm): "; cin>>a; cout<<"Unesite b stranicu trokuta (u cm): "; cin>>b; cout<<"Unesite c stranicu trokuta (u cm): "; cin>>c; if (a+b<=c) cout<<"Ovo nije trokut."<<endl; else if ((a==b)&&(a==c)&&(b==c)) cout<<"Ovo je istostranicni trokut"<<endl; else if ((a!=b)&&(a!=c)&&(b!=c)) cout<<"Ovo je raznostranicni trokut."<<endl; else cout<<"Ovo je istokracni trokut."<<endl; system ("pause"); return 0; }

/*napisati program koji za date vrijednosti x,y,z racuna izraz te rezultat ispisuje na ekran*/ #include <iostream> #include <cmath> using namespace std; int main (){ float x,y,z,a; cout<<"Unesite x: "; cin>>x; cout<<"Unesite y: "; cin>>y; cout<<"Unesite z: "; cin>>z; a=(((x*x)+(y*2)-z)/(y*y))-(((y*y)+5)/5); cout<<"Rezultat je: "<<a<<endl; system ("pause"); return 0; }

/* Logicki tip*/ #include <iostream> using namespace std; int main (){ bool a=false; bool b=true; cout<<"a: "<<a<<" ; b: "<<b<<endl; cout<<"Negacija a je: "<<!a<<endl; cout<<"Negacija b je: "<<!b<<endl; cout<<"a i b je: "<<(a&&b)<<endl; cout<<"a ili b je: "<<(a||b)<<endl; system ("pause"); return 0; }

/* Napisati program koji trazi da se unesu faktori kvadratne jednacine a, b, c, i ispisuje kakva su rijesenja te kvadratne jednacine. */ #include <iostream> using namespace std; int main (){ int a,b,c,d; cout<<"Unesite faktor a: "; cin>>a; cout<<"Unesite faktor b: "; cin>>b; cout<<"Unesite faktor c: "; cin>>c; d=(b^2)-4*a*c; if (d==0) cout<<"Rjesenja su realna i jesnaka"<<endl; else if (d>0) cout<<"Rjesenja su realna i razlicita"<<endl; else cout<<"Rjesenja su imaginarna"<<endl; system ("pause"); return 0; }

/* Napisati program koji ce traziti da se unese broj od 1 do 7 i onda taj program treba da ispise koji je to dan u tjednu. */ #include <iostream> using namespace std; int main (){ int a; cout<<"Unesite broj od 1 do 7: "; cin>>a; switch (a){ case 1: cout<<"Ponedeljak"<<endl; break; case 2: cout<<"Utorak"<<endl; break; case 3: cout<<"Srijeda"<<endl; break; case 4: cout<<"Cetvrtak"<<endl; break; case 5: cout<<"Petak"<<endl; break; case 6: cout<<"Subota"<<endl; break; case 7: cout<<"Nedelja"<<endl; break; default: cout<<"Unijeli ste pogresan broj."<<endl; } system ("pause"); return 0; }

/* Napisati program koji ce od korisnika traziti da unese broj od 1 do 12 i onda ce ispisati koliko mjesec pod tim brojem ima dana*/ #include <iostream> using namespace std; int main (){ int a; cout<<"Unesi broj od 1 do 12: "; cin>>a; switch (a) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: cout<<"Mjesec ima 31 dan."<<endl; break; case 4: case 6: case 9: case 11: cout<<"Mjesec ima 30 dana."<<endl; break; case 2: cout<<"Mjesec ima 28 (29) dana."<<endl; break; default: cout<<"Unijeli ste pogresan broj"<<endl; } system ("pause"); return 0; }

/* Napisati program koji ce od korisnika traziti da unese broj od 1 do 12 i onda ce tom broju pridruziti odgovarajuci mjesec u godini*/ #include <iostream> using namespace std; int main (){ int a; cout<<"Unesi broj od 1 do 12: "; cin>>a; switch (a) { case 1: cout<<"Januar"<<endl; break; case 2: cout<<"Februar"<<endl; break; case 3: cout<<"Mart"<<endl; break; case 4: cout<<"April"<<endl; break; case 5: cout<<"Maj"<<endl; break; case 6: cout<<"Jun"<<endl; break; case 7: cout<<"Jul"<<endl; break; case 8: cout<<"August"<<endl; break; case 9: cout<<"Septembar"<<endl; break; case 10: cout<<"Oktobar"<<endl; break; case 11: cout<<"Novembar"<<endl; break; case 12: cout<<"Decembar"<<endl; break; default: cout<<"Unijeli ste pogresan broj"<<endl; } system ("pause"); return 0; }

/* Napisati program za izracun faktorijela*/ #include <iostream> using namespace std; int main (){ int n, i; cout<<"Unesi broj: "; cin>>n; long f=1; for (i=1; i<=n; i++) f*=i; cout<<"Rezultat je : "<<f<<endl; system ("pause"); return 0; }

/* Napisati program koji ce moje ime ispisati 10 puta. */ #include <iostream> using namespace std; int main (){ int i; for (i=0; i<10; i++) cout<<"Boban"<<endl; system ("pause"); return 0; }

/* Napisati program koji ce ispisati sumu svih brojeva nekog intervala koji su djeljivi s 3 i s 7*/ #include <iostream> using namespace std; int main (){ int x,y,i, suma=0; cout<<"Unesite donju granicu intervala: "; cin>>x; cout<<"Unesite gornju granicu intervala: "; cin>>y; for (i=x; i<y; i++){ if ((i%3==0)||(i%7==0)) suma=suma+i; } cout<<"Suma brojeva je: "<<suma<<endl; system ("pause"); return 0; }

/*napisati program koji ce provjeriti da li je uneseni broj djeljiv s sumom njegovih cifara*/ #include <iostream> using namespace std; int main(){ int a, i, suma=0; cout<<"Unesite broj: "; cin>>a; for (i=a; i>0; i=i/10) suma = suma + i%10; if (a%suma==0) cout<<"Broj je djeljiv s sumom svojih cifara, jer je suma broja "<<a<< " podjeljena s sumom njegovih cifara "<<suma<<" jednaka "<<a/suma<< " bez ostatka"<<endl; else cout<<"Broj nije djeljiv s sumom svojih cifara"<<endl; system ("pause"); return 0; }

/* napisati program koji trazi najveci trocifren broj kod kojeg je suma kubova njegovih cifara jednaka tom broju*/ #include <iostream> using namespace std; int main (){ int s, d, j, i, a=0; for (i=100; i <=999; i++){ j=i%10; d =(i/10)%10; s =i/100; if ((s*s*s)+(d*d*d)+(j*j*j)==i){ if (i>=a){ a=i;} }} cout<<"Najveci broj je: "<<a<<endl; cout<<endl; system ("pause"); return 0; }

/* Napisati program koji racuna sumu neparnih brojeva u datom intervalu*/ #include <iostream> using namespace std; int main (){ int n, m, suma=0, i; cout<<"Unesite donju granicu intervala: "; cin>>n; cout<<"Unesite gornju granicu intervala: "; cin>>m; for (i=n; i<=m; i++) if(i%2==1){ suma=suma+i; } cout<<"Suma svih neparnih brojeva zadanog intervala je "<<suma<<endl; system ("pause"); return 0; }

/* Napisati program koji racuna sumu parnih brojeva u datom intervalu*/ #include <iostream> using namespace std; int main (){ int n,m,i,suma=0; cout<<"Unesite donju granicu niza: "; cin>>n; cout<<"Unesite gornju granicu niza: "; cin>>m; for (i=n; i<=m; i++) if (i%2==0){ suma=suma+i;} cout<<"Suma parnih brojeva zadanog niza je "<<suma<<endl; system ("pause"); return 0; }

/*napisati program koji ispisuje sve brojeve od 100 do999, koji imaju svojstvo da je suma cifara stotica i jedinica jednaka cifri desetica*/ #include <iostream> using namespace std; int main (){ int s, d, j, i; for (i=100; i <=999; i++){ j=i%10; d =(i/10)%10; s =i/100; if (s+j==d){ cout<<i<<" "; } } cout<<endl; system ("pause"); return 0; }

/*napisati program koji ce provjeriti da li je uneseni broj djeljiv s sumom njegovih cifara*/ #include <iostream> using namespace std; int main(){ int a, temp, suma=0; cout<<"Unesite broj: "; cin>>a; temp=a; while (a>0){ suma = suma + a%10; a=a/10; } if (temp%suma==0) cout<<"Broj je djeljiv s sumom svojih cifara, jer je suma broja "<<temp<< " podjeljena s sumom njegovih cifara "<<suma<<" jednaka "<<temp/suma<< " bez ostatka"<<endl; else cout<<"Broj nije djeljiv s sumom svojih cifara"<<endl; system ("pause"); return 0; }

/*napisati program koji za zadani interval [m,n] izlistava sve brojeve u tom intervalu koji su djeljivi sa sumom svojih cifara*/ #include<iostream> using namespace std; int main() {int a, b, temp, i, suma; cout<<"Unesite donju granicu intervala: "; cin>>a; cout<<"Unesite gornju granicu intervala: "; cin>>b; for(i=a; i<=b; i++){ suma=0; temp=i; while(temp!=0){ suma = suma + (temp%10); temp=temp/10;} if(i%suma==0) cout <<i<<" ";} cout<<endl; system ("pause"); return 0; }

/* Napisati program koji ucitava prirodne brojeve sve dok se ne ucita nula i ispisuje najveci ucitan broj*/ #include <iostream> using namespace std; int main (){ int broj, a=0; while (broj !=0){ cout<<"Unesi broj: "; cin>>broj; if (broj>=a){ a=broj;} } cout<<"Najveci broj je: "<<a<<endl; system ("pause"); return 0; }

/*napisati program koji ce traziti da se unese neki broj, ispisati obrnut taj broj i sabrati ga s unesenim brojem*/ #include <iostream> using namespace std; int main(){ int broj, temp, obrnuti=0; cout<<"Unesite broj: "; cin>>broj; temp=broj; while (broj>0){ obrnuti= obrnuti*10 +(broj%10); broj=broj/10; } cout<<"Obrnuti broj je: "<<obrnuti<<endl; cout<<"Zbir brojeva je: "<<temp+obrnuti<<endl; system ("pause"); return 0; }

/* napisati program koji od korisnika trazi da unese ime i onda to ime ispise obrnuto. */ #include <iostream> #include <cstring> using namespace std; int main(){ string ime; cout<<"unesi ime: "; cin >> ime; cout <<"obrnuto ime je: "<<endl; for (int i=0; i<10; i++){ cout<<ime<<endl; int duzina = ime.length(); while (duzina >= 0) { cout << ime[duzina]; duzina = duzina -1;} cout<<endl;} system ("pause"); return 0; }

/*napisati program koji ce otkriti da li je upisani broj pravi parni broj, tj. da li su mu sve cifre parne*/ #include <iostream> using namespace std; int main (){ int n, ostatak; cout<<"Unesite broj: "; cin>>n; bool pravi=true; while (n!=0){ ostatak=n%10; n=n/10; if (ostatak%2!=0){ pravi=false; } } if (pravi==true) cout<<"Ovo je pravi parni broj."<<endl; else cout<<"Ovo nije pravi parni broj."<<endl; system ("pause"); return 0; }

/* napisati program koji sabira unesene vrijednosti sa tastature sve dok ne unesemo vrijednost -1 nakon cega ispisuje izracunatu sumu*/ #include <iostream> using namespace std; int main (){ int a, i, suma=0; while (a!=-1){ cout<<"Unesi broj: "; cin>>a; suma=suma+a;} cout<<"Suma brojeva je "<<suma<<endl; system ("pause"); return 0; }

/* napisati program koji od korisnika trazi da upise svoje ime i onda da ga program ispise 10 puta. */ #include <iostream> using namespace std; int main (){ char ime[80]; cout << "Upisite ime: "; cin >> ime; cout << "Tvoje ime 10x :-) "<<endl; for(int i=0; i<10; i++){ cout<<ime<<endl;} system ("pause"); return 0; }

/* napisati program koji ce od 10 cjelobrojnih vrijednosti naci onaj element koji je najblizi aritmetickoj sredini. */ #include <iostream> #include <cmath> using namespace std; int main (){ int niz[10]; int i, suma=0, broj=0; float ars; for (i=0; i<10; i++){ cout<<i<<". clan niza x["<<i<<"] = "; cin>>niz[i]; suma = suma + niz[i];} ars=(float)suma/10; for(i=0; i<10; i++){ if (abs(niz[i]-ars)<abs(niz[broj]-ars)) broj=i;} cout<<"Aritmeticka sredina je: "<<ars<<endl; cout<<"Najblizi aritmetickoj sredini je: "<<niz[broj]<<endl; system ("pause"); return 0; }

/* Zadane su duzine dva niza. Napuniti nizove i formirati treci niz koji sadrzi sve elemente prva dva niza*/ #include <iostream> using namespace std; int main (){ int a[2], b[2], c[4]; int i; for (i=0; i<2; i++){ cout<<i+1<<". clan prvog niza = "; cin>>a[i];} for (i=0; i<2; i++){ cout<<i+1<<". clan drugog niza = "; cin>>b[i];} cout<<"prvi niz je: "; for(i=0; i<2; i++){ cout<<a[i]<<" ";} cout<<endl; cout<<"drugi niz je: "; for(i=0; i<2; i++){ cout<<b[i]<<" ";} cout<<endl; for(i=0;i<2;i++) c[i]=a[i]; for(i=2;i<4;i++) c[i]=b[i-2]; cout<<"treci niz je: "; for(i=0; i<4; i++){ cout<<c[i]<<" ";} system ("pause"); return 0; }

/* Napisati program koji ce u vec sortiran niz ubaciti element koji korisnik unese s tastature na svoje pravo mjesto, te ispisati novonastali niz na monitor. Zadani niz je a={2,6,10,23,27,30} */ #include <iostream> using namespace std; int main (){ int a[6]={2,6,10,23,27,30}, b[1], niz[7]; int i,j,temp; cout<<"Zadani niz je: "; for(i=0; i<6; i++){ cout<<a[i]<<" ";} cout<<endl<<endl; for (i=0; i<1; i++){ cout<<"Unesite broj koji se ne nalazi u prvom nizu: "; cin>>b[i];} for(i=0;i<6;i++){//formiranje treceg niza niz[i]=a[i];} for(i=6;i<7;i++){ niz[i]=b[i-6];}

for (i=0;i<7;i++){//sortiranje treceg niza for (j=i;j<7;j++){ if(niz[i]>niz[j]){ temp=niz[i]; niz[i]=niz[j]; niz[j]=temp;} } } cout<<"Novi sortirani niz je: "; for(i=0; i<7; i++){ cout<<niz[i]<<" ";} cout<<endl; system ("pause"); return 0; }

/*Napisati program koji od korisnika trazi da unese 3x3 matricu. Program treba da zamjeni mjesta najmanjem i najvecem broju*/ #include <iostream> using namespace std; int main(){ int niz[3][3]; int i, j, min, max, b=0, c=0, d=0, e=0; cout<<"Unesite matricu: "; for(int i=0;i<3 ;i++) for(int j=0;j<3 ;j++) cin>>niz[i][j]; min=niz[0][0]; max=niz[0][0]; for (i=0; i<3; i++) for (j=0; j<3; j++){ if(niz[i][j]>max) max = niz[i][j]; b=i; c=j; if (niz[i][j]<min) min=niz[i][j]; d=1; e=j;} int temp=b; b=c; c=temp; temp=d; d=e; e=temp; for(i=0;i<3 ;i++){ for(j=0;j<3 ;j++){ cout<<niz[i][j]<<" ";} cout<<endl;} system ("pause"); return 0; }

/*Napisati program koji od korisnika trazi da unese 3x3 niz. Program treba da ispise najmanji i najveci broj*/ #include <iostream> using namespace std; int main(){ int niz[3][3]; int i, j, min=0, max=0; cout<<"Unesite niz: "; for (i=0; i<3; i++) for (j=0; j<3; j++){ cin>>niz[i][j];} min=niz[0][0]; max=niz[0][0]; for (i=0; i<3; i++) for (j=0; j<3; j++){ if(niz[i][j]>max) max = niz[i][j]; if (niz[i][j]<min) min=niz[i][j];} cout<<"Najveci clan je: "<<max<<endl; cout<<"Najmanji clan je: "<<min<<endl; system ("pause"); return 0; }

/*Unjeti niz 3x3. Program treba da ispise one elemente niza koji su najveci u svakom redu i u svakoj koloni*/ #include <iostream> using namespace std; int main(){ int niz[3][3], red[3], kolona[3]; int i, j, k, maxr, maxk; cout<<"Unesite niz: "; for (i=0; i<3; i++) for (j=0; j<3; j++){ cin>>niz[i][j];} cout<<endl; cout<<"Najveci brojevi po redovima su: "; for (i=0; i<3; i++){ maxr=0; for (j=0; j<3; j++){ if (niz[i][j] > maxr){ maxr = niz[i][j];} red[i] = maxr;} cout<<red[i]<<" ";} cout<<endl; cout<<"Najveci brojevi po kolonama su: "; for (j=0; j<3; j++){ maxk=0; for (i=0; i<3; i++){ if (niz[i][j] > maxk){ maxk = niz[i][j];} kolona[j] = maxk;} cout<<kolona[j]<<" ";} cout<<endl<<endl; system ("pause"); return 0; }

/* matrica 3x3. Naci najveci element matrice i razliku sume kolone i reda kojem taj broj pripada*/ #include<iostream> using namespace std; int main (){ int niz[3][3]; int i, j, red=0, kolona=0, sumar=0, sumak=0; cout<<"Unesite matricu: "<<endl; for (i=0; i<3; i++) for (j=0; j<3; j++){ cin>>niz[i][j];} cout<<endl; for (i=0; i<3; i++) for (j=0; j<3; j++){ if (niz[i][j]>niz[red][kolona]){ red=i; kolona=j;} } for (j=0; j<3; j++){ sumar=sumar+niz[red][j];} for (i=0; i<3; i++){ sumak=sumak+niz[i][kolona];} cout<<"Najveci broj je "<<niz[red][kolona]<<", koji se nalazi u "<<red+1<<". redu i "<<kolona+1<<". koloni. "<<endl; cout<<"Suma tog reda je "<<sumar<<", a suma te kolone je "<<sumak<<"."<<endl; cout<<"Razlika sume kolone i sume reda je "<<sumaksumar<<"."<<endl<<endl; system ("pause"); return 0; }

/*Napisati program koji od korisnika trazi da unese 3x3 matricu. Program treba da zamjeni mjesta najmanjem i najvecem broju*/ #include <iostream> using namespace std; int main(){ int niz[3][3]; int i, j, min, max, b=0, c=0, d=0, e=0; cout<<"Unesite matricu: "; for(i=0;i<3 ;i++) for(j=0;j<3 ;j++) cin>>niz[i][j]; cout<<endl; for(i=0;i<3 ;i++){ for(j=0;j<3 ;j++){ cout<<niz[i][j]<<" ";} cout<<endl;} cout<<endl; min=niz[0][0]; max=niz[0][0]; for (i=0; i<3; i++) for (j=0; j<3; j++){ if(niz[i][j]>max){ max = niz[i][j]; b=i; c=j;} if (niz[i][j]<min){ min=niz[i][j]; d=i; e=j;}} cout<<"najmanji "<<niz[d][e]<<" najveci "<<niz[b][c]<<endl<<endl; int temp=niz[b][c]; niz[b][c]=niz[d][e]; niz[d][e]=temp; for(i=0;i<3 ;i++){ for(j=0;j<3 ;j++){ cout<<niz[i][j]<<" ";} cout<<endl;} cout<<endl; system ("pause"); return 0; }

/*program ispisuje obrnutu 3x3 matricu*/ #include <iostream> using namespace std; int main (){ int matrica[3][3]; int i, j; cout<<"unesite matricu"<<endl; for (i=0; i<3; i++) for(j=0; j<3; j++){ cin>>matrica[i][j];} cout<<"matrica izgleda"<<endl; for (i=0; i<3;i++){ for (j=0; j<3;j++){ cout<<matrica[i][j]<<" ";} cout<<endl;} cout<<endl; cout<<"obrnuta matrica je"<<endl; for (i=2; i>=0;i--){ for (j=2; j>=0;j--){ cout<<matrica[i][j]<<" ";} cout<<endl;} cout<<endl; cout<<endl; system ("pause"); return 0; }

/* mnozenje dvije 3x3 matrice by Boris Vincar*/ #include<iostream> using namespace std; int main(){ int matA[3][3],matB[3][3], matC[3][3], sum, i, j, k; /*zadavanje velicina matrica, te zadavanje varijabli*/

cout<<"\nOvaj program sluzi za mnozenje dvije 2x2 matrice."<<endl; cout<<"\nUnesite matricu A: "<<"\n"<<endl; for(int i=0;i<3 ;i++) for(int j=0;j<3 ;j++) cin>>matA[i][j];

cout<<"\nUnesena matrica je oblika:"<<"\n"<<endl; for(int i=0;i<3 ;i++) { for(int j=0;j<3 ;j++) { cout<<matA[i][j]<<" "; } cout<<endl; }

cout<<"\nUnesite matricu B: "<<"\n"<<endl; for(int i=0;i<3 ;i++) for(int j=0;j<3 ;j++) cin>>matB[i][j]; /*punjenje druge matrice*/

cout<<"\nUnesena matrica je oblika:"<<"\n"<<endl; for(int i=0;i<3 ;i++) { for(int j=0;j<3 ;j++) { cout<<matB[i][j]<<" "; }

cout<<endl; } /*ispis druge matrice tako da ce prvo ispisati retke pa onda stupce.*/

for (int i=0; i<3; i++) for (int j=0; j<3; j++){ sum=0; for (int k=0; k<3; k++) sum+=matA[i][k]*matB[k][j]; matC[i][j]=sum;}

cout<<"\nMnozenjem A i B matrica dobijamo matricu C:"<<"\n"<<endl; for(int i=0;i<3 ;i++) { for(int j=0;j<3 ;j++) { cout<<matC[i][j]<<" "; } cout<<endl; } /*ispis trece matrice tako da ce prvo ispisati retke pa onda stupce*/

cout<<""<<endl; system("Pause"); return 0; }

/*pokazivaci*/ #include <iostream> using namespace std; int main (){ int broj, *pok_broj; broj=55; pok_broj=&broj; cout<<"ispis broj: "<<broj<<endl; //55 cout<<"ispis *pok_broj: "<<*pok_broj<<endl; //55 cout<<"ispis &broj: "<<&broj<<endl; //adresa cout<<"ispis pok_broj: "<<pok_broj<<endl; //adresa cout<<"ispis *(&broj): "<<*(&broj)<<endl; //55 system ("pause"); return 1; }

/*pokazivac na pokazivac*/ #include <iostream> using namespace std; int main (){ float **dvaDpolje; int i, j, stupac, redak; cout<<"Broj redaka: "; cin>>redak; dvaDpolje= new float*[redak]; for (i=0; i<redak; i++){ cout<<"Broj clanova u "<<i+1<<" retku: "; cin>>stupac; dvaDpolje[i]=new float[stupac+1]; dvaDpolje[i][0]=stupac; for (j=1; j<=stupac; j++) dvaDpolje[i][j]=i+1+j/100;} cout<<"Ispis clanova polja: "<<endl; for (i=0; i<redak; i++) for (j=1; j<=dvaDpolje[i][0]; j++) cout<<"["<<i<<"]["<<j<<"] = "<<dvaDpolje[i][j]<<endl; for (i=0; i<redak; i++) delete[]dvaDpolje[i]; delete[]dvaDpolje; system ("pause"); return 0; }

/* pokazivaci. pravljenje dinamickog niza */ #include <iostream> using namespace std; int main (){ int n, i; int *niz=new int [n]; cout<<"Unesite koliko elemenata ima niz: "; cin>>n; for (i=0; i<n; i++){ cout<<"Unesite "<<i+1<<" clan niza: "; cin>>niz[i];} cout<<"\nNiz je: "; for (i=0; i<n; i++){ cout<<niz[i]<<" ";} cout<<endl; delete []niz; system ("pause"); return 0; }

/*napisati program koji unosi proizvoljan broj cjelobrojnih elemenata (broj elemenata unosi korisnik programa). Program mora da ispise najmani clan, najveci clan i aritmeticku sredinu.*/ #include <iostream> using namespace std; int main (){ int i, n, min, max, suma =0; float ars; cout<<"Koliko zelite brojeva unijeti: "; cin>>n; int *niz=new int[n]; for(i=0; i<n; i++){ cout<<"Unesite "<<i+1<<". broj: "; cin>>niz[i]; suma = suma+niz[i];} max=niz[0]; min=niz[0]; for(i=0; i<n; i++){ if(niz[i]>max) max=niz[i]; if (niz[i]<min) min=niz[i];} ars=(float)suma/n; cout<<"Najmanji clan unesenih elemenata je "<<min<<endl; cout<<"Najveci clan je "<<max<<endl; cout<<"Aritmeticka sredina je "<<ars<<endl; delete []niz; system ("pause"); return 0; }

/*napisati program koji unosi proizvoljan broj cjelobrojnih elemenata. program trena da napravi niz koji ce smjestiti samo parne brojeve. naci sumu prvog i drugog niza te razliku suma i pokazati na monitoru.*/ #include <iostream> using namespace std; int main (){ int i, j=0, x, b=0, suma1=0, suma2=0; cout<<"Koliko zelite brojeva unijeti: "; cin>>x; int *niz1=new int[x]; for (i=0; i<x; i++){ cout<<"Unesite "<<i+1<<". broj: "; cin>>niz1[i]; suma1=suma1+niz1[i];} for (i=0; i<x; i++){ if(niz1[i]%2==0){ b=b+1; suma2=suma2+niz1[i];}} int *niz2= new int [b]; for (i=0; i<x; i++){ if(niz1[i]%2==0){ niz2[j]=niz1[i]; j=j+1;}} cout<<"Uneseni brojevi su: "; for (i=0; i<x; i++){ cout<<niz1[i]<<" ";} cout<<endl; delete []niz1; cout<<"Parni brojevi su: "; for (i=0; i<b; i++){ cout<<niz2[i]<<" ";} cout<<endl; delete []niz2; cout<<"Suma unesenih brojeva je: "<<suma1<<endl; cout<<"Suma parnh brojeva je: "<<suma2<<endl; cout<<"Razlika sume unesenih i sume parnih brojeva je: "<<suma1suma2<<endl;

system("pause"); return 0; }

/*napisati program koji od korisnika trazi da se unese cjelobrojni niz. program treba da prikaze izvjestaj za svakio elementniza koliko se puta on ponavlja u nizu*/ #include <iostream> using namespace std; int main(){ int broj, i, j, b; cout<<"koliko elemenata ima niz "; cin>>broj; int *niz= new int[broj]; for (i=0; i<broj; i++){ cout<<"unesite "<<i+1<<" element niza: "; cin>>niz[i];} cout<<endl; for (i=0; i<broj; i++){ b=0; for(j=0; j<broj; j++){ if(niz[i]==niz[j]) b++;} cout<<"broj "<<niz[i]<<" se ponavlja "<<b<<" puta"<<endl;} cout<<endl; system ("pause"); return 0; }

/* napisati program koji trazi da se unese proizvoljno dug niz, te da see unesu clanovi tog niza. Program treba da ispise one clanove niza kod kojih je njihov kvadrat jednak slijedecem clanu niza. */ #include <iostream> using namespace std; int main (){ int i, n; cout<<"Koliko niz ima clanova: "; cin>>n; int *niz= new int [n]; for (i=0; i<n; i++){ cout<<"Unesite "<<i+1<<" clan niza "; cin>>niz[i];} for (i=0; i<n; i++){ if (niz[i]*niz[i]==niz[i+1]) cout<<niz[i]<<" ";} cout<<endl; delete []niz; system ("pause"); return 0; }

/*napisati program koji unosi proizvoljan broj cjelobrojnih elemenata. program trena da napravi niz koji ce smjestiti samo parne brojeve. naci sumu prvog i drugog niza te razliku suma i pokazati na monitoru.*/ #include <iostream> using namespace std; int main (){ int i, x, y=0, parni, suma1=0, suma2=0;

cout<<"Koliko zelite brojeva unijeti: "; cin>>x; int *niz1 = new int [x]; for (i=0; i<x; i++){ cout<<"Unesite "<<i+1<<". broj: "; cin>>niz1[i]; suma1=suma1+niz1[i];} for (i=0; i<x; i++){ if(niz1[i]%2==0){ y=y+1;}} int *niz2 = new int [y]; for (i=0; i<x; i++){ if(niz1[i]%2==0){ suma2=suma2+niz1[i]; niz2[i]=niz1[i];}} cout<<"Suma unesenih brojeva je: "<<suma1<<endl; cout<<"Suma parnh brojeva je: "<<suma2<<endl; delete []niz2; delete []niz1; system("pause"); return 0; }

/*napisati program koji unosi proizvoljan broj cjelobrojnih elemenata. program trena da napravi niz koji ce smjestiti samo parne brojeve. naci sumu prvog i drugog niza te razliku suma i pokazati na monitoru.*/ #include <iostream> using namespace std; int main (){ int i, j=0, x, b=0, suma1=0, suma2=0; cout<<"Koliko zelite brojeva unijeti: "; cin>>x; int *niz1=new int[x]; for (i=0; i<x; i++){ cout<<"Unesite "<<i+1<<". broj: "; cin>>niz1[i]; suma1=suma1+niz1[i];} for (i=0; i<x; i++){ if(niz1[i]%2==0){ b=b+1; suma2=suma2+niz1[i];}} cout<<"Uneseni brojevi su: "; for (i=0; i<x; i++){ cout<<niz1[i]<<" ";} cout<<endl; int niz2[b]; for (i=0; i<x; i++){ if(niz1[i]%2!=1){ niz2[j]=niz1[i]; j=j+1;}} delete []niz1; cout<<"Parni brojevi su: "; for (i=0; i<b; i++){ cout<<niz2[i]<<" ";} cout<<endl; cout<<"Suma unesenih brojeva je: "<<suma1<<endl; cout<<"Suma parnh brojeva je: "<<suma2<<endl; cout<<"Razlika sume unesenih i sume parnih brojeva je: "<<suma1suma2<<endl; system("pause"); return 0; }

/*napisati program koji unosi proizvoljan broj cjelobrojnih elemenata. program trena da napravi niz koji ce smjestiti samo parne brojeve. naci sumu prvog i drugog niza te razliku suma i pokazati na monitoru.*/ #include <iostream> using namespace std; int main (){ int i, j=0, n, parni, b=0, suma1=0, suma2=0; cout<<"Koliko zelite brojeva unijeti: "; cin>>n; int *niz1 = new int [n]; for (i=0; i<n; i++){ cout<<"Unesite "<<i+1<<". broj: "; cin>>niz1[i]; suma1=suma1+niz1[i];} cout<<"Uneseni brojevi su: "; for (i=0; i<n; i++){ cout<<niz1[i]<<" ";} cout<<endl; for (i=0; i<n; i++){ if(niz1[i]%2==0){ b=b+1; suma2=suma2+niz1[i];}} int niz2[b]; for (i=0; i<n; i++){ if(niz1[i]%2==0){ niz2[j]=niz1[i]; j=j+1;}} cout<<"Parni brojevi su: "; for (i=0; i<b; i++){ cout<<niz2[i]<<" ";} cout<<endl; cout<<"Suma unesenih brojeva je: "<<suma1<<endl; cout<<"Suma parnh brojeva je: "<<suma2<<endl; delete []niz1; delete []niz2;

system("pause"); return 0; }

/*frekfencija brojeva u nizu*/ #include <iostream> using namespace std; int main(){ int i, n, b, j; cout<<"koliko ce niz imati clanova "; cin>>n; int *niz=new int [n]; for (i=0; i<n; i++){ cout<<"Unesite "<<i+1<<". clan niza "; cin>>niz[i];} cout<<endl; for(i=0; i<n; i++){ b=0; for (j=0; j<n; j++){ if (niz[i]==niz[j]) b++;} cout<<"broj "<<niz[i]<<" se ponovio "<<b<<" puta"<<endl;} cout<<endl; system ("pause"); return 0; }

/* Napisati program koji od korisnika trazi da unese tri proizvoljno duga cjelobrojna niza. Program treba da ispise na monitoru onaj niz koji ima najvecu aritmeticku sredinu. */ #include <iostream> using namespace std; void unos(int *niz,int duzina){ for (int i =0; i<duzina; i++){ cout<<"Unesi "<<i+1<<" clan niza: "; cin>>niz[i];}} int sumaN(int *niz,int duzina){ int suma=0; for(int i=0; i<duzina; i++){ suma = suma + niz[i]; return suma;}} float ars(int *niz,int duzina){ return (float)sumaN(niz, duzina)/(float)duzina;} void ispis(int *niz,int duzina){ for (int i =0; i<duzina; i++){ cout<<niz[i]<<", ";}} int main (){ int i, x, y, z; float ars1, ars2, ars3; cout<<"Koliko prvi niz ima clanova: "; cin>>x; cout<<"Koliko drugi niz ima clanova: "; cin>>y; cout<<"Koliko treci niz ima clanova: "; cin>>z; int *niz1 = new int [x]; int *niz2 = new int [y]; int *niz3 = new int [z]; cout<<"\nUnosenje prvog niza."<<endl; unos(niz1,x); cout<<"\nUnosenje drugog niza."<<endl; unos(niz2,y); cout<<"\nUnosenje treceg niza."<<endl; unos(niz3,z);

ars1 = ars(niz1,x); ars2 = ars(niz2,y); ars3 = ars(niz3,z); cout<<"\nNiz koji ima clanove: "; if (ars1>ars2 && ars1>ars3) ispis (niz1,x); else if (ars2>ars3) ispis (niz2,y); else ispis (niz3,z); cout<<"ima najvecu aritmeticku sredinu:"<<endl; delete []niz1; delete []niz2; delete []niz3; system ("pause"); return 1; }

/* implementirati funkciju void zamjeniMinMax(int *niz, int duzina) koja ce zamijeniti vrijednosti elemenata na prvoj i zadnjoj poziciji u proslijedjenom nizu.*/ #include <iostream> using namespace std; void zamjeniMinMax(int *niz, int duzina){ int i, min =0, max=0; for (i=0; i<duzina; i++){ if (niz[i]>niz[max]) max=i; if (niz[i]<niz[min]) min=i;} for (i=0; i<min; i++){ cout<<niz[i]<<" ";} cout<<niz[max]<<" "; for (i=min+1; i<max; i++){ cout<<niz[i]<<" ";} cout<<niz[min]<<" "; for (i=max+1; i<duzina; i++){ cout<<niz[i]<<" ";} }

int main (){ int n, i; int *niz=new int [n]; cout<<"Unesite koliko elemenata ima niz: "; cin>>n; for (i=0; i<n; i++){ cout<<"Unesite "<<i+1<<" clan niza: "; cin>>niz[i];} cout<<"\nispis niza: "; zamjeniMinMax (niz, n); delete []niz; system ("pause"); return 0; }

/* implementirati funkciju void spoji(int *niz1, int *niz2, int duz1, int duz2) koja ce elemente nizova niz1 i niz2 spojiti u treci niz, zatim obrnuti pozicije elemenata novog niza i ispisati ga na ekran. */ #include <iostream> using namespace std; void spoji(int *niz1, int *niz2, int duz1, int duz2){ int i; int duz=duz1+duz2; int *niz= new int [duz]; for(i=0;i<duz1;i++){ niz[i]=niz1[i];} for(i=duz1;i<duz;i++){ niz[i]=niz2[i-duz1];} for(i=duz-1; i>=0; i--){ cout<<niz[i]<<" ";} delete []niz; } int main (){ int n, m, i; cout<<"Unesite koliko elemenata ima prvi niz: "; cin>>n; int *niz1=new int [n]; for (i=0; i<n; i++){ cout<<"Unesite "<<i+1<<" clan niza: "; cin>>niz1[i];} cout<<"Unesite koliko elemenata ima drugi niz: "; cin>>m; int *niz2=new int [m]; for (i=0; i<m; i++){ cout<<"Unesite "<<i+1<<" clan niza: "; cin>>niz2[i];} cout<<"\nispis novog niza: "; spoji(niz1, niz2, n, m); cout<<endl; delete []niz1; delete []niz2; system ("pause"); return 0; }

/*Data je matrica a[3][3]. Napisati program koji pravi matricu inverznu matricu A te je ispisuje na ekran. U programu koristiti funkcije.*/ #include<iostream> using namespace std; void unos (int mat[3][3]); void ispis (float mat[3][3]); int main(){ int A[3][3]; cout<<"Unos matrice "<<endl<<endl; unos(A); int trans[3][3]; int predznak=-1; for(int i=0; i<3;i++) for(int j=0;j<3;j++){ trans[i][j]=A[j][i];} int adj[3][3]; for(int i=0; i<3;i++){ for(int j=0;j<3;j++){ int sub[4]; int b=0; predznak*=-1; for(int k=0;k<3;k++) for(int m=0;m<3;m++){ if(k!=i && m!=j){ sub[b]=trans[k][m]; b++;}} adj[i][j]=((sub[0]*sub[3])-(sub[1]*sub[2]))*predznak;}} int detA=(A[0][0]*A[1][1]*A[2][2]+A[0][1]*A[1][2]*A[2][0]+A[0][2]*A[1][0] *A[2][1])(A[2][0]*A[1][1]*A[0][2]+A[2][1]*A[1][2]*A[0][0]+A[2][2]*A[1][0] *A[0][1]); float inv[3][3]; for(int i=0;i<3; i++) for(int j=0;j<3;j++) inv[i][j]=(float)adj[i][j]/(float)detA;

cout<<"\nInverzna matrica je: "<<endl; ispis (inv); cout<<endl; system("PAUSE"); return 0; } void unos(int mat[3][3]){ for(int i=0;i<3;i++){ for(int j=0;j<3;j++){ cout<<"Unesite "<<i+1<<j+1<<" clan matrice: "; cin>>mat[i][j];}}} void ispis (float mat[3][3]){ for(int i=0;i<3;i++){ cout<<" "; for(int j=0;j<3;j++) cout<<mat[i][j]<<" "; cout<<endl;}}

/* implementirati funkciju void zamjeni(int *niz, int duzina) koja ce zamijeniti vrijednosti elemenata na prvoj i zadnjoj poziciji u proslijedjenom nizu.*/ #include <iostream> using namespace std; void zamijeni(int *niz, int duz){ int temp=niz[0]; niz[0]=niz[duz-1]; niz[duz-1]=temp; for (int i=0; i<duz; i++){ cout<<niz[i]<<" ";}}

int main (){ int n, i; cout<<"Unesite koliko elemenata ima niz: "; cin>>n; int *niz=new int [n]; for (i=0; i<n; i++){ cout<<"Unesite "<<i+1<<" clan niza: "; cin>>niz[i];}

cout<<"\nispis niza: "; zamijeni(niz, n); cout<<endl; delete []niz; system ("pause"); return 0; }

/* implementirati funkciju void spoji(int *niz1, int *niz2, int a, int b) koja ce elemente nizova niz1 i niz2 spojiti u treci niz, zatim obrnuti pozicije elemenata novog niza i ispisati ga na ekran. */ #include<iostream> using namespace std; int unesi(int *niz,int d){ for(int i=0;i<d;i++){ cout<<"Unesi "<<i+1<<". clan niza: "; cin>>niz[i];}} void spoji(int *niz1,int *niz2, int a, int b){ int d=a+b; int *niz3=new int[d]; for(int i=0;i<b;i++){ niz3[i]=niz2[b-1-i];} for(int i=b;i<d;i++){ niz3[i]=niz1[d-i-1];} cout<<"Novi obrnuti niz je: "; for(int i=0;i<d;i++){ cout<<niz3[i]<<" ";} delete []niz3;} int main(){ int *niz1,*niz2,a,b; cout<<"Koliko clanva ima 1. niz"; cin>>a; niz1=new int [a]; unesi(niz1,a); cout<<"koliko clanova ima 2. niz "; cin>>b; niz2=new int[b]; unesi(niz2,b); spoji(niz1,niz2,a,b); cout<<endl; delete []niz1; delete []niz2; system("pause"); return 1; }

/* implementirati funkciju void spoji(int *niz1, int *niz2, int duz1, int duz2) koja ce elemente nizova niz1 i niz2 spojiti u treci niz, zatim obrnuti pozicije elemenata novog niza i ispisati ga na ekran. */ #include<iostream> using namespace std; int unesi(int *niz,int d){ for(int i=0;i<d;i++){ cout<<"Unesi "<<i+1<<". clan niza: "; cin>>niz[i];}} void spoji(int *niz1, int *niz2, int duz1, int duz2){ int duz=duz1+duz2; int *temp= new int [duz]; for (int i=0; i<duz1; i++){ temp[i]=niz1[i];} for (int i=duz1; i<duz; i++){ temp[i]=niz2[i-duz1];} int *niz3= new int[duz]; int j=0; for (int i=duz-1; i>=0; i--){ niz3[j]=temp[i]; j++;} delete []temp; cout<<"Novi obrnuti niz je: "; for (int i=0; i<duz; i++){ cout<<niz3[i]<<" ";} delete []niz3;} int main(){ int *niz1,*niz2,a,b; cout<<"Koliko clanva ima 1. niz "; cin>>a; niz1=new int [a]; unesi(niz1,a); cout<<"koliko clanova ima 2. niz "; cin>>b; niz2=new int[b]; unesi(niz2,b); spoji(niz1,niz2,a,b); cout<<endl; delete []niz2; delete [] niz1; system("pause"); return 1; }

/* implementirati funkciju void zamjeniMinMax(int *niz, int duzina) koja ce zamijeniti pozicije minimalnoj i maximalnoj vrijednosti proslijedjenog niza.*/ #include <iostream> using namespace std; void zamijeniMinMax (int *niz, int duz){ int min=0; int max=0; for(int i=0; i<duz; i++){ if(niz[i]<niz[min]){ min=i;} if(niz[i]>niz[max]){ max=i;}} int temp=niz[min]; niz[min]=niz[max]; niz[max]=temp; for (int i=0; i<duz; i++){ cout<<niz[i]<<" ";}}

int main (){ int n, i; cout<<"Unesite koliko elemenata ima niz: "; cin>>n; int *niz=new int [n]; for (i=0; i<n; i++){ cout<<"Unesite "<<i+1<<" clan niza: "; cin>>niz[i];}

cout<<"\nispis niza: "; zamijeniMinMax(niz, n); cout<<endl; delete []niz; system ("pause"); return 0; }

/* Implementirati funkciju bool postojiElement(int *niz, int duzina, int element) koja ce provjeriti da li u proslijedjenom nizu postoji trazeni broj (vratiti true ako postoji, false ako ne postoji). */ bool postojiElement(int *niz, int duzina, int element){ for (int i=0; i<duzina; i++){ if(niz[i]==element){ return true;} return false;}

/*napisati program koji ce neki broj iz baze 10 konvertirati u bazu 2*/ #include <iostream> using namespace std; int *dodaj (int element, int *niz, int &duzina){ int *temp = new int[duzina+1]; for (int i=0; i<duzina; i++) temp[i] = niz[i]; temp[duzina]=element; duzina++; delete []niz; return temp;} int main (){ int broj,rezultat=0, i, n=0; cout<<"unesite broj: "; cin>>broj; int *niz= new int [n]; while (broj!=0){ rezultat= broj%2; broj=broj/2; niz = dodaj(rezultat, niz, n);} for (i=n-1; i>=0; i--){ cout<<niz[i];} cout<<endl; system ("pause"); return 0; }

/*napisati program koji ce neki brojiz baze 2 konvertirati u bazu 10 */ #include <iostream> #include <cmath> using namespace std; int *dodaj (int element, int *niz, int &duzina){ int *temp = new int[duzina+1]; for (int i=0; i<duzina; i++) temp[i] = niz[i]; temp[duzina]=element; duzina++; delete []niz; return temp;} int main (){ int broj,rezultat=0, i, n=0, a=0; float suma=0, b=2; cout<<"unesite broj: "; cin>>broj; int *niz= new int [n]; while (broj!=0){ rezultat= broj%10; broj=broj/10; niz = dodaj(rezultat, niz, n);} for (i=0; i<n; i++){ suma=suma+(niz[i])*pow(b,a); a++;} cout<<suma; cout<<endl; system ("pause"); return 0; }

/* pokazivaci. pravljenje dinamickog niza */ #include <iostream> using namespace std; void unos(int *niz,int duzina){ for (int i =0; i<duzina; i++){ cout<<"Unesi "<<i+1<<" clan niza: "; cin>>niz[i];}} void ispis(int *niz,int duzina){ for (int i =0; i<duzina; i++){ cout<<niz[i]<<", ";}} int main (){ int x, y, z, i; cout<<"Unesite koliko elemenata ima prvi niz: "; cin>>x; cout<<"Unesite koliko elemenata ima drugi niz: "; cin>>y; z=x+y; int *niz1=new int [x]; int *niz2=new int [y]; int *niz3=new int [z]; cout<<endl; cout<<"\nUnosenje prvog niza."<<endl; unos(niz1,x); cout<<"\nUnosenje drugog niza."<<endl; unos(niz2,y); cout<<"\nTreci niz je: "; for(i=0;i<x;i++) niz3[i]=niz1[i]; for(i=x;i<z;i++) niz3[i]=niz2[i-x]; for(i=0; i<z; i++){ cout<<niz3[i]<<" ";} cout<<endl; delete []niz1; delete []niz2; delete []niz3; system ("pause"); return 0; }

/*racuna frekvenciju ponavljanja nekog broja u nizu i pored tog broja ispisuje koliko puta se ponavlja*/ #include <iostream> using namespace std; void ponavljanje (int *niz, int duzina){ for (int i=0; i<duzina; i++){ int element=niz[i]; int a=0; for (int j=0; j<duzina; j++){ int provjera=niz[j]; if (provjera==element){ a++;}} cout<<"Broj "<<element<<" se "<<a<<" puta ponavlja u nizu"<<endl;} } int main(){ int i, n; cout<<"Unesite koliko elemenata ima niz: "; cin>>n; int *nizA = new int [n]; for (i=0; i<n; i++){ cout<<"Unesi "<<i+1<<" clan niza: "; cin>>nizA[i];} cout<<endl; ponavljanje (nizA, n); cout<<endl; system ("pause"); return 0; }

/*Napisati rekurzivnu funkciju koja ce naci sumu aritmetickog niza. Argumenti f-je su: pocetna vrijednost, krajnja vrijednost i korak. Niz mora biti rastuci u suprotnom funkcija vraca nulu. Prototip f-je je: int suma(int a, int b, int d) */ #include <iostream> using namespace std; int suma(int a, int b, int d) { //ukoliko je pocetna veca od krajnje granice niza -> niz je opadajuci -> vraca se nula //ili ukoliko je d (razmak) negativan vraca se nula if (a > b || d < 0) { return 0; } return a + suma(a + d, b, d); } int main() { int donja, gornja, razmak, sumaNiza; cout << "Donja granica: "; cin >> donja; cout << "Gornja granica: "; cin >> gornja; cout << "Razmak: "; cin >> razmak; //pozovemo funkciju da vrati sumu u varijablu `sumaNiza` sumaNiza = suma(donja, gornja, razmak); cout << endl << "Suma niza je: " << sumaNiza; cout << endl; system("pause"); return 0; }

/*Pomocu rekurzivne funkcije ispisati brojeve od N do 1.*/ #include <iostream> using namespace std; int funkcija(int N) { cout << N << endl; if (N <= 1) { return 1; } return funkcija(N - 1); } int main() { int broj; cout << "Unesi broj: "; cin >> broj; funkcija(broj); cout << endl; system("pause"); return 0; }

/*Napisati rekurzivnu f-ju koja ce ispisivati brojeve od N do 0 sa razmakom 3.*/ #include <iostream> using namespace std; int funkcija(int N) { if (N < 0) { return 0; } cout << N << endl; return funkcija(N - 3); } int main() { int granica; cout << "Granica: "; cin >> granica; funkcija(granica); cout << endl; system("pause"); return 0; }

/* napisati program koji od korisnika trazi da se unese proizvoljno dug niz. program treba da vrati sumu tog niza (rekluzija) */ #include <iostream> using namespace std; int sumaN(int *niz, int duz){ if (duz==0) return niz[0]; else return niz[duz]+ sumaN(niz, duz-1);} int main (){ int i, n, suma; cout<<"koliko ce niz imati elemenata: "; cin>>n; int *niz=new int [n]; for (i=0; i<n; i++){ cout<<"unesite "<<i+1<<". clan niza: "; cin>>niz[i];} suma = sumaN(niz, n); cout<<"suma niza je: "<<suma<<endl; system ("pause"); return 0; }

/* rekluzija, potenciranje broja*/ #include <iostream> using namespace std; float potenciraj ( float b, int e){ if (e == 0) return 1; if (e == 1) return b; return b * potenciraj ( b , e-1); } int main(){ float b; int e; cout << "Upisite bazu: "; cin >> b; cout << endl << "Upisite eksponent: "; cin >> e; float rez = potenciraj ( b ,e ); cout << endl << b << "^" << e << " = " << rez << endl << endl; system("pause"); return 0; }

You might also like