summaryrefslogtreecommitdiffstats
path: root/tde-i18n-pl/docs/kdeedu/kturtle/programming-reference.docbook
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-12-03 11:05:10 -0600
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-12-03 11:05:10 -0600
commitf7e7a923aca8be643f9ae6f7252f9fb27b3d2c3b (patch)
tree1f78ef53b206c6b4e4efc88c4849aa9f686a094d /tde-i18n-pl/docs/kdeedu/kturtle/programming-reference.docbook
parent85ca18776aa487b06b9d5ab7459b8f837ba637f3 (diff)
downloadtde-i18n-f7e7a923aca8be643f9ae6f7252f9fb27b3d2c3b.tar.gz
tde-i18n-f7e7a923aca8be643f9ae6f7252f9fb27b3d2c3b.zip
Second part of prior commit
Diffstat (limited to 'tde-i18n-pl/docs/kdeedu/kturtle/programming-reference.docbook')
-rw-r--r--tde-i18n-pl/docs/kdeedu/kturtle/programming-reference.docbook1727
1 files changed, 0 insertions, 1727 deletions
diff --git a/tde-i18n-pl/docs/kdeedu/kturtle/programming-reference.docbook b/tde-i18n-pl/docs/kdeedu/kturtle/programming-reference.docbook
deleted file mode 100644
index d7120b30274..00000000000
--- a/tde-i18n-pl/docs/kdeedu/kturtle/programming-reference.docbook
+++ /dev/null
@@ -1,1727 +0,0 @@
-<!--Dear translator: please NEVER translate the id or anything inside the tags as they are needed in english by the application
- Thanks a lot in advance.-->
-<chapter id="reference">
-<title
->Dokumentacja programistyczna języka &logo; &kturtle;</title>
-<para
->Poniżej znajduje się dokumentacja języka &logo; używanego przez &kturtle;. W tym rozdziale najpierw zostaną krótko wymienione <link linkend="different-instructions"
->różne typy instrukcji</link
->. Następnie zostaną objaśnione <link linkend="commands"
->komendy</link
->. Po nich <link linkend="containers"
->kontenery</link
->, <link linkend="math"
->terminy matematyczne</link
->, <link linkend="questions"
->zapytania</link
-> oraz <link linkend="controlling-execution"
->kontrolery wykonawcze</link
->. Na końcu pokazane zostanie jak za pomocą <link linkend="learn"
->nauczyciela</link
-> tworzyć własne komendy.</para>
-
-<sect1 id="different-instructions">
-<title
->Różne typy instrukcji</title>
-<para
->Jak każdy inny język programowania ,LOGO posiada różne typy wyrazów i symboli. Oto różnice pomiędzy typami i krótkie wyjaśnienia.</para>
-
-<sect2 id="command">
-<title
->Komendy</title>
-<para
->Przy użyciu komend wskazujemy &kturtle; czynności do wykonania. Niektóre z komend potrzebują argumentów wejściowych a inne wyjściowych. <screen
-># naprzód to komenda z argumentem wejściowym, tutaj jest to liczba 100:
-naprzód 100
-</screen>
-</para>
-<para
->Szczegółowy opis wszystkich komend &kturtle; znajduje się <link linkend="commands"
->tutaj</link
->.</para>
-</sect2>
-
-<sect2 id="number">
-<title
->Liczby</title>
-<para
->Każdy użytkownik z pewnością wie trochę o liczbach. Sposób w jaki liczby używane są przez &kturtle; niezbyt różni się od języka mówionego czy matematyki. </para>
-<para
->Mamy liczby naturalne: <userinput
->0</userinput
->, <userinput
->1</userinput
->, <userinput
->2</userinput
->, <userinput
->3</userinput
->, <userinput
->4</userinput
->, <userinput
->5</userinput
->, itd. Liczby ujemne: <userinput
->-1</userinput
->, <userinput
->-2</userinput
->, <userinput
->-3</userinput
->, itd. Oraz liczby dziesiętne np: <userinput
->0.1</userinput
->, <userinput
->3.14</userinput
->, <userinput
->33.3333</userinput
->, <userinput
->-5.05</userinput
->, <userinput
->-1.0</userinput
->. </para>
-<para
->Liczby mogą być używane w <link linkend="math"
->obliczeniach matematycznych</link
-> oraz <link linkend="questions"
->zapytaniach</link
->. Mogą być również wkładane do <link linkend="containers"
->kontenerów</link
->.</para>
-<para
->W <link linkend="the-code-editor"
->edytorze kodów</link
-> liczby są <glossterm
->podświetlone</glossterm
-> na niebiesko.</para>
-</sect2>
-
-<sect2 id="string">
-<title
->Łańcuchy znaków</title>
-<para
->Najpierw przykład: <screen>
-pisz "Cześć, Jestem łańcuchem znaków."
-</screen
-> W tym przykładzie <userinput
->pisz</userinput
-> jest komendą a <userinput
->"Cześć, Jestem łańcuchem znaków."</userinput
-> łańcuchem znaków. Łańcuch zaczyna i kończy się znakiem <userinput
->"</userinput
->, dzięki niemu &kturtle; rozpoznaje łańcuch znakowy.</para>
-<para
->Łańcuchy mogą być wkładane do <link linkend="containers"
->kontenerów</link
->. ale nie mogą być używane w <link linkend="math"
->obliczeniach matematycznych</link
-> i <link linkend="questions"
->zapytaniach</link
->.</para>
-<para
->W <link linkend="the-code-editor"
->edytorze kodów</link
-> liczby są <glossterm
->podświetlone</glossterm
-> na kolor ciemnoczerwony.</para>
-</sect2>
-
-
-<sect2 id="name">
-<title
->Nazwy</title>
-<para
->Przy użyciu języka programowania &logo; tworzy się nowe obiekty. Pisząc programy często potrzebować będziemy <link linkend="containers"
->kontenerów</link
-> a w niektórych przypadkach <link linkend="learn"
->nauczyciela</link
-> do tworzenia nowych komend. Tworząc <link linkend="containers"
->kontener</link
-> lub nową komendę za pomocą <link linkend="learn"
->nauczyciela</link
-> należy określić ich nazwę.</para>
-<para
->Można wybrać dowolną nazwę, pod warunkiem, iż nie odnosi się ona już do niczego. Np. nie można nazwać kontenera <link linkend="forward"
->naprzód</link
->, jako, że jest to nazwa komendy. <screen>
-# tutaj naprzód jest używane jako kontener, ale ta nazwa jest już używana jako komenda
-# zatem pokaże się komunikat błędu:
-naprzód = 20
-
-# natomiast działać będzie:
-naprzód 20
-</screen
-> Nazwy mogą zawierać tylko litery, cyfry oraz linie poziome (_). ale muszą zaczynać się od litery. </para>
-<para
->Więcej przykładów oraz dokładniejsze wyjaśnienie znajduje się w dokumentacji <link linkend="containers"
->kontenerów</link
-> oraz <link linkend="learn"
->nauczyciela</link
->. </para>
-</sect2>
-
-<sect2 id="assignment">
-<title
->Przypisania</title>
-<para
->Przypisań dokonuje się za pomocą symbolu <userinput
->=</userinput
->. W językach programowania zaleca się czytanie symbolu <userinput
->=</userinput
-> nie jako równa się ale jako oznacza. Zwrot równa się bardziej odpowiada symbolowi <userinput
->==</userinput
-> będącemu <link linkend="questions"
->zapytaniem</link
->.</para>
-<para
->Przypisań dokonuje się z dwóch powodów, (1) by dodać zawartość do <link linkend="containers"
->kontenerów</link
->, oraz (2) by zmodyfikować zawartość kontenerów. Na przykład: <screen
->x = 10
-# kontener x zawiera teraz liczbę 10
-W = "Mój wiek to: "
-# kontener W zawiera teraz łańcuch"Mój wiek to: "
-# poniższa instrukcja drukuje na płótnie zawartość kontenerów 'W' i 'x'
-pisz W + x
-</screen>
-</para>
-<para
->Więcej przykładów znajduje się z sekcji wyjaśniającej <link linkend="containers"
->kontenery</link
->.</para>
-</sect2>
-
-<sect2 id="math-symbols">
-<title
->Symbole matematyczne</title>
-<para
->&kturtle; rozpoznaje wszystkie podstawowe symbole matematyczne: plus (<userinput
->+</userinput
->), minus (<userinput
->-</userinput
->), mnożenie (<userinput
->*</userinput
->), dzielenie (<userinput
->/</userinput
->) oraz nawiasy <userinput
->(</userinput
-> i <userinput
->)</userinput
->.</para>
-<para
->Dokładniejsze wyjaśnienie i więcej przykładów znajduje się w sekcji <link linkend="math"
->matematyka</link
->.</para>
-</sect2>
-
-<sect2 id="question">
-<title
->Zapytania</title>
-<para
->Możemy zadać proste pytania, na które możliwe są jedynie odpowiedzi 'prawda' lub 'fałsz'.</para>
-<para
->Użycie pytań jest dokładniej wyjaśnione w sekcji <link linkend="questions"
->zapytania</link
->.</para>
-</sect2>
-
-<sect2 id="questions-glue">
-<title
->Wyrazy łączące pytania</title>
-<para
->Zapytania mogą być składane razem dzięki tak zwanym wyrazom łączącym. Takimi wyrazami są <userinput
->i</userinput
->, <userinput
->lub</userinput
->, oraz: <userinput
->nie</userinput
->.</para>
-<para
->Użycie wyrazów łączących pytania wyjaśnione jest w sekcji <link linkend="question-glue"
->Łączenie pytań</link
->.</para>
-</sect2>
-
-
-<sect2 id="comment">
-<title
->Komentarze</title>
-<para
->Komentarzami są linie zaczynające się od <userinput
->#</userinput
->. Na przykład: <screen>
-# to jest komentarz!
-pisz "to nie jest komentarz"
-# poprzednia linia nie jest komentarzem natomiast wcześniejsza jest:
-# pisz "to nie jest komentarz"
-</screen
-> Do kodu możemy dodawać komentarze dla nas bądź dla innych czytających. Komentarzy używa się do: (1) dodawania krótkich opisów programu, (2) wyjaśniania jak działa dany fragment kodu, oraz (3) wykomentowania linii kodu, które powinny być ignorowane (chwilowo) (patrz ostatnia linia przykładu).</para>
-<para
->W <link linkend="the-code-editor"
->edytorze kodów</link
-> komentarze są <glossterm
->podświetlone</glossterm
-> na kolor ciemnożółty.</para>
-</sect2>
-
-</sect1>
-
-
-<sect1 id="commands">
-<title
->Komendy</title>
-<para
->Używając komend mówimy żółwiowi lub &kturtle; by wykonywał konkretne polecenia. Niektóre komendy wymagają argumentów wyjściowych a niektóre dają coś na wyjściu. W tej sekcji wyjaśniamy działanie wszystkich komend używanych przez &kturtle;. Należy zauważyć, że wszystkie omawiane tutaj wbudowane komendy są w <link linkend="the-code-editor"
->edytorze kodu</link
-> <glossterm
->podświetlone</glossterm
-> na kolor ciemnozielony, co pomaga je rozróżnić.</para>
-
-<sect2 id="moving-the-turtle">
-<title
->Poruszanie żółwia</title>
-<para
->Do poruszania żółwia po ekranie służy kilka komend</para>
-
-<sect3 id="forward">
- <title
->naprzód (np)</title>
- <variablelist>
- <varlistentry
->
- <term
->naprzód</term>
- <listitem
-><para
-><screen
->naprzód X</screen>
-<userinput
->naprzód</userinput
-> przesuwa żółwia do przodu o X pikseli. Gdy ołówek jest skierowany w dół żółw zostawia ślad. <userinput
->naprzód</userinput
-> może być użyty za pomocą skrótu <userinput
->np</userinput
-></para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="backward">
- <title
->wstecz (ws)</title>
- <variablelist>
- <varlistentry
->
- <term
->w tył</term>
- <listitem
-><para
-><screen
->wstecz X</screen>
-<userinput
->wstecz</userinput
-> przesuwa żółwia do tyłu o X pikseli. Gdy ołówek jest skierowany w dół żółw zostawia ślad. <userinput
->wstecz</userinput
-> może być użyty za pomocą skrótu <userinput
->ws</userinput
->.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="turnleft">
- <title
->obróć_w_lewo (lw)</title>
- <variablelist>
- <varlistentry
->
- <term
->skręć w lewo</term>
- <listitem
-><para
-><screen
->obróć_w_lewo X</screen>
-<userinput
->obróć_w_lewo</userinput
-> powoduje, że żółw skręca w lewo o X stopni. <userinput
->obróć_w_lewo</userinput
-> może być użyty za pomocą skrótu <userinput
->lw</userinput
->.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="turnright">
- <title
->obróć_w_prawo (pw)</title>
- <variablelist>
- <varlistentry
->
- <term
->skręć w prawo</term>
- <listitem
-><para
-><screen
->obróć_w_prawo X</screen>
-<userinput
->obróć_w_prawo</userinput
-> powoduje, że żółw skręca w prawo o X stopni. <userinput
->obróć_w_prawo</userinput
-> może być użyty za pomocą skrótu <userinput
->pw</userinput
->.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="direction">
- <title
->kierunek (kie)</title>
- <variablelist>
- <varlistentry
->
- <term
->kierunek</term>
- <listitem
-><para
-><screen
->kierunek X</screen>
-<userinput
->kierunek</userinput
-> ustawia kierunek ruchu żółwia na X stopni licząc od zera, nie wiąże się to z poprzednim kierunkiem ruchu żółwia. <userinput
->kierunek</userinput
-> może być użyty za pomocą skrótu <userinput
->kie</userinput
-></para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="center">
- <title
->środek</title>
- <variablelist>
- <varlistentry
->
- <term
->środek</term>
- <listitem
-><para
-><screen
->środek</screen>
-<userinput
->środek</userinput
-> przesuwa żółwia na środek płótna.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="go">
- <title
->idź</title>
- <variablelist>
- <varlistentry
->
- <term
->idź</term>
- <listitem
-><para
-><screen
->idź X,Y</screen>
-Komenda <userinput
->idź</userinput
-> przesuwa żółwia na wskazaną lokalizację na płótnie. Ta lokalizacja to X <glossterm linkend="pixels"
->pikseli</glossterm
-> od lewej strony płótna oraz Y <glossterm linkend="pixels"
->pikseli</glossterm
-> od góry płótna. Użycie komendy <userinput
->idź</userinput
-> nie powoduje, że żółw rysuje linie.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="gox">
- <title
->idźx</title>
- <variablelist>
- <varlistentry
->
- <term
->idźx</term>
- <listitem
-><para
-><screen
->idźx X</screen>
-<userinput
->idźx</userinput
-> powoduje przesunięcie żółwia do pozycji X <glossterm linkend="pixels"
->pikseli</glossterm
-> od lewej strony płótna, podczas gdy wysokość pozostaje bez zmiany.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="goy">
- <title
->idźy</title>
- <variablelist>
- <varlistentry
->
- <term
->idźy</term>
- <listitem
-><para
-><screen
->idźy Y</screen>
-<userinput
->idźy</userinput
-> powoduje przesunięcie żółwia do pozycji Y <glossterm linkend="pixels"
->pikseli</glossterm
-> od góry płótna, podczas gdy odległość od lewego brzegu pozostaje bez zmian.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-</sect2>
-
-<sect2 id="pen">
-<title
->Żółw posiada ołówek</title>
-<para
->Żółw posiada ołówek, który rysuje linię gdy żółw się przesuwa. Istnieje kilka komend zarządzających ołówkiem. W tej sekcji wyjaśniamy te komendy.</para>
-<sect3 id="penup">
- <title
->podnieś (pod)</title>
- <variablelist>
- <varlistentry
->
- <term
->podnieś</term>
- <listitem
-><para
-><screen
->podnieś</screen>
-<userinput
->podnieś</userinput
-> podnosi ołówek z płótna. Gdy ołówek jest <quote
->podniesiony</quote
-> nie będzie rysowana linia gdy porusza się żółw. Zobacz także <userinput
->opuść</userinput
->. <userinput
->podnieś</userinput
-> może być użyte za pomocą skrótu <userinput
->pod</userinput
->.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="pendown">
- <title
->opuść (opu)</title>
- <variablelist>
- <varlistentry
->
- <term
->opuść</term>
- <listitem
-><para
-><screen
->opuść</screen>
-<userinput
->opuść</userinput
-> kładzie ołówek na płótnie. Gdy ołówek jest <quote
->położony</quote
-> będzie rysowana linia gdy porusza się żółw. Zobacz także <userinput
->podnieś</userinput
->. <userinput
->opuść</userinput
-> może być użyte za pomocą skrótu <userinput
->opu</userinput
->.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="setpenwidth">
- <title
->ustaw_grubość_pisaka (ugp)</title>
- <variablelist>
- <varlistentry
->
- <term
->ustaw_grubość_pisaka</term>
- <listitem
-><para
-><screen
->ustaw_grubość_pisaka X</screen>
-<userinput
->ustaw_grubość_pisaka</userinput
-> ustawia grubość ołówka (grubość rysowanej linii) na X <glossterm linkend="pixels"
->pikseli</glossterm
->. <userinput
->ustaw_grubość_pisaka</userinput
-> może być użyte za pomocą skrótu<userinput
->ugp</userinput
->.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="setfgcolor">
- <title
->kolor_pisaka (kp)</title>
- <variablelist>
- <varlistentry
->
- <term
->kolor ołówka</term>
- <listitem
-><para
-><screen
->kolor_pisaka R,G,B</screen>
-<userinput
->kolor_pisaka</userinput
-> ustawia kolor ołówka. <userinput
->kolor_pisaka</userinput
-> przyjmuje <glossterm linkend="rgb"
->kombinację RGB</glossterm
-> jako argument wejściowy. <userinput
->kolor_pisaka</userinput
-> może być użyty za pomocą skrótu <userinput
->kp</userinput
->.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-</sect2>
-
-<sect2 id="canvas">
-<title
->Komendy do zarządzania płótnem</title>
-<para
->Istnieje kilka komend sterujących płótnem.</para>
-<sect3 id="resizecanvas">
- <title
->przeskaluj_tło (pt)</title>
- <variablelist>
- <varlistentry>
- <term
->przeskaluj_tło</term>
- <listitem
-><para
-><screen
->przeskaluj_tło X,Y</screen>
-Za pomocą komendy <userinput
->przeskaluj_tło</userinput
-> można ustawić rozmiar płótna. Komenda przyjmuje jako argumenty wejściowe liczby X i Y, gdzie X jest nową szerokością płótna w <glossterm linkend="pixels"
->pikselach</glossterm
->, a Y jest nową wysokością płótna w <glossterm linkend="pixels"
->pikselach</glossterm
->. <userinput
->przeskaluj_tło</userinput
-> może być użyte za pomocą skrótu <userinput
->pt</userinput
->.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="setbgcolor">
- <title
->kolor_tła (kt)</title>
- <variablelist>
- <varlistentry
->
- <term
->kolor_tła</term>
- <listitem
-><para
-><screen
->kolor_tła R,G,B</screen>
-Komenda <userinput
->kolor_tła</userinput
-> ustawia kolor płótna. <userinput
->kolor_tła</userinput
-> przyjmuje <glossterm linkend="rgb"
->kombinację RGB</glossterm
-> jako argument wejściowy. <userinput
->kolor_tła</userinput
-> może być użyty za pomocą skrótu <userinput
->kt</userinput
->.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="wrapon">
- <title
->zawijaj</title>
- <variablelist>
- <varlistentry
->
- <term
->zawijaj</term>
- <listitem
-><para
-><screen
->zawijaj</screen>
-Przy pomocy komendy <userinput
->zawijaj</userinput
-> można <quote
->włączyć</quote
-> <glossterm linkend="wrapping"
->zawijanie</glossterm
-> płótna. Znaczenie terminu <glossterm linkend="wrapping"
->zawijania</glossterm
-> znajduje się w słowniku.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="wrapoff">
- <title
->nie_zawijaj</title>
- <variablelist>
- <varlistentry
->
- <term
->nie_zawijaj</term>
- <listitem
-><para
-><screen
->nie_zawijaj</screen>
-Przy pomocy komendy <userinput
->zawijaj</userinput
-> można <quote
->wyłączyć</quote
-> <glossterm linkend="wrapping"
->zawijanie</glossterm
-> płótna. Oznacza to, że żółw może wyjść poza płótno i <quote
->zgubić się</quote
->. Znaczenie terminu <glossterm linkend="wrapping"
->zawijania</glossterm
-> znajduje się w słowniku.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-</sect2>
-
-<sect2 id="clean">
-<title
->Komendy czyszczenia</title>
-<para
->Istnieją dwie komendy czyszczące płótno.</para>
-<sect3 id="clear">
- <title
->czyść (cs)</title>
- <variablelist>
- <varlistentry
->
- <term
->czyść</term>
- <listitem
-><para
-><screen
->czyść</screen>
-Komenda <userinput
->czyść</userinput
-> usuwa wszystkie rysunki z płótna. Pozostałe rzeczy zostają: pozycja i kąt ruchu żółwia, kolor płótna, widoczność żółwia, i rozmiar płótna. <userinput
->czyść</userinput
-> może być użyta za pomocą skrótu <userinput
->cs</userinput
->.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="reset">
- <title
->zeruj</title>
- <variablelist>
- <varlistentry
->
- <term
->zeruj</term>
- <listitem
-><para
-><screen
->zeruj</screen>
-Komenda<userinput
->zeruj</userinput
-> czyści bardziej dokładnie niż komenda <userinput
->czyść</userinput
->. Po wykonaniu komendy <userinput
->zeruj</userinput
-> płótno wygląda jak po rozpoczęciu pracy &kturtle;. Żółw umieszczony jest na środku ekranu, kolor płótna jest biały, żółw rysuje czarną linię.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-</sect2>
-
-<sect2 id="sprites">
-<title
->Żółw jest sprajtem</title>
-<para
->Najpierw krótkie wytłumaczenia czym jest sprajt: sprajty to małe obrazki, które mogą być przesuwane po ekranie, jak często to widzimy w grach komputerowych. Nasz żółwik jest także sprajtem. Dokładniejsze wyjaśnienie znajduje się w słowniku pod hasłem <glossterm linkend="sprites"
->sprajty</glossterm
->. </para>
-<para
->Poniżej znajduje się pełen przegląd komend do pracy ze sprajtami.</para>
-<para
->[Obecna wersja &kturtle; nie obsługuje jeszcze użycia sprajtów innych niż żółw. Kolejne wersje będą umożliwiać zmianę żółwia na coś zaprojektowanego przez siebie]</para>
-<sect3 id="spriteshow">
- <title
->pokaż</title>
- <variablelist>
- <varlistentry
->
- <term
->pokaż (pk)</term>
- <listitem
-><para
-><screen
->pokaż</screen>
-Komenda <userinput
->pokaż</userinput
-> sprawia, że żółw staje się widoczny (gdy był ukryty). <userinput
->pokaż</userinput
-> może być użyty za pomocą skrótu <userinput
->pk</userinput
->.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="spritehide">
- <title
->ukryj (uk)</title>
- <variablelist>
- <varlistentry
->
- <term
->ukryj</term>
- <listitem
-><para
-><screen
->ukryj</screen>
-Komenda <userinput
->ukryj</userinput
-> sprawia, że żółw jest ukrywany. Opcja używana gdy żółw nie pasuje do rysunku. <userinput
->pokaż</userinput
-> może być użyty za pomocą skrótu <userinput
->uk</userinput
->.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-</sect2>
-
-<sect2 id="writing">
-<title
->Czy żółw może pisać?</title>
-<para
->Odpowiedź brzmi: <quote
->tak</quote
->. Żółw potrafi pisać: wszystko co każe mu się pisać.</para>
-<sect3 id="print">
- <title
->pisz</title>
- <variablelist>
- <varlistentry
->
- <term
->pisz</term>
- <listitem
-><para
-><screen
->pisz X</screen>
-<userinput
->pisz</userinput
-> każe żółwiowi pisać podany tekst na płótnie. <userinput
->pisz</userinput
-> przyjmuje jako argumenty wejściowe liczy i łańcuchy znaków. Używając symbolu <quote
->+</quote
-> można <userinput
->napisać</userinput
-> kilka liczb i łańcuchów znaków. Oto mały przykład: <screen
->rok = 2003
-autor = "Cies"
-wypisuje autor + " rozpoczął projekt KTurtle w roku " + rok + " i dalej z radością nad nim pracuje!"
-</screen>
- </para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="fontsize">
- <title
->wielkość_czcionki</title>
- <variablelist>
- <varlistentry
->
- <term
->wielkość_czcionki</term>
- <listitem
-><para
-><screen
->wielkość_czcionki X</screen>
-<userinput
->wielkość_czcionki</userinput
-> ustawia rozmiar czcionki używany przy<userinput
->wypisywaniu</userinput
->. <userinput
->wielkość_czcionki</userinput
-> przyjmuje liczbę jako argument wejściowy. Rozmiar czcionki podawany jest w <glossterm linkend="pixels"
->pikselach</glossterm
->.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-</sect2>
-
-<sect2 id="random">
-<title
->Komenda rzucająca kości za użytkownika</title>
-<para
->Komenda rzucająca kości za użytkownika, nazywa się <userinput
->losowo</userinput
->, i jest bardzo użyteczna różnych przypadkach.</para>
- <variablelist>
- <varlistentry
->
- <term
->losowo</term>
- <listitem
-><para
-><screen
->losowo X,Y</screen>
-<userinput
->losowo</userinput
-> przyjmuje argumenty wejściowe i daje argumenty wyjściowe. Jako argumenty wejściowe wymagane są dwie liczby, pierwsza (X) określa minimum argumentu wyjściowego, natomiast druga (Y) określa maksimum. Argument wyjściowy jest losowo wybraną liczbą z przedziału ograniczonego przez podane minimum i maksimum. Oto przykład: <screen>
-powtórz 500 [
- x = losowo 1,20
- naprzód x
- obróć_w_lewo 10 - x
-]
-</screen
-> Używając komendy <userinput
->losowo</userinput
-> można dodać odrobiny chaosu do programu.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect2>
-
-<sect2 id="dialogs">
-<title
->Argumenty wejściowe i pomoc przez okna dialogowe</title>
-<para
->Okno dialogowe jest małym wyskakującym okienkiem, które zawiera pomoc dotyczącą argumentów wejściowych. &kturtle; posiada dwie komendy do okien dialogowych, mianowicie: <userinput
->wiadomość</userinput
-> i <userinput
->okno_wejścia</userinput
-></para>
-<sect3 id="message">
- <title
->wiadomość</title>
- <variablelist>
- <varlistentry
->
- <term
->wiadomość</term>
- <listitem
-><para
-><screen
->wiadomość X</screen>
-Komenda <userinput
->wiadomość</userinput
-> przyjmuje jako argument wejściowy <link linkend="string"
->łańcuch znaków</link
->. Pokazuje się okno dialogowe zawierające tekst z <link linkend="string"
->łańcucha</link
->. <screen
->rok = 2003
-autor = "Cies"
-wypisuje autor + " rozpoczął projekt KTurtle w roku " + rok + " i dalej z radością nad nim pracuje!"
-</screen>
- </para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-<sect3 id="inputwindow">
- <title
->okno_wejścia</title>
- <variablelist>
- <varlistentry
->
- <term
->okno_wejścia</term>
- <listitem
-><para
-><screen
->okno_wejścia X</screen>
-<userinput
->okno_wejścia</userinput
-> jako argument wejściowy przyjmuje <link linkend="string"
->łańcuch znaków</link
->. Pokazuje się wyskakujące okno dialogowe zawierające tekst z łańcucha, tak jak <link linkend="message"
->wiadomość</link
->. Dodatkowo dodaje to pole wejściowe do okna. Przez to pole użytkownik może wprowadzić <link linkend="number"
->liczbę</link
-> lub <link linkend="string"
->łańcuch</link
-> który może być przechowywany w <link linkend="containers"
->kontenerze</link
->. Na przykład <screen>
-wejście = okno_wejścia "Jaki jest Twój wiek?"
-wyjście = 2003 - wejście
-pisz "W 2003 będziesz mieć " + wyjście + " lat."
-</screen
-> Gdy użytkownik kasuje okno dialogowe, lub nie wprowadza niczego <link linkend="containers"
->kontener</link
-> jest opróżniany.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect3>
-</sect2>
-
-</sect1>
-
-
-
-<sect1 id="containers">
-<title
->Kontenery</title>
-<para
->Kontenery są znakami bądź wyrazami używanymi przez programistów do przechowywania liczb lub tekstu. Kontenery zawierające liczby nazywane są <link linkend="variables"
->zmiennymi</link
->, kontenery zawierające tekst nazywane są <link linkend="string"
->łańcuchami</link
->.</para>
-
-<para
->Kontenery nie używane nie zawierają niczego. Przykład: <screen>
-pisz N
-</screen
-> Nie zostanie wyświetlone nic. Jeżeli spróbujemy wykonać jakieś <link linkend="math"
->działanie matematyczne</link
-> z pustym kontenerem pojawi się komunikat błędu. </para>
-
-<sect2 id="variables">
-<title
->Zmienne: kontenery liczbowe</title>
-<para
->Rozpoczniemy od przykładu: <screen>
-x = 3
-pisz x
-</screen
-> W pierwszej linii litera <userinput
->x</userinput
-> staje się zmienną (kontenerem liczbowym). Jak widać wartość zmiennej <userinput
->x</userinput
-> ustawiona jest na 3. W drugiej linii wartość jest wypisywana.</para>
-<para
->Jeżeli chcielibyśmy wypisać znak <quote
->x</quote
-> powinniśmy napisać <screen
->pisz "x"
-</screen>
-</para>
-<para
->To było łatwe, teraz trudniejszy przykład: <screen>
-A = 2004
-B = 25
-C = A + B
-
-# kolejna komenda wyświetli "2029"
-pisz C
-wstecz 30
-# kolejna komenda wyświetli "2004 plus 25"
-pisz A + " plus " + B
-wstecz 30
-# kolejna komenda wyświetli "1979"
-pisz A - B
-</screen
-> W dwóch pierwszych linijkach zmienne <userinput
->A</userinput
-> i <userinput
->B</userinput
-> zostają ustawione na 2004 i 25. W trzeciej linii <userinput
->C</userinput
-> zostaje ustawiona jako <userinput
->A + B</userinput
->, co wynosi 2029. Reszta przykładu składa się z 3 komend <userinput
->pisz</userinput
-> z <userinput
->wstecz 30</userinput
-> pomiędzy. <userinput
->wstecz 30</userinput
-> zapewnia, że każde wyjście drukowane jest w nowej linii. W przykładzie można zaobserwować użycie zmiennych w <link linkend="math"
->obliczeniach matematycznych</link
->.</para>
-</sect2>
-
-<sect2 id="strings">
-<title
->Kontenery zawierające tekst (łańcuchy)</title>
-<para
->W kodzie programistycznym zwykły tekst rozpoczyna się i kończy zazwyczaj cudzysłowami. Do tej pory widzieliśmy: <screen>
-pisz "Cześć programisto!"
-</screen
-> Tekst jest ograniczony cudzysłowami. Kawałki tego tekstu nazywamy <link linkend="strings"
->łańcuchami</link
->.</para>
-<para
->Łańcuchy mogą być przechowywane w <link linkend="containers"
->kontenerach</link
-> tak jak <link linkend="number"
->liczby</link
->. Łańcuchy są bardzo podobne do zmiennych. Największą różnicą jest to, że zamiast liczb zawierają tekst. Z tego powodu łańcuchy nie mogą być używane w <link linkend="math"
->wyrażeniach matematycznych</link
-> i <link linkend="questions"
->pytaniach</link
->. Przykład użycia łańcuchów: <screen>
-x = "Cześć "
-imię = okno_wejścia "Podaj swoje imię..."
-pisz x + imię + ", jak się masz?"
-</screen
-> W pierwszej linii <userinput
->x</userinput
-> jest ustawiane jako <quote
->Cześć </quote
->. W drugiej linii łańcuch <userinput
->imię</userinput
-> jest ustawiany jako wyjście komendy <userinput
->okno_wejścia</userinput
->. W kolejnej linii program wypisuje kompozycję trzech linii na płótnie.</para>
-<para
->Program poprosi o podanie imienia. Po wprowadzeniu np. imienia <quote
->Paweł</quote
->, program wypisuje <quote
->Cześć Paweł jak się masz?</quote
->. Należy zauważyć, że plus (+) jest jedynym symbolem matematycznym używanym z łańcuchami.</para>
-</sect2>
-</sect1>
-
-<sect1 id="math">
-<title
->Czy żółw zna matematykę?</title>
-<para
->Tak, &kturtle; zna matematykę. Potrafi dodawać (+), odejmować (-), mnożyć (*), a także dzielić (/). Oto przykład, który korzysta ze wszystkich tych działań: <screen>
-a = 20 - 5
-b = 15 * 2
-c = 30 / 30
-d = 1 + 1
-pisz "a: "+a+", b: "+b+", c: "+c+", d: "+d
-</screen
-> Czy wiesz jakie wartości mają zmienne a, b, c oraz d? Proszę zauważyć <link linkend="assignment"
->przypisanie wartości zmiennej</link
-> za pomocą symbolu <userinput
->=</userinput
->.</para>
-<para
->Chcąc dokonać prostego obliczenia wpisujemy po prostu: <screen
->pisz 2004-12
-</screen
-></para>
-<para
->Teraz przykład z nawiasami: <screen>
-pisz ( ( 20 - 5 ) * 2 / 30 ) + 1
-</screen
-> Wyrażenia wewnątrz nawiasów obliczane są najpierw. W tym przykładzie, najpierw zostanie obliczone 20-5, później pomnożone 2, podzielone przez 30, i zostanie dodane 1(co daje 2).</para>
-</sect1>
-
-<sect1 id="questions">
-<title
->Zadawanie pytań, otrzymywanie odpowiedzi...</title>
-<para
-><link linkend="if"
-><userinput
->jeśli</userinput
-></link
-> i <link linkend="while"
-><userinput
->dopóki</userinput
-></link
-> są <link linkend="controlling-execution"
->instrukcjami sterującymi</link
-> które będą omawiane w następnej sekcji. W tej sekcji używamy instrukcji <link linkend="if"
-><userinput
->jeśli</userinput
-></link
-> by wyjaśnić zapytania.</para>
-<sect2 id="q">
-<title
->Zapytania</title>
-<para
->Przykład prostego pytania: <screen>
-x = 6
-jeśli x &gt; 5 [
- pisz "cześć"
-]
-</screen
-> Pytaniem w tym przykładzie jest <userinput
->x &gt; 5</userinput
-> . Jeżeli odpowiedź jest prawdziwa wykonywany jest kod w nawiasach. Zapytania są bardzo istotną częścią częścią programowania i są często używane z <link linkend="controlling-execution"
->instrukcjami sterującymi</link
->, jak np. <link linkend="if"
-><userinput
->jeśli</userinput
-></link
->. Wszystkie liczby i <link linkend="variables"
->zmienne</link
-> (kontenery liczbowe) mogą być porównywane ze sobą przy pomocy zapytań.</para>
-<para
->Poniżej znajdują się wszystkie możliwe pytania: <table>
-<title
->Typy zapytań</title>
-<tgroup cols="3">
-<tbody>
-<row>
-<entry
-><userinput
->a == b</userinput
-></entry>
-<entry
->równa się</entry>
-<entry
->odpowiedź jest <quote
->prawdą</quote
-> gdy <userinput
->a</userinput
-> równa się <userinput
->b</userinput
-></entry>
-</row>
-<row>
-<entry
-><userinput
->a != b</userinput
-></entry>
-<entry
->nie równe</entry>
-<entry
->odpowiedź jest <quote
->prawdą</quote
-> gdy <userinput
->a</userinput
-> nie równa się <userinput
->b</userinput
-></entry>
-</row>
-<row>
-<entry
-><userinput
->a &gt; b</userinput
-></entry>
-<entry
->większe niż</entry>
-<entry
->odpowiedź jest <quote
->prawdą</quote
-> gdy <userinput
->a</userinput
-> jest większe niż <userinput
->b</userinput
-></entry>
-</row>
-<row>
-<entry
-><userinput
->a &lt; b</userinput
-></entry>
-<entry
->mniejsze niż</entry>
-<entry
->odpowiedź jest <quote
->prawdą</quote
-> gdy <userinput
->a</userinput
-> jest mniejsze niż <userinput
->b</userinput
-></entry>
-</row>
-<row>
-<entry
-><userinput
->a &gt;= b</userinput
-></entry>
-<entry
->większe lub równe</entry>
-<entry
->odpowiedź jest <quote
->prawdą</quote
-> gdy <userinput
->a</userinput
-> jest większe lub równe <userinput
->b</userinput
-></entry>
-</row>
-<row>
-<entry
-><userinput
->a &lt;= b</userinput
-></entry>
-<entry
->mniejsze lub równe</entry>
-<entry
->odpowiedź jest <quote
->prawdą</quote
-> gdy <userinput
->a</userinput
-> mniejsze lub równe <userinput
->b</userinput
-></entry>
-</row>
-</tbody>
-</tgroup>
-</table>
-</para>
-<para
->W <link linkend="the-code-editor"
->edytorze kodu</link
-> pytania są <glossterm
->podświetlone</glossterm
-> na kolor jasno niebieski.</para
->
-</sect2>
-
-<sect2 id="question-glue">
-<title
->Łączniki pytań</title>
-<para
->Wyrazy łączące pytania umożliwiają łączenie kilku małych pytań w jedno duże. <screen>
-a = 1
-b = 5
-jeśli (a &lt; 5) i (b == 5) [
- pisz "cześć"
-]
-</screen
-> W tym przykładzie wyraz łączący <userinput
->i</userinput
-> jest użyty do połączenia dwóch pytań (<userinput
->a &lt; 5</userinput
->, <userinput
->b == 5</userinput
->). Jeżeli po jednej stronie <userinput
->i</userinput
-> odpowiedź będzie <quote
->fałszywa</quote
-> odpowiedź na całe pytanie będzie <quote
->fałszem</quote
->, gdyż używając wyrazu <userinput
->i</userinput
-> obie strony muszą być <quote
->prawdziwe</quote
-> by całe pytanie było <quote
->prawdą</quote
->. Proszę nie zapominać o użyciu nawiasów wokół pytań!</para>
-
-<para
->Poniżej znajduje się schematyczne wytłumaczenie: <table>
-<title
->Wyrazy łączące pytania</title>
-<tgroup cols="2">
-<tbody>
-<row>
-<entry
-><userinput
->i</userinput
-></entry>
-<entry
->By wyrażenie było prawdziwe obie strony muszą być prawdziwe</entry>
-</row>
-<row>
-<entry
-><userinput
->lub</userinput
-></entry>
-<entry
->By wyrażenie było prawdziwe, wystarczy by jedna strona była prawdziwa</entry>
-</row>
-<row>
-<entry
-><userinput
->nie</userinput
-></entry>
-<entry
->Wyjątkowy przypadek: działa jedynie z pytaniami! Zmienia prawdę na fałsz a fałsz na prawdę.</entry>
-</row>
-</tbody>
-</tgroup>
-</table>
-</para>
-<para
->W <link linkend="the-code-editor"
->edytorze kodu</link
-> wyrazy łączące pytania są <glossterm
->podświetlone</glossterm
-> na purpurowo.</para>
-
-<sect3 id="and">
-<title
->i</title>
-<para
->Gdy dwa pytania są połączone za pomocą <userinput
->i</userinput
->, obie strony <userinput
->i</userinput
-> muszą być prawdziwe by wynik był prawdziwy. Na przykład: <screen>
-a = 1
-b = 5
-jeśli ((a &lt; 10) i (b == 5)) i (a &lt; b) [
- pisz "cześć"
-]
-</screen
-> W tym przykładzie można zaobserwować pytanie zagnieżdżone w pytaniu.</para>
-</sect3>
-
-<sect3 id="or">
-<title
->lub</title>
-<para
->Gdy jedno z dwóch wyrażeń połączonych wyrazem <userinput
->lub</userinput
-> jest prawdziwe wynik jest prawdziwy. Na przykład: <screen>
-a = 1
-b = 5
-jeśli ((a &lt; 10) lub (b == 10)) lub (a == 0) [
- pisz "cześć"
-]
-</screen
-> W tym przykładzie można zaobserwować pytanie zagnieżdżone w pytaniu.</para>
-</sect3>
-
-<sect3 id="not">
-<title
->nie</title>
-<para
-><userinput
->nie</userinput
-> jest specjalnym wyrazem, gdyż odnosi się tylko do jednego wyrażenia. <userinput
->nie</userinput
-> zamienia fałsz na prawdę a prawdę na fałsz. Na przykład: <screen>
-a = 1
-b = 5
-jeśli nie ((a &lt; 10) i (b == 5)) [
- pisz "cześć"
-] przeciwnie [
- pisz "nie cześć ;-)"
-]
-</screen
-> W tym przykładzie wyrażenie jest prawdziwe, ale <userinput
->nie</userinput
-> zamienia je na fałszywe. Więc na końcu na<link linkend="the-canvas"
->płótnie</link
-><userinput
->"nie cześć ;-)"</userinput
->.</para>
-</sect3>
-
-</sect2>
-
-</sect1>
-
-<sect1 id="controlling-execution">
-<title
->Kontola wykonywania</title>
-<para
->Kontrolery wykonania umożliwiają użytkownikowi sterowanie wykonywaniem programu przez &mdash;.</para>
-<para
->Komendy kontrolujące wykonanie programu <glossterm
->podświetlone</glossterm
-> są na ciemnozielony kolor oraz mają pogrubioną czcionkę. Nawiasy kwadratowe używane są głównie z komendami kontrolującymi wykonanie i są <glossterm
->podświetlone</glossterm
-> na jasno zielono.</para>
-
-<sect2 id="wait">
-<title
->Zatrzymanie żółwia</title>
-<para
->Napisawszy jakiś program w &kturtle; można zauważyć, że żółw bardzo szybko wykonuje rysunki. Poniższa komenda zatrzymuje żółwia na określoną ilość czasu.</para>
- <variablelist>
- <varlistentry>
- <term
->czekaj</term>
- <listitem
-><para
-><screen
->czekaj X</screen>
-<userinput
->czekaj</userinput
-> zatrzymuje żółwia na X sekund. <screen>
-powtórz 36 [
- naprzód 5
- obróć_w_prawo 10
- czekaj 0.5
-]
-</screen
-> Kod powoduje rysowanie okręgu, ale po każdym kroku żółw zatrzymuje się na pół sekundy. Daje to wrażenie poruszania się żółwia w zwolnionym tempie.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect2>
-
-<sect2 id="if">
-<title
->Instrukcja "jeśli"</title>
- <variablelist>
- <varlistentry>
- <term
->jeśli</term>
- <listitem
-><para
-><screen
->jeśli <link linkend="questions"
->pytanie</link
-> [ ... ]</screen>
-Kod umieszczony w nawiasach jest wykonywany jedynie wtedy gdy <userinput
->jeśli</userinput
-> wartość <link linkend="questions"
->wyrażenia</link
-> jest <quote
->prawdziwa</quote
->. Więcej informacji na temat <link linkend="questions"
->wyrażeń</link
-> znaleźć można w <link linkend="questions"
->sekcji wyrażenia</link
->. <screen>
-x = 6
-jeśli x &gt; 5 [
- pisz "x jest większe niż pięć!"
-]
-</screen
-> W pierwszej linijce <userinput
->x</userinput
-> jest ustawiane jako 6. W drugiej linijce, znajduje się <link linkend="questions"
->pytanie</link
-> <userinput
->x &gt; 5</userinput
->. Jako, że wyrażenie to jest <quote
->prawdziwe</quote
-> kontroler wykonania <userinput
->jeśli</userinput
-> zezwala na wykonanie kodu w nawiasie.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect2>
-
-<sect2 id="while">
-<title
->Pętla "dopóki"</title>
- <variablelist>
- <varlistentry>
- <term
->dopóki</term>
- <listitem
-><para
-><screen
->dopóki <link linkend="questions"
->wyrażenie</link
-> [ ... ]</screen>
-Wyrażenie sterujące <userinput
->dopóki</userinput
-> jest podobne do <link linkend="if"
-><userinput
->jeśli</userinput
-></link
->. Różnica polega na tym, że <userinput
->dopóki</userinput
-> powtarza wykonywanie kodu między nawiasami dopóki wartość <link linkend="questions"
->wyrażenia</link
-> nie będzie <quote
->fałszywa</quote
->. <screen>
-x = 1
-dopóki x &lt; 5 [
- naprzód 10
- czekaj 1
- x = x + 1
-]
-</screen
-> W pierwszej linii zmienna <userinput
->x</userinput
-> ustawiana jest na 1. W drugiej linii znajduje się <link linkend="questions"
->wyrażenie</link
-> <userinput
->x &lt; 5</userinput
->. Jako, że wyrażenie to jest <quote
->prawdziwe</quote
-> wyrażenie sterujące <userinput
->dopóki</userinput
-> rozpoczyna wykonywanie kodu między nawiasami dopóki wartość <link linkend="questions"
->wyrażenia</link
-> nie będzie <quote
->fałszywa</quote
->. W tym przypadku kod w nawiasie zostanie wykonany 4 razy, gdyż po każdym wykonaniu piątej linii <userinput
->x</userinput
-> wzrasta o 1.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect2>
-
-<sect2 id="else">
-<title
->Jeżeli nie, innymi słowami: "przeciwnie"</title>
- <variablelist>
- <varlistentry>
- <term
->przeciwnie</term>
- <listitem
-><para
-><screen
->jeśli wyrażenie [ ... ] przeciwnie [ ... ]</screen>
-<userinput
->przeciwnie</userinput
-> może być użyte w dodatku do wyrażenia sterującego <link linkend="if"
-><userinput
->jeśli</userinput
-></link
->. Kod pomiędzy nawiasami po <userinput
->przeciwnie</userinput
-> zostanie tylko wtedy gdy wartość <link linkend="questions"
->wyrażenia</link
-> jest <quote
->fałszywa</quote
->. <screen>
-zeruj
-x = 4
-jeśli x &gt; 5 [
- pisz "x jest większe niż pięć!"
-] przeciwnie [
- pisz "x jest mniejsze niż 6!"
-]
-</screen
-> <link linkend="questions"
->Wyrażenie</link
-> sprawdza czy <userinput
->x</userinput
-> jest większy niż 5. Ponieważ w pierwszej linijce <userinput
->x</userinput
-> wynosi 4, wartość wyrażenia jest <quote
->fałszywa</quote
->. Oznacza to, że kod w nawiasach po <userinput
->przeciwnie</userinput
-> zostanie wykonany.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect2>
-
-<sect2 id="for">
-<title
->Pętla "dla", pętla zliczająca</title>
- <variablelist>
- <varlistentry>
- <term
->dla</term>
- <listitem
-><para
-><screen
->dla <userinput
->punkt początkowy</userinput
-> do <userinput
->punkt końcowy</userinput
-> [ ... ]</screen>
-Pętla <userinput
->dla</userinput
-> jest <quote
->pętlą zliczającą</quote
->, &ie; zlicza za użytkownika. <screen>
-dla x = 1 do 10 [
- pisz x * 7
- naprzód 15
-]
-</screen
-> Za każdym razem gdy kod w nawiasach jest wykonywany wartość zmiennej <userinput
->x</userinput
-> zwiększa się o 1, dopóki zmienna <userinput
->x</userinput
-> nie osiągnie wartości 10. Kod w nawiasach wypisuje wartość zmiennej <userinput
->x</userinput
-> pomnożonej przez 7. Po wykonaniu programu na płótnie będzie można zobaczyć tabele wielokrotności liczby 7.</para
-></listitem>
- </varlistentry>
- </variablelist>
-</sect2>
-
-</sect1>
-
-
-<sect1 id="learn">
-<title
->Tworzenie własnych komend za pomocą <quote
->nauczyciela</quote
-></title>
-<para
-><userinput
->nauczyciel</userinput
-> jest specjalną komendą, służącą do tworzenia własnych komend. Utworzone komendy mogą przyjmować argumenty <glossterm linkend="input-output"
->wejściowe</glossterm
-> i zwracać <glossterm linkend="input-output"
->argumenty wyjściowe</glossterm
->. Zobaczmy jak tworzone są nowe komendy: <screen>
-poznaj okrąg x [
- powtórz 36 [
- naprzód x
- obróć_w_lewo 10
- ]
-]
-</screen
-> Nowa komenda zostanie nazwana <userinput
->okrąg</userinput
->. <userinput
->okrąg</userinput
-> oczekuje jednego <glossterm linkend="input-output"
->argumentu wejściowego</glossterm
->, liczby określającej rozmiar okręgu. <userinput
->okrąg</userinput
-> nie zwraca żadnego <glossterm linkend="input-output"
->argumentu wyjściowego</glossterm
->. Komenda <userinput
->okrąg</userinput
-> może być teraz używana jak normalna komenda w reszcie kodu. Oto przykład: <screen
->poznaj okrąg X [
- powtórz 36 [
- naprzód X
- obróć_w_lewo 10
- ]
-]
-
-idź 30,30
-okrąg 20
-
-idź 40,40
-okrąg 50
-</screen>
-</para>
-<para
->W następnym przykładzie tworzona jest komenda zwracająca wartość. <screen>
-zeruj
-
-poznaj pomnóżPrzezSiebie n [
- r = n * 1
- r = n * n
- powrót r
-]
-i = okno_wejścia "Proszę wprowadzić liczbę i wcisnąć Enter"
-pisz i + " pomnożone przez siebie daje: " + pomnóżPrzezSiebie i
-</screen
-> W przykładzie tworzona jest komenda <userinput
->pomnóżPrzezSiebie</userinput
->. Argument wejściowy komendy jest mnożony przez siebie i zwracany, za pomocą komendy <anchor id="return"/><userinput
->powrót</userinput
->. Komenda <userinput
->powrót</userinput
-> umożliwia zwrócenie wartość z utworzonej własnej funkcji. </para>
-</sect1>
-
-</chapter>