Goto http://www.stucuk.netGoto http://www.atlanticaonlinewiki.comGoto http://www.game-requirements.com

Arrays/pl

From Original War Support Wiki

Jump to: navigation, search

Tutorials/pl -> Arrays/pl

Contents

Wprowadzenie

Tablica, albo lista jest zbiorem wartości (dowolnego typu). Każda wartość jest oddzielona przecinkiem. Lista zaczyna się od [ a kończy ]. Pozycja określonej wartości w tablicy to index. Na przykład na tej liście: [5, 7, 4, 2], wartość "7" ma numer indeksu równy 2.

Przykłady pracy z tablicami

1) Użycie tylko jednej wartości z tablicy:

list := [2, 3, 4];
element := [list 3] //element będzie równy 4, ponieważ w tablicy list [3] elementem jest 4

2) Połączenie kilku tablic w jedną:

Tablica1 := [2, 3, 4];
Tablica2 := [3, 4, 5];
Tab := tablica1 ^ tablica2;

Tab będzie zawierać: [2, 3, 4, 3, 4, 5]
Jednakże czasami nie potrzebujemy dwóch takich samych wartości na liście. Wtedy możemy zastosować operator union:

Team := [John, Bobby, Joan] union [John, Joan, Cyrus, Radzio];

Team będzie zawierać: [John, Bobby, Joan, Cyrus, Radzio]
Union usuwa powtarzającą się wartość i łączy listy w jedną.
Może być także używany do usuwania z listy tych samych wpisów:

Tablica := [1, 2, 1, 1, 2, 3] union [];

Tablica będzie zawierać: [1, 2, 3]
3) Usunięcie wartości z tablicy:

Tablica := [1, 2, 3, 4, 5] diff [1, 4];
Tablica := myArray diff 5;

Tablica będzie zawierać: [2, 3]
Uwaga: diff usuwa powtarzające się wartości (podobnie do union) i może być używany jak union na jednej liście, z takimi samymi rezultatami.
4) Praca na każdej wartości w tablicy:

var a, tablica;
// Jakiś tam kod
tablica: = [John, Joan, Bobby];
for a in list do
begin
 if (not IsDead (a)) then
   KillUnit (a);
end;

Każdy żyjący, znajdujący się na tablicy zostanie zabity.

Tablice, matematyka, porównania

Jeśli używamy tablic w matematycznych działaniach, tak jak tu:

[1, 3] * [9, 3, 7] + [11]

to wartością tablicy jest jej rozmiar; ile wartości zawiera. Więc wynikiem powyższego kodu jest 2 * 3 + 1 = 7
To samo się stanie, jeśli porównamy tablicę z liczbą całkowitą, np.:

[1, 5, 3, 4, 0] = 5 //tablica zawiera 5 wartości więc równanie jest prawdziwe

Jeśli jednak porównamy dwie tablice, będą one traktowane jako równe tylko wówczas, gdy będą miały ten sam rozmiar i te same wartości, na tych samych pozycjach.

dobrze:
[1, 2, 3, 4] = [1, 2, 3, 4]
źle:
[1, 2, 3, 4] = [1, 2, 3, 4, 4]
[1, 2, 3, 4] = [2, 1, 4, 3]

Modyfikowanie tablic na podstawie indexu

Personal tools
Clanbase