kategoria: Blitz
[#1] blitz: wstawianie elementu do listy (nie tablicy)
Czesc,
jesli ktos ma czas i ochote to moze ten temat potraktowac jako rozgrzewke.

Mam liste, powiedzmy 20 elementow.
Lista jest posortowana rosnaco (0...19)
Usuwam 1szy element (z pozycji 0)
Teraz chce wstawic nowy element np.11 lub -17, lub 63
Ma on zostac wstawiony na liste tak by zachowac kolejnosc rozsnaca.

Moja wersja jest ponizej i dziala ale czy nie da sie tego jescze uproscic?
Byc moze "zafiksowalem" sie na jakims pomysle i nie widze bardziej oczywistego.
Operowanie na listach w Blitzu jest dosc... malo intuicyjne.
Dzieki

Dim List lst.w(19)

new.w=-18
i.w=0
While AddItem(lst())
  lst()=i
  i+1
Wend

ResetList lst()
If NextItem(lst()) Then KillItem lst()

If LastItem(lst())
  If new>lst()
    If AddItem(lst()) Then lst()=new
    Goto __jump__
  Else
    While PrevItem(lst())
      If new>lst()
        If AddItem(lst()) lst()=new
        Goto __jump__
      EndIf
    Wend
  EndIf
EndIf

ResetList lst()
If AddItem(lst()) Then lst()=new

__jump__:
ResetList lst()
While NextItem(lst())
  Print Str$(lst())+", "
Wend

MouseWait
End
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem