Code:
#include <iostream>
#include <deque>
using namespace std;
template<typename x>
typename deque<x>::iterator Najmanji(typename deque<x>::iterator p1, typename deque<x>::iterator p2){
typename deque<x>::iterator m(p1);
while(p1!=p2){
if(*p1<*m)m=p1;
p1++;
}
return m;
}
template<typename x>
typename deque<x>::iterator NadjiUvjetno(typename deque<x>::iterator p1, typename deque<x>::iterator p2){
while(p1!=p2){
int m(0);
x k(*p1);
while(k>0){
m=k%10;
k/=10;
if(m%2==0)return p1;
}
}
cout<<"U deku nema elemenata sa parnim ciframa.";
return p2;
}
int main()
{
cout << "Unesi broj n: " << endl;
int n(0);
cin>>n;
cout<<"Unesi dek, od "<<n<<" clanova: "<<endl;
deque<int>elementi(n);
for(int i=0;i<n;i++)cin>>elementi[i];
deque<int>::iterator p(Najmanji(elementi.begin(),elementi.end()));// ovdje javlja gresku! error: no matching function for call to 'Najmanji(std::deque<int>::iterator, std::deque<int>::iterator)'|
*p-=1;
for(int i=0;i<n;i++)cout<<elementi[i]<<endl;
cout<<endl;
cout<<"Najmanji element deka umanjen za 1: "<<*p<<endl;
deque<int>::iterator p2(NadjiUvjetno(elementi.begin(), elementi.end()));//ovdje javlja gresku! error: no matching function
if(*p2!=0)cout<<"Prvi element deka koji ima parnu cifru: "<<*p2<<endl;
return 0;
}
#include <iostream>
#include <deque>
using namespace std;
template<typename x>
typename deque<x>::iterator Najmanji(typename deque<x>::iterator p1, typename deque<x>::iterator p2){
typename deque<x>::iterator m(p1);
while(p1!=p2){
if(*p1<*m)m=p1;
p1++;
}
return m;
}
template<typename x>
typename deque<x>::iterator NadjiUvjetno(typename deque<x>::iterator p1, typename deque<x>::iterator p2){
while(p1!=p2){
int m(0);
x k(*p1);
while(k>0){
m=k%10;
k/=10;
if(m%2==0)return p1;
}
}
cout<<"U deku nema elemenata sa parnim ciframa.";
return p2;
}
int main()
{
cout << "Unesi broj n: " << endl;
int n(0);
cin>>n;
cout<<"Unesi dek, od "<<n<<" clanova: "<<endl;
deque<int>elementi(n);
for(int i=0;i<n;i++)cin>>elementi[i];
deque<int>::iterator p(Najmanji(elementi.begin(),elementi.end()));// ovdje javlja gresku! error: no matching function for call to 'Najmanji(std::deque<int>::iterator, std::deque<int>::iterator)'|
*p-=1;
for(int i=0;i<n;i++)cout<<elementi[i]<<endl;
cout<<endl;
cout<<"Najmanji element deka umanjen za 1: "<<*p<<endl;
deque<int>::iterator p2(NadjiUvjetno(elementi.begin(), elementi.end()));//ovdje javlja gresku! error: no matching function
if(*p2!=0)cout<<"Prvi element deka koji ima parnu cifru: "<<*p2<<endl;
return 0;
}
zasto javlja ovu gresku
error: no matching function for call to 'Najmanji(std::deque<int>::iterator, std::deque<int>::iterator)'| ?