Zadatak u C-u

Zadatak u C-u

offline
  • Pridružio: 04 Jul 2011
  • Poruke: 728
  • Gde živiš: Loznica

Program treba da sortira brojeve pomocu merge sort algoritma.
Sve radi dok unosim brojeve:


Ali kad pritisnem enter:


n je broj elemenata niza
d je duzina bloka
s je broj blokova

#include <stdio.h> #include <stdlib.h> #include <math.h> int z[100],y=0,g,test,i,j,o,p,s,d; void merge(int x[100],int n,int s,int d) {     for(g=0;g<=(s/2)-1;g++)  {           d=pow(2,g);         s=n/d;         test=d*2;   printf("\n\n 2 n=%d      d=%d     s=%d",n,d,s);   for(p=0;p<s/2;p++)   {    printf("\n\n 3 n=%d      d=%d     s=%d",n,d,s);    for(o=0;o<=s/2-1;o++)    {     printf("\n\n 4 n=%d      d=%d     s=%d",n,d,s);         for(i=0;i<=d-1;)     {      printf("\n\n 5 n=%d      d=%d     s=%d",n,d,s);      y++;      for(j=d+(d*o);j<=d+i-1+(d*o);)      {       if (x[j+(d*o)]<x[i+(d*o)])       {        z[y]=x[j+(d*o)];        j++;                for(y=0;y<=n-1;y++)        {         x[y]=z[y];        }       }       else       {        z[y]=x[i+(d*o)];        i++;                             for(y=0;y<=n-1;y++)        {         x[y]=z[y];        }                         }      }     }    }         }     } } int main() {     int x[100],n,z[100],y,g,i,s,d,j,o,p;     printf("Koliki niz hoces?\n");     do{         printf("\n n= ");         scanf("%d",&n);     }while(n<=0 || n%2==1);     for(i=0;i<=n-1;i++){     printf("\nn%d= ",i+1);     scanf("%d",&x[i]);     }     printf("\nx: ");     for(i=0;i<=n-1;i++){     printf("%d ",x[i]);     }             s=n;             d=2;             printf("\n\n n=%d      d=%d     s=%d",n,d,s);             merge(x,n,s-1,0);     printf("\n\nx: ");     for(i=0;i<=n-1;i++){     printf("%d ",x[i]);     }     return 0; }

Dakle, gde je problem?



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
Ko je trenutno na forumu
 

Ukupno su 1049 korisnika na forumu :: 46 registrovanih, 7 sakrivenih i 996 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: A.R.Chafee.Jr., atmel, babaroga, BORUTUS, Dimitrise93, DonRumataEstorski, dule10savic, FOX, Georgius, gomago, Insan, Karla, kihot, kjkszpj, Klecaviks, Kubovac, kunktator, ladro, ljuba, Lubica, Marko Marković, Maschinekalibar, milenko crazy north, milutin134, Mixelotti, nenad81, Neutral-M, opt1, RJ, robertino, Rogan33, sasa87, sevenino, Sirius, sovanova95, Srki94, Srle993, Stoilkovic, theNedjeljko, Trpe Grozni, vaso1, wizzardone, YU-UKI, YugoSlav, žeks62, 125