Zine.net online

Witaj na Zine.net online Zaloguj się | Rejestracja | Pomoc
w Szukaj

arkadiusz.wasniewski

F(a) = (a + k) mod n

Powyższy wzór umożliwia nam znalezienie nowej wartości ze zbioru n elementów, gdzie a stanowi punkt odniesienia (aktualna wartość), a k jest przesunięciem. Dzięki temu algorytmowi możemy potraktować zbiór jako bufor kołowy, dzięki czemu nie musimy sprawdzać wartości brzegowych. Oznacza to, iż po osiągnięciu ostatniego elementu zbioru, zostanie wybrany element pierwszy.

Dobry przykład zastosowania to przeglądanie na ekranie danych szczegółowych produktu. Załóżmy, iż chcemy umożliwić użytkownikowi wyświetlenie jednocześnie tylko jednej  z poniższych wartości:

  • Kod produktu;
  • Cena produktu;
  • Stawka VAT;
  • Ilość na stanie magazynu.

Wyboru dokonujemy klawiszem:

  • Strzałka w prawo dla przesunięć od kodu produktu w stronę ilości;
  • Strzałka w lewo dla przesunięć od ilości do kodu produktu.

Dla tych kombinacji otrzymujemy następujące wzory:

  • Strzałka w prawo: mode = (mode + 1) % 4;
  • Strzałka w lewo: mode = (mode + 3) % 4.

Zmienna mode oznacza wartość aktualną.

Opublikowane 25 września 2007 15:45 przez arkadiusz.wasniewski
Filed under:

Powiadamianie o komentarzach

Jeżeli chciałbyś otrzymywać email gdy ta wypowiedź zostanie zaktualizowana, to zarejestruj się tutaj

Subskrybuj komentarze za pomocą RSS

Komentarze:

Brak komentarzy

Co o tym myślisz?

(wymagane) 
(opcjonalne)
(wymagane) 

  
Wprowadź kod: (wymagane)
Wyślij
W oparciu o Community Server (Personal Edition), Telligent Systems