Logo Komeniusz. Operacje na słowach i listach

Transkrypt

Logo Komeniusz. Operacje na słowach i listach
Słowniczek poleceń i funkcji Logomocji
Operacje na słowach i listach
•
Funkcje
testujemy
poprzedzając
ich
wywołanie
słowem
pokaŜ,
na
przykład
pokaŜ długość "kotek.
•
Danymi do większości poniŜszych funkcji moŜe być równieŜ postać, ale tutaj nie zajmujemy się
tym przypadkiem.
•
W Logo liczba jest szczególnym przypadkiem słowa, więc tam gdzie występuje słowo, moŜe
wystąpić teŜ liczba.
•
Niektóre procedury (słowo, lista, zdanie, pisz, wpisz, pokaŜ) działają na dowolnej liczbie
parametrów. Jeśli liczba parametrów jest inna niŜ standardowa, to całość, procedurę razem
z parametrami, bierzemy w nawiasy.
bo dana
dana to słowo lub lista
Wynikiem jest słowo bez ostatniego znaku lub lista bez
ostatniego elementu.
bp dana
dana to słowo lub lista
Wynikiem jest słowo bez pierwszego znaku lub lista bez
pierwszego elementu.
długość dana
dana to słowo lub lista
Wynikiem jest liczba elementów danej (znaków w słowie
lub elementów w liście).
pokaŜ bo "kotek
kote
pokaŜ bo [Ala ma psa]
[Ala ma]
pokaŜ bp "kotek
otek
pokaŜ bp [Ala ma psa]
[ma psa]
pokaŜ długość "kotek
5
pokaŜ długość [Ala ma kota]
3
pokaŜ długość [ [a b] [98 87] ]
2
be znak słowo
be dana lista
dana to słowo lub lista
Jeśli druga dana to słowo, wynikiem jest dane słowo z
usuniętymi wszystkimi wystąpieniami danego znaku.
Jeśli druga dana to lista, wynikiem jest ta lista
z usuniętymi wszystkimi elementami identycznymi jak
pierwsza dana.
pokaŜ be "a "abrakadabra
brkdbr
pokaŜ be 1 [ [1] [2] [3] ]
[ [1] [2] [3] ]
pokaŜ be 1 [1 2 3 1 2 3]
[2 3 2 3]
element liczba dana
dana to słowo lub lista
Pierwszy parametr to liczba naturalna, wynikiem jest
element występujący na pozycji o numerze równym
liczbie (znak w przypadku słowa, element listy
w przypadku listy).
pokaŜ element 4 "kotek
e
pokaŜ element 2 [lew łoś kot]
łoś
Operacje na słowach i listach
Strona 1
element? słowo1 słowo2
element? dana lista
dana to słowo lub lista
Wynikiem jest prawda, jeśli słowo1 wchodzi w skład
słowa2. W drugim przypadku wynikiem jest prawda jeśli
dana jest elementem listy.
liczba? dana
Wynikiem jest prawda jeśli dana jest liczbą.
W przeciwnym przypadku wynikiem jest fałsz.
lista? dana
Wynikiem jest prawda jeśli dana jest listą.
W przeciwnym przypadku wynikiem jest fałsz.
lista dana1 dana2
(lista dana1 dana2 ...)
dana to słowo lub lista
Wynikiem jest lista, której elementami są wszystkie dane.
zdanie dana1 dana2
(zdanie dana1 dana2 ...)
dana to słowo lub lista
Wynikiem jest lista składająca się z podanych danych.
Jeśli dana jest listą, to na listę wynikową wstawiona
zostaje bez nawiasów kwadratowych.
Zwróć uwagę na róŜnicę między funkcjami zdanie i
lista.
nak dana lista
nak słowo1 słowo2
dana to słowo lub lista
Wstawia daną na koniec listy. W drugim przypadku
wynikiem jest słowo utworzone przez połączenie słowa2 i
słowa1. WyraŜenie nak słowo1 słowo2 jest
równowaŜne z słowo słowo2 słowo1.
Operacje na słowach i listach
pokaŜ element? "a "trasa
prawda
pokaŜ element? "a "xyz
fałsz
pokaŜ element? "as [d tu as]
prawda
pokaŜ element? [ab] [ [a] [ab] [abc] ]
prawda
pokaŜ element? [ab] [ [a] [ba] [abc] ]
fałsz
pokaŜ liczba? 123
prawda
pokaŜ liczba? -123
prawda
pokaŜ liczba? "kot
fałsz
pokaŜ liczba? [1]
fałsz
pokaŜ liczba? [1 2 3]
fałsz
pokaŜ lista? "kotek
fałsz
pokaŜ lista? [kot mysz]
prawda
pokaŜ lista? pierw [kot mysz]
fałsz
pokaŜ lista? ost [ [kot] [lis] ]
prawda
pokaŜ lista [x y] "d
[[x y] d]
pokaŜ (lista "ab "bc "cd "de)
[ab bc cd de]
pokaŜ lista [ [1 lis] [2 kot] [3 mysz] ]
"Ŝółw
[ [ [1 lis] [2 kot] [3 mysz] ] Ŝółw]
pokaŜ zdanie [x y] "d
[x y d]
pokaŜ (zdanie "ab "bc "cd "de)
[ab bc cd de]
pokaŜ zdanie [ [1 lis] [2 kot] [3 mysz] ]
"Ŝółw
[ [1 lis] [2 kot] [3 mysz] Ŝółw]
pokaŜ nak "kot "łos
łoskot
pokaŜ nak "kot [noc dzień]
[noc dzień kot]
pokaŜ nak [a b] [x y]
[x y [a b] ]
Strona 2
nap dana lista
nap słowo1 słowo2
dana to słowo lub lista
Wstawia daną na początek listy. W drugim przypadku
wynikiem jest słowo utworzone przez połączenie słowa1 i
słowa2. WyraŜenie nap słowo1 słowo2 jest
równowaŜne z słowo słowo1 słowo2.
ost dana
dana to słowo lub lista
Wynikiem jest ostatni znak słowa lub ostatni element
listy.
pierw dana
dana to słowo lub lista
Wynikiem jest pierwszy znak słowa lub pierwszy element
listy.
pokaŜ nap "kot "łos
kotłos
pokaŜ nap "kot [noc dzień]
[kot noc dzień]
pokaŜ nap [a b] [x y]
[ [a b] x y]
pokaŜ ost "kot
t
pokaŜ ost [Ala ma psa]
psa
pokaŜ pierw "kot
k
pokaŜ pierw [Ala ma psa]
Ala
pisz dana
dana to słowo lub lista
(pisz dana1 dana2 ...)
Wypisuje daną na ekranie tekstowym i przenosi kursor do
następnego wiersza. Jeśli dana jest listą wypisana
zostanie zawartość listy.
wpisz dana
dana to słowo lub lista
(wpisz dana1 dana2 ...)
Wypisuje daną na ekranie tekstowym, kursor zostaje w
tej samym wierszu. Jeśli dana jest listą wypisana zostanie
zawartość listy.
pisz "Ala
Ala
pisz [Ala ma kota]
Ala ma kota
(pisz "Ala "ma "kota)
Ala ma kota
pokaŜ dana
pokaŜ "las
las
pokaŜ [las czas [nas was] ]
[las czas [nas was] ]
Wypisuje daną na ekranie tekstowym i przenosi kursor do
następnego wiersza. Jeśli dana jest listą wypisana
zostanie zawartość listy i nawiasy kwadratowe.
puste? dana
dana to słowo lub lista
Funkcja logiczna. Wynikiem jest prawda jeśli dana jest
pustym słowem lub pustą listą. W przeciwnym przypadku
wynikiem jest fałsz.
słowo słowo1 słowo2
(słowo słowo1 słowo2 ...)
Wynikiem jest słowo, utworzone przez złączenie
podanych słów. Przy większej od dwóch liczbie słów całe
polecenie bierzemy w nawiasy.
Operacje na słowach i listach
Tak jak wyŜej, tylko kursor zostaje w tej
samej linii.
pokaŜ puste?
fałsz
pokaŜ puste?
prawda
pokaŜ puste?
prawda
pokaŜ puste?
fałsz
pokaŜ puste?
prawda
pokaŜ puste?
prawda
"lis
bp bo "ab
bp bo [ala kot]
[ala pies kot]
"
[]
pokaŜ słowo "nie "wola
niewola
pokaŜ (słowo "ka "sz "tan)
kasztan
Strona 3
Wynikiem jest dana ze zmienioną losowo kolejnością
elementów. Jeśli dana jest listą i jakiś jej element jest
równieŜ listą, to jej elementy nie zostaną potasowane.
pokaŜ słowo? "kotek
prawda
pokaŜ słowo? [kot mysz]
fałsz
pokaŜ słowo? ost [kot mysz]
prawda
pokaŜ tasuj "hokuspokus
pskusuokho
pokaŜ tasuj [a b c d e]
[c a e d b]
pokaŜ tasuj [a [x y z] e]
[ [x y z] a e]
wynik dana
dana to słowo lub lista
Zatrzymuje wykonywanie funkcji i przekazuje wynik
(słowo, listę) do miejsca, gdzie wykonywana funkcja
została wywołana.
oto kwadrat :a
wynik :a * :a
juŜ
pokaŜ kwadrat 5
25
słowo? dana
Wynikiem jest prawda jeśli dana jest słowem.
W przeciwnym przypadku wynikiem jest fałsz.
tasuj dana
dana to słowo lub lista
zastąp liczba lista cokolwiek
Wynik jest taki jak druga dana, w której element liczba
został zastąpiony przez trzecią daną. To tylko jedna,
najczęściej stosowana postać tego polecenia.
wspak dana
dana to słowo lub lista
Wynikiem jest dana odwrócona wspak. Ostatni element
jest pierwszym, przedostatni drugim... itd
numel słowo dana
dana to słowo lub lista
Wynikiem jest liczba, która jest numerem pozycji, od
której zaczyna się (pierwsze) wystąpienie słowo w danej ,
w przeciwnym przypadku wynikiem jest liczba 0.
bezelnum liczba dana
dana to słowo lub lista
Wynikiem jest dana bez elementu o numerze równym
liczbie.
sortuj zdanie
Wynikiem jest zdanie składające się z tych samych słów,
co w danym zdaniu, uporządkowanych alfabetycznie. Jeśli
w zdaniu występują liczby (słowa numeryczne), to po
sortowaniu zdania poprzedzają one inne słowa.
Operacje na słowach i listach
pokaŜ zastąp 3 [ala ma dwa koty] "trzy
[ala ma trzy koty]
pokaŜ wspak "kotek
ketok
pokaŜ wspak [Ala ma kota]
[kota ma Ala]
pokaŜ numel "d "abcdedcba
4
pokaŜ numel "dom
[Ala ma dom i Ela ma dom]
3
pokaŜ numel "de "abcdedcba
4
pokaŜ numel "dc "abcdedcba
6
pokaŜ bezelnum 5 "ala
ala
pokaŜ bezelnum 1 "ala
la
pokaŜ bezelnum 3 [dom 23 Ela kotek1]
[dom 23 kotek1]
pokaŜ sortuj [Las dla nas]
[dla Las nas]
pokaŜ sortuj [k o t e k]
[e k k o t]
pokaŜ sortuj [Las 54 dla 120 3 nas]
[3 54 120 dla Las nas]
Strona 4

Podobne dokumenty