Zna li neko kako da ispravim ovaj deo koda ili kako drugacije da uradim.
Unapred hvala i MOLIM VAS DA MI NEKO POMOGNE jer vec 5 dana se vracam na ovaj zadatak ali nista novo ne mogu da smislim. :-(
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
#include <string.h>
class niz;
void ShowRandom(niz x);
void ShowSorted(niz x);
class niz{
public:
niz(int n=10);
niz &Merged(niz &x);
private:
int n;
int *Random;
int *Sorted;
friend void ShowRandom(niz);
friend void ShowSorted(niz);
void Sort();
}
niz::void Sort()
{
int i,j,t;
for (i=0;i<(this->n -1);i++)
for (j=i+1;j<this->n;j++)
if (this->Sorted[i]>this->Sorted[j])
{
t=this->Sorted[i];
this->Sorted[i]=this->Sorted[j];
this->Sorted[j]=t;
}
return;
}
niz &niz::Merged(niz &x)
{
int i=0;
int j=0;
int k=0;
niz *novi=new niz(this->n+x.n);
for (i=0;i<this->n;i++)
novi->Random[i]=this->Random[i];
for (j=0;j<x.n;j++)
novi->Random[i+j]=x.Random[j];
i=0;
j=0;
k=0;
while ((i<this->n)||(j<x.n))
{
if ((i<this->n)&&(j<x.n))
{
if (this->Sorted[i]<x.Sorted[j])
{
novi->Sorted[k]=this->Sorted[i];
i++;
k++;
}
else
{
novi->Sorted[k]=x.Sorted[j];
j++;
k++;
}
}
else
{
if (i==this->n)
{
while (j<x.n)
{
novi->Sorted[k]=x.Sorted[j];
j++;
k++;
}
break;
}
else
{
while (i<this->n)
{
novi->Sorted[k]=this->Sorted[i];
i++;
k++;
}
break;
}
}
}
return *novi;
}
niz::niz(int n)
{
int i,j,t;
this->n=n;
Random=new int[10];
for(i=0;i<n;i++)
Random[i]=random[10];
Sorted=new int[10];
for(i=0;i<n;i++)
Sorted[i]=Random[i];
this->Sort();
}
void ShowRandom(niz x)
{
printf("\n");
for(int i=0;i<x.n;i++)
printf("%d ",x.Random[i]);
return;
}
void ShowSorted(niz x)
{
printf("\n");
for(int i=0;i<x.n;i++)
printf("%d ",x.Sorted[i]);
return;
}
int main(int argc,char *argv[])
{
randomize;
niz x=(!strcmp(argv[1],"0")?0:atoi(argv[1])),y=atoi(argv[2]);
niz z;
printf("\nX==========================================================\n");
ShowRandom(x);
printf("\n\nSortirani je :\n");
ShowSorted(x); //elemente x.Sorted prikazati na ekranu
printf("\nY==========================================================\n");
ShowRandom(y);
printf("\n\nSortirani je :\n");
ShowSorted(y); //elemente y.Sorted prikazati na ekranu
printf("\nZ==========================================================\n");
z=x.Merged(y);
ShowRandom(z);
printf("\n\nSortirani je :\n");
ShowSorted(z); //elemente z.Sorted prikazati na ekranu
printf("\n==========================================================\n");
system("PAUSE");
return 0;
}