Pregled posta

Adresa bloga: https://blog.dnevnik.hr/prirodaa

Marketing

ArrayFunction - input,sort,write

/* [1] Napišite program koji sadrži funkcije input, sort, search i write
unutar imenika arrayFunction. Funkcija input dinamički stvara polje cjelobrojnih elemenata A.
Korisnik unosi broj elemenata polja sve dok unesena vrijednost ne zadovoljava uvjet 0 a potom unosi i elemente polja. Funkcija sort uzlazno sortira elemente polja A (koristiti
insertion sortiranje). Funkcija write ispisuje polje s n elemenata. Funkcija search
implementira algoritm binarnog pretraživanja za element kojeg unosi korisnik i ispisuje
lokaciju elementa ili -1 ako se traženi element ne nalazi u polju. U main funkciji pozovite
sve funkcije odgovarajućim redoslijedom. Na zaslonu se ispisuje najprije nesortirano polje,
a potom sortirano polje i rezultat pretraživanja polja. */

#include
#include
using namespace std;
namespace arrayFunction
{ void input(int *&p, int &n);
void sort(int *p, int n);
void write(int *p, int n);
int search(int *p, int n, int elt);
}int main()
{ using namespace arrayFunction;
int *p, n, elt;
input(p,n);
write(p,n);
sort(p,n);
write(p,n);
cout<<"Koji element trazis: ";
cin>>elt;
cout< delete [] p;
cin.sync();
cin.get();
return 0; }
namespace arrayFunction
{ void input(int *&p, int &n)
{do
{ cout<<"Unesi broj elemenata: ";
cin>>n; }
while(n<=0 || n>20);
p=new int[n]; //1 bod
cout<<"Unesi elemente...\n";
for (int i=0; i cin>>p[i];
} void sort(int *p, int n)
{for (int current=1; current {
int elt=*(p+current);
int walker=current;
while (walker>0 && *(p+walker-1)>elt)
{ *(p+walker)=*(p+walker-1);
walker--;
}
*(p+walker)=elt;
}
}
void write(int *p, int n)
{ cout<<"Elementi polja --> ";
for (int i=0; i cout< cout< }
int search(int *p, int n, int elt)
{
int beg=0, end=n-1, mid;
while (beg<=end)
{
mid=(beg+end)/2;
if (*(p+mid)>elt) end=mid-1;
else if (*(p+mid) else beg=end+1;
}
if (*(p+mid)==elt) return mid;
else return -1;
}
}



Post je objavljen 24.04.2013. u 02:30 sati.