for (tekuci = prvi;tekuci!=NULL;tekuci = tekuci-> sledeci){
Tekuci = prviPNP;
if(tekuci->sledeci){
for (priv = tekuci->sledeci,index=0;priv !=NULL;priv=priv ->
sledeci,++index){
Tekuci -> clan = priv -> prvi;
Tekuci = Tekuci -> sledeci;
} // end for
} // end if
temp = index;
for (tekuciCL = tekuci -> prvi;tekuciCL !=NULL; tekuciCL = tekuciCL
-> sledeci){
Tekuci = prviPNP;
index = temp;
if(tekuci->sledeci){
while(index){
while(tekuciCL -> broj > Tekuci->clan->broj){
if (Tekuci ->clan -> sledeci)
Tekuci ->clan =Tekuci ->clan -> sledeci;
else break;
} // end while
if (tekuciCL -> broj == Tekuci->clan->broj){
if (Tekuci ->clan -> sledeci)
Tekuci ->clan =Tekuci ->clan -> sledeci;
break;
} // end if
Tekuci =Tekuci -> sledeci;
--index;
if(!index){
privCL = dodajCL (privCL);
privCL->broj = tekuciCL->broj;}
} // end while
} //end if
else {
privCL = dodajCL (privCL);
privCL->broj = tekuciCL->broj;
} // end else
} //end for
}//end for
> Moze li se iko snaci u ovome:)
Pa, ja bih mogao kad bi mi dao malo veće parče koda... Ili bar rekao šta
te muči ovde? Mada, vidim par gluposti ali reci konkretno :)
--
Of what you see in books, believe 75%. Of newspapers, believe 50%. And
of TV news, believe 25% -- make that 5% if the anchorman wears a
blazer.
Dakle nista me ne muci.Da imam problem poslao bih ga na y.c.s .
Mene je odusevilo to sto program radi (i ne samo da radi nego daje i
tacan rezultat:)))). Racuna NZS.
Mislio sam da niko ne prati grupu(osim mozda moj brat).Bilo bi lepo da
ozivimo ovu grupu, ali na zalost ne znam sta da saljem na nju, pa sam
poslao ovu glupost.
Ako ti nije tesko napisi mi koje su to gluposti, mada znam da sam
zakomplikovao do bola.
Evo ti ceo kod ako te interesuje :)
Ovi long rezulltati bi trebali da budu double, ali to bas i nije bitno
u zadatku.
typedef struct clanovi{
int broj;
struct clanovi *sledeci;
}CLAN;
typedef struct PokazivaciNaPokazivace{
CLAN * clan;
struct PokazivaciNaPokazivace *sledeci;
}PNP;
typedef struct brojevi{
int broj;
CLAN *prvi;
struct brojevi *sledeci;
}BROJEVI;
BROJEVI * prvi=NULL;
CLAN * prviCL = NULL;
PNP * prviPNP;
BROJEVI * dodaj (BROJEVI* tekuci)
{
BROJEVI *novi;
novi = (BROJEVI *) HeapAlloc( GetProcessHeap(), 0, sizeof (BROJEVI));
if ( novi != NULL) {
if (tekuci == NULL){tekuci = novi;prvi = tekuci;novi -> sledeci =
0;}
else {
tekuci -> sledeci = novi;
novi -> sledeci = 0;
}
}
return novi;
}
void brisi(BROJEVI *tekuci)
{
BROJEVI *priv;
while(tekuci)
{
priv =tekuci;
tekuci= tekuci->sledeci;
brisiCL (priv-> prvi);
HeapFree( GetProcessHeap(), 0, priv);
}
}
CLAN * dodajCL (CLAN* tekuci)
{
CLAN *novi;
novi = (CLAN *) HeapAlloc( GetProcessHeap(), 0, sizeof (CLAN));
if ( novi != NULL) {
if (tekuci == NULL){tekuci = novi;prviCL = tekuci;novi -> sledeci =
0;}
else {
tekuci -> sledeci = novi;
novi -> sledeci = 0;
}
}
return novi;
}
void brisiCL(CLAN *tekuci)
{
CLAN *priv;
while(tekuci)
{
priv =tekuci;
tekuci= tekuci->sledeci;
HeapFree( GetProcessHeap(), 0, priv);
}
}
PNP * dodajPNP (PNP* tekuci)
{
PNP *novi;
novi = (PNP *) HeapAlloc( GetProcessHeap(), 0, sizeof (PNP));
if ( novi != NULL) {
if (tekuci == NULL){tekuci = novi;prviPNP = tekuci;novi -> sledeci =
0;}
else {
tekuci -> sledeci = novi;
novi -> sledeci = 0;
}
}
return novi;
}
void brisiPNP(PNP *tekuci)
{
PNP *priv;
while(tekuci)
{
priv =tekuci;
tekuci= tekuci->sledeci;
HeapFree( GetProcessHeap(), 0, priv);
}
}
void rastavi(int broj)
{
CLAN *tekuci = NULL;
int x=2;
while(x<=broj){
if(broj%x) ++x;
else {tekuci = dodajCL (tekuci); tekuci->broj=x;broj/=x;}
}
}
//moze i ovako
//void rastavi(broj)
//{
// CLAN *tekuci = NULL;
// int x=2;
// while(x<=broj){
// if(!(broj%x)) {tekuci = dodaj (tekuci); tekuci
->broj=x;broj/=x;continue;}
// ++x;}
// }
long izracunaj (void)
{
long rezultat=1;
int index,temp;
PNP * Tekuci = prviPNP;
BROJEVI * tekuci,*priv;
CLAN *tekuciCL;
CLAN *privCL = NULL;
for (privCL = prviCL;privCL !=NULL; privCL = privCL -> sledeci){
rezultat *= privCL-> broj; }
brisiCL(prviCL);
return rezultat;
}
long nzs (int numb, ... )
{
long rezultat = 1;
BROJEVI * tekuci = NULL;
PNP * tekuciPNP =0;
va_list ap;
va_start(ap,numb);
while (numb)
{
tekuci = dodaj (tekuci);
tekuci -> broj= va_arg(ap,int);
tekuci -> prvi = NULL;
rastavi(tekuci -> broj);
tekuci -> prvi = prviCL;
tekuciPNP = dodajPNP (tekuciPNP);
numb--;
}
va_end(ap);
rezultat = izracunaj();
brisiPNP(prviPNP);
brisi(prvi);
return rezultat;
}
long nzd(int numb, ...)
{
long rezultat = 1;
BROJEVI * tekuci = NULL;
PNP * tekuciPNP =0;
va_list ap;
va_start(ap,numb);
while (numb)
{
tekuci = dodaj (tekuci);
tekuci -> broj= va_arg(ap,int);
tekuci -> prvi = NULL;
rastavi(tekuci -> broj);
tekuci -> prvi = prviCL;
tekuciPNP = dodajPNP (tekuciPNP);
numb--;
}
va_end(ap);
return rezultat;
}
> Ako ti nije tesko napisi mi koje su to gluposti, mada znam da sam
> zakomplikovao do bola.
Pa samo to :)
Nije mi se svidelo to što sam video u for petljama ali sam posle
ukapirao da može da prođe :)
Što se tiče oživljanja grupe, izgleda da niko više ne uči C pa i nema
pitanja :(
--
It's a .88 magnum -- it goes through schools.
-- Danny Vermin
> Pa samo to :)
> Nije mi se svidelo to što sam video u for petljama ali sam posle
> ukapirao da može da prođe :)
> Što se tiče oživljanja grupe, izgleda da niko više ne uči C pa i nema
> pitanja :(
Ma uči se, samo niko nema entuzijazma da ga bistri u sitna crevca...
Studentarija se više bavi Javom i .NET-om...
Koliko znam uci se na ETF-u, visoj elektrotehnickoj,od skora na
matematici, na fizici i u matematickoj gimnaziji.Sada mozda je nesto
promenjeno.
> Koliko znam uci se na ETF-u, visoj elektrotehnickoj,od skora na
> matematici, na fizici i u matematickoj gimnaziji.Sada mozda je nesto
> promenjeno.
Ma uči se, ali se sad na njega gleda kao na nuždu tako da niko nema
entuzijazma da ga nauči kako treba. Sad klinci misle da sa 3 klika
sređuju sve probleme... Možda se kasnije neko i pojavi ovde, ali tek
kad prvi put lupi glavom u zid :)
--
The Beatles:
Paul McCartney's old back-up band.