Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

[Zadatak] niz brojeva,sortiranje

[es] :: C/C++ programiranje :: C/C++ za početnike :: [Zadatak] niz brojeva,sortiranje

[ Pregleda: 3519 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Jeste

Član broj: 195796
Poruke: 50
*.crnagora.net.



+1 Profil

icon [Zadatak] niz brojeva,sortiranje01.10.2008. u 08:05 - pre 189 meseci
treba mi da od niza slucajnih brojeva od 0 -36 sortira sve 1-12 i prebaci ih u slovo M ....13-24 u L.... 25-36 u H i nula da ostane nula....i da onda odredi najveci niz pojedniacnih slova racunajuci i nulu ....npr MLMMLHLHMMMHHLLLLHMHHHH0HLLHMM znaci za M je 3 za L je 4 za H je 6 jer se i 0 racuna...

trebao bi mi kod za C ili bilo koji drugi program....
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.dynamic.sbb.rs.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: [Zadatak] niz brojeva,sortiranje01.10.2008. u 16:31 - pre 189 meseci
Zadaci se postavljaju u forumu za pocetnike.

Pokazite sta se do sada uradili, jer je to jedini osnov da ova tema ne bude obrisana.

 
Odgovor na temu

Jeste

Član broj: 195796
Poruke: 50
77.222.13.*



+1 Profil

icon Re: [Zadatak] niz brojeva,sortiranje01.10.2008. u 16:47 - pre 189 meseci
pa nisam nista....ne izgleda tesko ali ja sam odavno ucio c i c++ i skoro sve zaboravio....mislim da treba sa if i while petljom al kako postavit veze nemam.....
 
Odgovor na temu

Jeste

Član broj: 195796
Poruke: 50
*.crnagora.net.



+1 Profil

icon Re: [Zadatak] niz brojeva,sortiranje26.10.2008. u 12:12 - pre 188 meseci
Code:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>


int getSubArrSize(char niz1[], int i, int j); // vraca velicinu podniza
int main ()
{
    int i,j,m;
    int result = 1; 
    int index = -1; 
    
    srand ( time(NULL) ); //podesavanje seed-a kod rand() funkcije
  int niz[30000];
  char nizSlova[30000];
  for( i=0;i<30000;i++)
  {
       niz[i] = rand()%36+1;     //pozivanje rand() funkcije ide modul 36 + 1 da bi nam rezultat bio u opsegu od 0 - 36
  }
  for( i=0;i<30000;i++)
  {
       
       printf(" %d ", niz[i]);   // stampanje niza brojeva
  }
 printf("\n");
 
 // pretvaranje niza brojeva u niz slova u zavisnosti od uslova
  for( i=0;i<30000;i++)
  {
       if (niz[i]<=12 && niz[i]>0 )
            nizSlova[i] = 'M';
       else if (niz[i]>12 && niz[i]<=24)
            nizSlova[i] = 'L';
       else if (niz[i]>24 && niz[i]<=36)
            nizSlova[i] = 'H';
       else 
            nizSlova[i] = '0';
       
  }
 
    for( i=0;i<30000;i++)
  {
       
       printf(" %c ", nizSlova[i]);  // stampanje niza karaktera
  }
 printf("\n");
 
 // nalazenje podniza         
            for( i = 0 , j=1 ; j< 30000; i++ ,j++)
            {
             
                if( nizSlova[i] == nizSlova[j])
                {
                    
                  int subArrSize = getSubArrSize(nizSlova, i, j);
                  if(result < subArrSize)
                  {
                    result = subArrSize;
                    index = i;
                  }
                  
                }
              
            }
 printf("Najduzi podniz pocinje na poziciji %d i dugacak je %d karaktera \n", index, result);
  puts ("Eto ga! ");
  scanf("%d",&m);
  return 0;
}

// funkcija koja vraca duzinu najduzeg podniza
 int getSubArrSize(char niz1[], int i, int j)
        {
          int size = 1;
          while (i < j)
          {
            if(niz1[i] == niz1[j])
                { size++;
                 j++;}
            else
              return size;
            i++;
          }
          return size;
        }


moze li neko da mi izmjeni program tako da umjesto rand funkcije sam ubacujem brojeve?

EDIT: X Files : Molim Vas da zbog preglednosti, kod upisujete između tag-ova predviđenih za to: [code] ... [/code]
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.dynamic.sbb.rs.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: [Zadatak] niz brojeva,sortiranje26.10.2008. u 12:50 - pre 188 meseci
Nisam detaljno gledao kod (mozda i gresim), ali mislim da postoji anomalija sto se tice tumacenja NULE kao 'džoker' elementa.

Recimo, šta bi trebao da bude rezultat za: LL0000MMM

Drugim recima, verovatno je dinamicki i interno potrebno NULE transformisati u odgovarajuci element (u jednom prolazu u L u drugom u M), pa tek onda propustiti kroz standardnu funkciju za odredjivanje najduzeg podniza. To automatski implicira da je potrebno 'na papiru' prvo utvrditi logiku kojom nule treba transformisati cas u jedan cas u drugi susedni element, i sl...


 
Odgovor na temu

Jeste

Član broj: 195796
Poruke: 50
*.crnagora.net.



+1 Profil

icon Re: [Zadatak] niz brojeva,sortiranje26.10.2008. u 16:20 - pre 188 meseci
ne ne ....nula ostaje nula.....dobro je ovako....
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.dynamic.sbb.rs.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: [Zadatak] niz brojeva,sortiranje26.10.2008. u 16:27 - pre 188 meseci
A kako onda ovo?
Citat:

npr MLMMLHLHMMMHHLLLLHMHHHH0HLLHMM znaci za M je 3 za L je 4 za H je 6 jer se i 0 racuna...

Kako je onda H=6 ako nula ostaje nula.
 
Odgovor na temu

Jeste

Član broj: 195796
Poruke: 50
*.crnagora.net.



+1 Profil

icon Re: [Zadatak] niz brojeva,sortiranje26.10.2008. u 18:42 - pre 188 meseci
uffff.....u pravu si......

kad bi mi neko jos i to popravio :)

[Ovu poruku je menjao Jeste dana 27.10.2008. u 00:47 GMT+1]
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: [Zadatak] niz brojeva,sortiranje

[ Pregleda: 3519 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.