Preskoči na sadržaj
Ista raja. Nova runda.
GAMERZ.ba — REBORN
Diskusija

c++ problem

134 pregleda · 3 odgovora · otvorena 15.04.2011. u 20:13

Pozz svima ..

Tema je za naprednije c++programere .
Znači problem je sljedeći. Vjerovatno ste upoznati sa SORT ugrađenom funkcijom.

Parametri su : sort(odakle, dokle, funkcija)

Eh sada, imam zadatak da napravim moj tip sort funkcije, naravno ona će biti obično booble soort. Problem u tome kako da napravim da funkcija, primi drugu funkciju.

tj.

moj_sort(odakle, dokle, funkcija_uslova);
ta funkcija bi se zvala :

void moj_sort(int odakle, int dokle, FUNKCIJA FUNKCIJA)

eh problem je, kako primiti tu FUNKCIJU u moj_sort. Ako imate pitanja, pitajte, ako neko ima neko rješenje, bujrum ..
Nekontam sta ce ti ta funkcija_funkcija ??? ovo ti je rijesenje tvog bubble sorta

#include <iostream>
using namespace std;
#define BrEl 20


void bubbleSort(int brojevi[], int velicina)
{
int i, j, priv;

for (i = (velicina - 1); i >= 0; i--)
{
for (j = 1; j <= i; j++)
{
if (brojevi[j-1] > brojevi[j])
{
priv = brojevi[j-1];
brojevi[j-1] = brojevi[j];
brojevi[j] = priv;
}
}
}
}




int main()
{
int A[BrEl]={25,14,7,76,10,64,20,30,9,2,6,77,83,12,56,46,61,51,33,26};

cout<<"NESORTIRANI NIZ:"<<endl;
for(int i=0;i<BrEl;i++)
{
cout<<A[i]<<endl;
}

bubbleSort(A,BrEl);
cout<<endl<<"SORTIRANI NIZ"<<endl;
for(int i=0;i<BrEl;i++)
{
cout<<A[i]<<endl;
}
return 0;
}
Jednostavno kao treci argument primis pokazivac na funkciju koja vraca bool, a kao parametar uzima nesto.
To bi moglo izgledat ovako:
template <typename Tip>
void Moja_funckija(int *odakle,int *dokle,bool Fn(Tip)){

eto to je zaglavlje s tim sto mozes ovo tip dole iz programa zamijeniti samo sa int ako tebi trebaju konkretno integeri i izostaviti ovo template...
odgovor na prvo pitanje : znam napisati booble sort, kao i selection sort, quick sort itd .. problem je bio drugi ..

a rješenje mog problema bi bilo sljedeće :

POZIVANJE :

moj_sort(odakle, dokle, ime_funkcije)

PRIMANJE PARAMETARA :
template <typename hepek>
hepek moj_sort(hepek odakle, hepek dokle, bool (*funkcija)(hepek))

ovaj dio BOOL (*FUNKCIJA)(INT) je bio problem, hvala u svakom slučaju

Prijavi se da bi odgovorio/la na ovu temu.