Kolejka i wstawianie do niej wartości

Odpowiedz Nowy wątek
2015-01-03 18:47
Awadakedabra
0

Witam, próbuje napisać kawałek programu który wrzuci mi zadaną wartość do kolejki podzieloną na części, mianowicie mam zrobioną kolejkę i wstawiam do niej po kolei dane funkcją push, jednak załóżmy że chce mieć w niej tylko wartości mniejsze od 10, gdy będę próbować do niej wstawić wartość większą to mam podzielić ją na kawałki, np chce wstawić 24, 24>10 więc dziele na dwie 12, dalej są większe więc muszę podzielić obie jeszcze raz, wychodzą cztery 6, więc wstawiam je wszystkie.
Zrobiłem to w if'ie tzn(if wartosc>10) stwórz dwie nowe i wrzuć pushem , ale on dzieli tylko raz i wtedy wstawia, chce dzielić do skutku, dopóki się nie zmieszczą, tych liczb może być nawet 100, aby były mniejsze od tej 10, myślałem żeby może robić tablice na te liczby i później wstawiać, a dzielić w while'u, ktoś zna jakiś łatwy sposób żeby to działało poprawnie?

Pozostało 580 znaków

2015-01-03 18:49
0

W pętli - po każdym cięciu wkładasz co możesz do kolejki.
Żadnych tablic, ni nic, a kodu na 3 linijki.

Pozostało 580 znaków

2015-01-03 18:50
Awadakedabra
0
spartanPAGE napisał(a):

W pętli - po każdym cięciu wkładasz co możesz do kolejki.
Żadnych tablic, ni nic, a kodu na 3 linijki.

Ale jak dla tego przykładu mi podzieli w pętli to wrzuci te dwunastki a później 6, a ma wrzucić same 6

Pozostało 580 znaków

2015-01-03 19:07
0

Nie. Użyj głowy.

  • Krój za pomocą modulo.
edytowany 1x, ostatnio: spartanPAGE, 2015-01-03 19:08

Pozostało 580 znaków

2015-01-03 21:24
0
void wrzuc_do_kolejki(kolejka &k,int v)
  {
   if(v<10) k.push_back(v);
   else
     {
      int h=v>>1;
      wrzuc_do_kolejki(k,h);
      wrzuc_do_kolejki(k,v-h);
     }
  }

Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0