[ android~paranoid @ 24.02.2006. 10:02 ] @
Zadatak: Treba od dve datoteke u kojima su double tip vrednosti koje su uredjene po rastucem redosledu da napravim jednu isto tako rastuce uredjena. Nisu iste duzine!

Ideja: U While petlji procita oba podatka iz obe datoteke, uporedi i onog manjeg zapise u novu datoteku, a drugog vrati jedno mesto iza, jer ce ga ponovo uzeti pri sledecem ciklusu while. Ako je jedna datoteka dosla do kraja a druga nije, onda se dopisu vrednosti sve do kraja one datoteke koja nije zavrsena.


Realizacija:

Citat:

while(!feof(pok1) && !feof(pok2))
{

fread(&a,sizeof a,1,pok1);
fread(&b,sizeof b,1,pok2);
if (a<=b)
{
fwrite(&a,sizeof a,1,pok);
fseek(pok2,- sizeof b,SEEK_CUR)
}
else
{
fwrite(&b,sizeof b,1,pok);
fseek(pok1,- sizeof b,SEEK_CUR)
}

if (!feof(pok1) && (feof(pok2))
{
while(!feof(pok1))
{
fwrite(&a,sizeof a,1,pok);
}
}

if (feof(pok1) && (!feof(pok2))
{
while(!feof(pok2))
{
fwrite(&b,sizeof b,1,pok);
}
}

}


Odprilike je ovako,mozda sam slucajno pogresio u prepisivanju nesto.

Ovo mi uradi skoro dobro, napise mi nekad dva puta poslednju vrednost iz pok1, i tri puta poslednju iz pok2.

Ima li neko drugu neku ideju, ili ovo da mi nadopuni...?

Napomena: NE koristiti pomocni niz, nije predvidjeno.

[Ovu poruku je menjao android~paranoid dana 24.02.2006. u 11:05 GMT+1]