Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Odabrani zadaci za samostalni rad
- #include <iosteam>
- #include <vector>
- #include <string>
- #include <stdexcept>
- #include <cmath>
- using namespace std;
- //1 zadatak
- void IspisiInt(int broj)
- {
- cout << broj << endl;
- }
- //2 zadatak
- int ZbirDva(int a, int b)
- {
- return a+b;
- }
- //3 zadatak
- int Obrnut(int n)
- {
- noviBroj=0;
- while(n!=0)
- {
- noviBroj=(noviBroj*10)+ (n%10);
- n/=10;
- }
- return noviBroj;
- }
- //4 zadatak
- bool DaLiJePalindrom(int n)
- {
- int temp,nb=0;
- temp=n;
- while(temp > 0){
- nb=nb*10+temp%10;
- temp=temp/10;
- }
- if(nb==n)return true;
- return false;
- }
- //5 zadatak
- int DrugeCifre(int n,int a){ //svakudrugu cifru s desna mjenja sa a
- int br=0;
- int k=1,t=0;
- while(n!=0){
- int cifra=n%10;
- br++;
- if(br%2==0)cifra=a;
- t=t+cifra*k;
- k*=10;
- n/=10;
- }
- //6 zadatak
- int UvecajParneSmanjiNeparne(int n)
- {
- int noviBroj=0,k=1;
- while(n > 0)
- {
- if((n%10)%2==0)noviBroj=noviBroj+((n%10)+1)*k;
- else if((n%10)%2!=0)noviBroj=noviBroj+((n%10)-1)*k;
- else noviBroj=noviBroj+(n%10)*k;
- k=k*10;
- n/=10;
- }
- return noviBroj;
- }
- //7 zadatak
- double ZamjeniDecimalni(double n)
- {
- int prvi,drugi,temp=n,br=0;
- while(temp != 0)
- {
- temp/=10;
- br++;
- }
- prvi=n;
- prvi=prvi/pow(10,br);
- drugi=n-prvi; //GRESKAAA
- double noviBroj=drugi+prvi;
- return noviBroj;
- }
- //8 zadatak
- //9 zadatak
- //10 zadatak
- //11 zadatak
- vector<int> Djelioci(int n)
- {
- vector<int>v;
- for(int i(0);i<n;i++)
- {
- if(n%i==0)v.push_back(i);
- }
- return v;
- }
- //12 zadatak
- bool StepenBrojaDva(vector<int>v)
- {
- for(int i(0);i<v.size();i++)
- {
- if(log(v[i])==2)return true //nije zavrseno
- }
- return false;
- }
- //13 zadatak
- vector<int> PotpuniKvadrati(int n)
- {
- vector<int>v;
- for(int i=1;i<=n;i++)
- {
- if(i==pow(sqrt(i),2))v.push_back(i);
- }
- return v;
- }
- //14 zadatak
- vector<int> NajmanjeCifre(vector<int>v)
- {
- int temp,cifra,min;
- vector<int>v1;
- for(int i=0;i<v.size();i++)
- {
- temp=v[i];
- min=9;
- while(temp != 0)
- {
- cifra=temp%10;
- if(cifra<min)min=cifra;
- temp/=10;
- }
- v1.push_back(min);
- }
- return v1;
- }
- //15 zadatak
- vector<int> Petnaesti(vector<int>v, int n) /*Napišite funkciju sa dva parametra, pri čemu je prvi parametar neki vektor cijelih brojeva, a drugi parametar cijeli broj. Funkcija treba da vrati kao rezultat novi vektor čiji su elementi oni elementi vektora zadanog kao prvi parametar čija je suma cifara veda od broja zadanog drugim parametrom. Napišite i mali testni program u kojem dete demonstrirati kako se upotrebljava napisana funkcija*/
- {
- vector<int>rez;
- for(int i=0;i<v.size();i++)
- {
- int suma,temp;
- suma=0;
- temp=v[i];
- while(temp != 0)
- {
- suma+=temp%10;
- temp/=10;
- }
- if(suma>n)rez.push_back(v[i]);
- }
- return rez;
- }
- //16 zadatak
- double LudaSuma(vector<int>v)
- {
- double rezultat;
- return rezultat;
- }
- //17 zadatak
- void CezarovaSifra(string &s)
- {
- for(int i=0;i<s.length();i++)
- {
- if(s[i]==' ')i++;
- s[i]+=3;
- }
- }
- //18 zadatak
- void AnalizaBroja(int n, int &BrojCifara, int &BrojParnihCifara, int &RasponCifara)
- {
- int temp=n,max=0,min=9;
- BrojCifara=0;
- BrojParnihCifara=0;
- RasponCifara=0;
- while(temp != 0)
- {
- if((temp%10) % 2 == 0 )BrojParnihCifara++;
- if(temp%10>max)max=temp%10;
- if(temp%10<min)min=temp%10;
- temp/=10;
- BrojCifara++;
- }
- RasponCifara=max-min;
- }
- //19 zadatak
- int BinToDec(string s)
- {
- for(int i=0;i<s.size();i++)
- {
- if(s[0]=='-')i++;
- if(s[i]<'0' || s[i]>'1')throw"Ovo nije binarni broj";
- }
- int decimalni=0;
- int vel=s.size()-1;
- for(int i=0;i<s.size();i++)
- {
- if(s[0]=='-'){
- i++;
- vel--;
- }
- if(s[i]=='0')vel--;
- if(s[i]=='1')
- {
- decimalni+=pow(2,vel);
- vel--;
- }
- }
- return decimalni;
- }
- //20 zadatak
- void SumeCifaraPoIndexu(int n, int &s_parnih, int &s_neparnih)
- {
- if(n<0)
- cout << "Broj nije prirodan.";
- if(n<9 && n>0)
- {
- s_parnih=0;
- s_neparnih=n;
- }
- if(n>9){
- while(n != 0)
- {
- s_neparnih+=n%10;
- s_parnih+=n%100;
- n/=10;
- }
- }
- }
- //Treba se dodati int main
Advertisement
Add Comment
Please, Sign In to add comment