Table[f[i],{i,n}] - tworzy listę długości n
Transkrypt
Table[f[i],{i,n}] - tworzy listę długości n
LISTY , WEKTORY
Listę tworzymy przez umieszczenie obiektów w nawiasach klamrowych i oddzielenie ich
przecinkami , np. {1,2,3} . Dowolnej liście można nadać nazwę, np. b={0,3,4,5} . Wykonując
działania arytmetyczne na listach , korzystamy z nazwy listy.
Listy możemy tworzyć również przez polecenie Table , Array i Range :
Table[f[i],{i,n}] - tworzy listę długości n (gdy n jest liczbą naturalną) o elementach
równych f[i] , z i zmieniającym się od 1 do n
Table[f[i],{i,n1,n2}] - tworzy listę o elementach równych f[i] , z i zmieniającym się od n1
do n2 co jeden
Table[f[i],{i,n1,n2,di}] - tworzy listę o elementach równych f[i] , z i zmieniającym się od
n1 do n2 z krokiem równym di
Array[a,n] - tworzy listę długości n w postaci : {a[1],a[2]..a[n]}
Range[n] - tworzy listę postaci : {1,2,3...n}
Range[n1,n2] - tworzy listę postaci {n1,n1+1,.. n2}
Range[n1,n2,d] - tworzy listę postaci {n1,n1+d,..n2
W instrukcji Array argument określający kiedy tworzenie listy ma się zakończyć musi być
liczba naturalną. W pozostałych przypadkach takiego wymogu nie ma.
Manipulowanie elementami listy
1. Pobieranie elementów listy:
2.
3.
Part[lista,i] lub lista[[i]]
- podaje i-ty element listy o nazwie lista
Part[lista,{i,j,..}] lub lista[[{i,j,..}]] - tworzy nowa listę z elementów o numerach i,j,..
Part[lista,-i] lub lista[[-i]]
-podaje i-ty element od końca listy
First[lista]
- podaje pierwszy element listy
Last[lista]
- podaje ostatni element listy
Pobieranie większej części listy:
Take[lista,i]
- tworzy nową listę z pierwszych i elementów
Take[lista,- i]
- tworzy nową listę z ostatnich i elementów
Take[lista,{i,j}]
- tworzy nowa listę z elementów od i-tego do j-tego
Rest[lista]
- tworzy nową listę z pominięciem pierwszego elementu
Drop[lista ,i]
- tworzy nowa listę z pominięciem pierwszych i- elementów
Delete[lista,i]
- tworzy nową listę z pominięciem i-tego elementu
Delete[lista,{i,j,..}]- tworzy nową listę z usuniętymi elementami o numerach i,j,..
dodawanie elementów do listy:
Prepend[lista,element] - tworzy nową listę poprzez dodanie elementu na początek
podanej listy
PrependTo[lista,element] - dodanie elementu na początek listy, wynik zapisany pod
zmienną lista
Append[lista,element] - tworzy nową listę przez dodanie elementu na koniec podanej
listy
AppendTo[lista,element] - dodaje element na koniec listy, wynik zapisuje pod zmienna
Lista
Insert[lista,element,i] - dodawany do listy element umieszcza na pozycji i
Insert[lista,element,{{i},{j},..}] - dodawany element umieszcza kolejno na pozycjach i,j,..
4. zmiana wartości elementu listy:
Part[lista,i]=wartość lub lista[[i]] - zmienia wartość i-tego elementu listy o nazwie
lista
ReplacePart[lista,nowawartość,i]
- zmienia wartość i-tego elementu listy
ReplacePart[lista, nowawartość,{i,j,..}]- zmienia wartość elementów na pozycji i,j,..
Instrukcje opisujące listy
Lenght[lista] - podaje długość (liczbę elementów) listy
Dimensions[lista] - podaje wymiar listy
Count[lista,element] - podaje liczbę wystąpień elementu na liście
Position[lista, element] - podaje numery pozycji listy , na których występuje podany
element
TableForm[lista] - wypisuje listę w formie tablicy
ColumnForm[lista] - wypisuje listę w formie kolumny
Operacje matematyczne na listach :
Map[instrukcja,lista] - stosuje instrukcję do każdego elementu listy
MapAt[instrukcja,lista,i] - stosuje instrukcję do i-tego elementu listy
Apply[Plus,lista] - dodaje wszystkie elementy listy
Apply[Times,lista] - mnoży wszystkie elementy listy
Listy złożone :
Są to listy , których elementami są inne listy. Szczególnym przypadkiem list złożonych są
macierze. Instrukcje służące do zamiany listy prostej w złożoną :
Partition[lista,i] - tworzy listę złożoną , której elementami są i-elementowe listy
utworzone z kolejnych elementów podanej listy
Partition[lista,i,j] - tworzy listę złożoną , której elementami są i-elementowe listy
utworzone z kolejnych elementów podanej listy z przesunięciem o j elementów
Flatten[lista] – opuszcza wewnętrzne nawiasy , czyli upraszcza listy
Flatten[lista,i] – opuszcza „i” pierwszych poziomów nawiasów
Wektory - są reprezentowane w programie przez listy. Do tworzenia wektorów można
wykorzystać te same instrukcje co do tworzenia list. Np. wektor w przestrzeni
trójwymiarowej : v ={x,y,z}
Iloczyn skalarny wektorów oznaczamy kropką ( taką samą jak na końcu zdania).
{x,y}.{p,q} lub komenda Dot[lista1,lista2]
Iloczyn wektorowy Cross[lista1,lista2]
Jeżeli chcemy sprawdzić czy zmienna jest wektorem , używamy instrukcji:
VectorQ[zmienna]