diff options
Diffstat (limited to 'tde-i18n-ru/docs/tdeedu/kturtle/programming-reference.docbook')
-rw-r--r-- | tde-i18n-ru/docs/tdeedu/kturtle/programming-reference.docbook | 1375 |
1 files changed, 295 insertions, 1080 deletions
diff --git a/tde-i18n-ru/docs/tdeedu/kturtle/programming-reference.docbook b/tde-i18n-ru/docs/tdeedu/kturtle/programming-reference.docbook index 3d8374fc55e..7d3e743963e 100644 --- a/tde-i18n-ru/docs/tdeedu/kturtle/programming-reference.docbook +++ b/tde-i18n-ru/docs/tdeedu/kturtle/programming-reference.docbook @@ -1,171 +1,58 @@ <!--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 ->Справочник &logo; для &kturtle;</title> -<para ->Эта глава начинается с краткого описания <link linkend="different-instructions" ->различных типов инструкций</link ->. Потом идёт подробное описание каждой <link linkend="commands" ->команды</link ->, затем описываются <link linkend="containers" ->контейнеры</link ->, <link linkend="math" ->математические операции</link ->, <link linkend="questions" ->ответы на вопросы</link -> и <link linkend="controlling-execution" ->операторы условного выполнения</link ->. В конце даётся несколько примеров создания собственных команд с помощью команды <link linkend="learn" ->выучи</link ->.</para> +<title>Справочник &logo; для &kturtle;</title> +<para>Эта глава начинается с краткого описания <link linkend="different-instructions">различных типов инструкций</link>. Потом идёт подробное описание каждой <link linkend="commands">команды</link>, затем описываются <link linkend="containers">контейнеры</link>, <link linkend="math">математические операции</link>, <link linkend="questions">ответы на вопросы</link> и <link linkend="controlling-execution">операторы условного выполнения</link>. В конце даётся несколько примеров создания собственных команд с помощью команды <link linkend="learn">выучи</link>.</para> <sect1 id="different-instructions"> -<title ->Типы инструкций</title> -<para ->Как и любой другой язык, Logo содержит различные типы слов и символов. Ниже вкратце объясняется различие между типами.</para> +<title>Типы инструкций</title> +<para>Как и любой другой язык, Logo содержит различные типы слов и символов. Ниже вкратце объясняется различие между типами.</para> <sect2 id="command"> -<title ->Команды</title> -<para ->Используя команды, вы предписываете Черепашке или &kturtle; выполнить какое-либо действие. Некоторые команды нуждаются во входных параметрах, некоторые возвращают результат. В данном разделе объясняются все команды, используемые в KTurtle. <screen -># вперёд - это команда, c параметром, в нашем случае — это 100: +<title>Команды</title> +<para>Используя команды, вы предписываете Черепашке или &kturtle; выполнить какое-либо действие. Некоторые команды нуждаются во входных параметрах, некоторые возвращают результат. В данном разделе объясняются все команды, используемые в KTurtle. <screen># вперёд - это команда, c параметром, в нашем случае — это 100: вперёд 100 </screen> </para> -<para ->Подробное описание всех команд, поддерживаемых &kturtle;, находится <link linkend="commands" ->здесь</link ->.</para> +<para>Подробное описание всех команд, поддерживаемых &kturtle;, находится <link linkend="commands">здесь</link>.</para> </sect2> <sect2 id="number"> -<title ->Числа</title> -<para ->Числа, используемые с &kturtle;, не отличаются от математических. </para> -<para ->В Logo есть натуральные числа: <userinput ->0</userinput ->, <userinput ->1</userinput ->, <userinput ->2</userinput ->, <userinput ->3</userinput ->, <userinput ->4</userinput ->, <userinput ->5</userinput ->, ...; отрицательные: <userinput ->-1</userinput ->, <userinput ->-2</userinput ->, <userinput ->-3</userinput ->, ...; и десятичные дроби: <userinput ->0.1</userinput ->, <userinput ->3.14</userinput ->, <userinput ->33.3333</userinput ->, <userinput ->-5.05</userinput ->, <userinput ->-1.0</userinput ->. </para> -<para ->Числа используются в <link linkend="math" ->математических расчётах</link -> и <link linkend="questions" ->вопросах</link ->. они могут помещаться в <link linkend="containers" ->контейнеры</link ->.</para> -<para ->Числа <glossterm ->выделяются</glossterm -> синим цветом в <link linkend="the-code-editor" ->редакторе кода</link ->.</para> +<title>Числа</title> +<para>Числа, используемые с &kturtle;, не отличаются от математических. </para> +<para>В Logo есть натуральные числа: <userinput>0</userinput>, <userinput>1</userinput>, <userinput>2</userinput>, <userinput>3</userinput>, <userinput>4</userinput>, <userinput>5</userinput>, ...; отрицательные: <userinput>-1</userinput>, <userinput>-2</userinput>, <userinput>-3</userinput>, ...; и десятичные дроби: <userinput>0.1</userinput>, <userinput>3.14</userinput>, <userinput>33.3333</userinput>, <userinput>-5.05</userinput>, <userinput>-1.0</userinput>. </para> +<para>Числа используются в <link linkend="math">математических расчётах</link> и <link linkend="questions">вопросах</link>. они могут помещаться в <link linkend="containers">контейнеры</link>.</para> +<para>Числа <glossterm>выделяются</glossterm> синим цветом в <link linkend="the-code-editor">редакторе кода</link>.</para> </sect2> <sect2 id="string"> -<title ->Строки</title> -<para ->Пример: <screen> +<title>Строки</title> +<para>Пример: <screen> напиши "Привет, я строка." -</screen -> В этом примере <userinput ->напиши</userinput -> — команда, которой передаётся строка <userinput ->"Привет, я строка."</userinput ->. Строки начинаются и заканчиваются на <userinput ->"</userinput ->, так &kturtle; может определить, что это строка.</para> -<para ->Строки можно помещать в <link linkend="containers" ->контейнеры</link ->.</para> -<para ->Строки <glossterm ->выделяются</glossterm -> тёмно-красным в <link linkend="the-code-editor" ->редакторе кода</link ->.</para> +</screen> В этом примере <userinput>напиши</userinput> — команда, которой передаётся строка <userinput>"Привет, я строка."</userinput>. Строки начинаются и заканчиваются на <userinput>"</userinput>, так &kturtle; может определить, что это строка.</para> +<para>Строки можно помещать в <link linkend="containers">контейнеры</link>.</para> +<para>Строки <glossterm>выделяются</glossterm> тёмно-красным в <link linkend="the-code-editor">редакторе кода</link>.</para> </sect2> <sect2 id="name"> -<title ->Имена</title> -<para ->Имена можно давать <link linkend="containers" ->контейнерам</link -> (переменным) и <link linkend="learn" ->новым командам</link ->.</para> -<para ->Имена не могут совпадать с именами команд. Например, нельзя назвать контейнер <link linkend="forward" ->вперёд</link ->.<screen> +<title>Имена</title> +<para>Имена можно давать <link linkend="containers">контейнерам</link> (переменным) и <link linkend="learn">новым командам</link>.</para> +<para>Имена не могут совпадать с именами команд. Например, нельзя назвать контейнер <link linkend="forward">вперёд</link>.<screen> # попытка использовать вперёд в качестве имени, # но оно уже занято командой, так что при выполнении получим ошибку вперёд = 20 # это работает: вперёд 20 -</screen -> Имена могут состоять из букв, цифр и символа подчёркивания (_), но первой всегда должна быть буква. </para> -<para ->Подробно это изложено в разделе «<link linkend="containers" ->Контейнеры</link ->» и справке по команде «<link linkend="learn" ->выучи</link ->». </para> +</screen> Имена могут состоять из букв, цифр и символа подчёркивания (_), но первой всегда должна быть буква. </para> +<para>Подробно это изложено в разделе «<link linkend="containers">Контейнеры</link>» и справке по команде «<link linkend="learn">выучи</link>». </para> </sect2> <sect2 id="assignment"> -<title ->Присваивание</title> -<para ->Присваивание производится символом <userinput ->=</userinput ->. В большинстве языков программирования лучше читать один символ <userinput ->=</userinput -> не как «равно», а как «становится». Слово «равно» больше подходит к <userinput ->==</userinput ->, это используется в <link linkend="questions" ->вопросах</link ->.</para> -<para ->Присваивание служит для помещения значения в <link linkend="containers" ->контейнер</link -> и изменения значения в нём, например: <screen ->x = 10 +<title>Присваивание</title> +<para>Присваивание производится символом <userinput>=</userinput>. В большинстве языков программирования лучше читать один символ <userinput>=</userinput> не как «равно», а как «становится». Слово «равно» больше подходит к <userinput>==</userinput>, это используется в <link linkend="questions">вопросах</link>.</para> +<para>Присваивание служит для помещения значения в <link linkend="containers">контейнер</link> и изменения значения в нём, например: <screen>x = 10 # контейнер x теперь содержит число 10 W = "Сейчас мне столько лет: " # контейнер W теперь содержит строку "Сейчас мне столько лет: " @@ -173,712 +60,358 @@ W = "Сейчас мне столько лет: " напиши W + x </screen> </para> -<para ->Другие примеры приведены в разделе «<link linkend="containers" ->Контейнеры</link ->».</para> +<para>Другие примеры приведены в разделе «<link linkend="containers">Контейнеры</link>».</para> </sect2> <sect2 id="math-symbols"> -<title ->Математические знаки</title> -<para ->&kturtle; поддерживает все основные математические операции: сложение (<userinput ->+</userinput ->), вычитание (<userinput ->-</userinput ->), умножение (<userinput ->*</userinput ->), деление (<userinput ->/</userinput ->), использование скобок <userinput ->(</userinput -> и <userinput ->)</userinput ->.</para> -<para ->Описание использования и дополнительные примеры вы найдёте в разделе «<link linkend="math" ->Математические вычисления</link ->».</para> +<title>Математические знаки</title> +<para>&kturtle; поддерживает все основные математические операции: сложение (<userinput>+</userinput>), вычитание (<userinput>-</userinput>), умножение (<userinput>*</userinput>), деление (<userinput>/</userinput>), использование скобок <userinput>(</userinput> и <userinput>)</userinput>.</para> +<para>Описание использования и дополнительные примеры вы найдёте в разделе «<link linkend="math">Математические вычисления</link>».</para> </sect2> <sect2 id="question"> -<title ->Вопросы</title> -<para ->У программы можно спрашивать вопросы и получать на них ответы (истина или ложь).</para> -<para ->Использование вопросов подробно описано в <link linkend="questions" ->соответствующем разделе</link ->.</para> +<title>Вопросы</title> +<para>У программы можно спрашивать вопросы и получать на них ответы (истина или ложь).</para> +<para>Использование вопросов подробно описано в <link linkend="questions">соответствующем разделе</link>.</para> </sect2> <sect2 id="questions-glue"> -<title ->Склеивающие слова в вопросах</title> -<para ->С помощью них можно соединять несколько вопросов. Это могут быть слова <userinput ->и</userinput ->, <userinput ->или</userinput ->, а также специальное слово <userinput ->не</userinput ->.</para> -<para ->Использование склеивающих слов подробно описано в <link linkend="question-glue" ->соответствующем разделе</link ->.</para> +<title>Склеивающие слова в вопросах</title> +<para>С помощью них можно соединять несколько вопросов. Это могут быть слова <userinput>и</userinput>, <userinput>или</userinput>, а также специальное слово <userinput>не</userinput>.</para> +<para>Использование склеивающих слов подробно описано в <link linkend="question-glue">соответствующем разделе</link>.</para> </sect2> <sect2 id="comment"> -<title ->Комментарии</title> -<para ->Комментарии - это строки, начинающиеся с <userinput ->#</userinput ->. Например:<screen> +<title>Комментарии</title> +<para>Комментарии - это строки, начинающиеся с <userinput>#</userinput>. Например:<screen> # это комментарий! напиши "это не комментарий" # напиши "а это - комментарий" -</screen -> Комментарии могут содержать разъяснения к коду, ещё комментарием можно сделать какую-то команду, чтобы она не выполнялась.</para> -<para ->Комментарии <glossterm ->выделяются</glossterm -> тёмно-жёлтым в <link linkend="the-code-editor" ->редакторе кода</link ->.</para> +</screen> Комментарии могут содержать разъяснения к коду, ещё комментарием можно сделать какую-то команду, чтобы она не выполнялась.</para> +<para>Комментарии <glossterm>выделяются</glossterm> тёмно-жёлтым в <link linkend="the-code-editor">редакторе кода</link>.</para> </sect2> </sect1> <sect1 id="commands"> -<title ->Команды</title> -<para ->Разные команды делают разные вещи, одни из них требуют дополнительную информацию, некоторые возвращают её. Далее мы опишем каждую из поддерживаемых команд. Заметьте, что такие команды <glossterm ->выделяются</glossterm -> тёмно-зелёным в <link linkend="the-code-editor" ->редакторе кода</link ->.</para> +<title>Команды</title> +<para>Разные команды делают разные вещи, одни из них требуют дополнительную информацию, некоторые возвращают её. Далее мы опишем каждую из поддерживаемых команд. Заметьте, что такие команды <glossterm>выделяются</glossterm> тёмно-зелёным в <link linkend="the-code-editor">редакторе кода</link>.</para> <sect2 id="moving-the-turtle"> -<title ->Двигаем Черепашку</title> -<para ->Существует несколько команд для перемещения Черепашки по холсту.</para> +<title>Двигаем Черепашку</title> +<para>Существует несколько команд для перемещения Черепашки по холсту.</para> <sect3 id="forward"> - <title ->вперёд (вп)</title> + <title>вперёд (вп)</title> <variablelist> - <varlistentry -> - <term ->вперёд</term> - <listitem -><para -><screen ->вперёд X</screen> -<userinput ->вперёд</userinput -> перемещает Черепашку на X пикселей вперёд. Когда перо опущено, Черепашка будет оставлять за собой след. Эта команда также может записываться как <userinput ->вп</userinput ->.</para -></listitem> + <varlistentry> + <term>вперёд</term> + <listitem><para><screen>вперёд X</screen> +<userinput>вперёд</userinput> перемещает Черепашку на X пикселей вперёд. Когда перо опущено, Черепашка будет оставлять за собой след. Эта команда также может записываться как <userinput>вп</userinput>.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="backward"> - <title ->назад (нд)</title> + <title>назад (нд)</title> <variablelist> - <varlistentry -> - <term ->назад</term> - <listitem -><para -><screen ->назад X</screen> -<userinput ->назад</userinput -> перемещает Черепашку назад на X пикселей. Когда перо опущено, Черепашку будет оставлять за собой след. Может так же записываться как <userinput ->нд</userinput ->.</para -></listitem> + <varlistentry> + <term>назад</term> + <listitem><para><screen>назад X</screen> +<userinput>назад</userinput> перемещает Черепашку назад на X пикселей. Когда перо опущено, Черепашку будет оставлять за собой след. Может так же записываться как <userinput>нд</userinput>.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="turnleft"> - <title ->налево (лв)</title> + <title>налево (лв)</title> <variablelist> - <varlistentry -> - <term ->налево</term> - <listitem -><para -><screen ->налево X</screen> -Предписывает Черепашке повернуть на X градусов налево. Может записываться как <userinput ->лв</userinput ->.</para -></listitem> + <varlistentry> + <term>налево</term> + <listitem><para><screen>налево X</screen> +Предписывает Черепашке повернуть на X градусов налево. Может записываться как <userinput>лв</userinput>.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="turnright"> - <title ->направо (пр)</title> + <title>направо (пр)</title> <variablelist> - <varlistentry -> - <term ->направо</term> - <listitem -><para -><screen ->направо X</screen> -Предписывает Черепашке повернуть на X градусов направо. Может записываться как <userinput ->пр</userinput ->.</para -></listitem> + <varlistentry> + <term>направо</term> + <listitem><para><screen>направо X</screen> +Предписывает Черепашке повернуть на X градусов направо. Может записываться как <userinput>пр</userinput>.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="direction"> - <title ->направление (нпр)</title> + <title>направление (нпр)</title> <variablelist> - <varlistentry -> - <term ->направление</term> - <listitem -><para -><screen ->направление X</screen> -Устанавливает направление Черепашки на X градусов относительно 0, а не относительно предыдущего направления. Может записываться как <userinput ->нпр</userinput ->.</para -></listitem> + <varlistentry> + <term>направление</term> + <listitem><para><screen>направление X</screen> +Устанавливает направление Черепашки на X градусов относительно 0, а не относительно предыдущего направления. Может записываться как <userinput>нпр</userinput>.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="center"> - <title ->центр</title> + <title>центр</title> <variablelist> - <varlistentry -> - <term ->центр</term> - <listitem -><para -><screen ->центр</screen> -Перемещает Черепашку в центр холста.</para -></listitem> + <varlistentry> + <term>центр</term> + <listitem><para><screen>центр</screen> +Перемещает Черепашку в центр холста.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="go"> - <title ->иди</title> + <title>иди</title> <variablelist> - <varlistentry -> - <term ->иди</term> - <listitem -><para -><screen ->иди X,Y</screen> -Предписывают Черепашке занять определённое место на холсте. Это место находится на X пикселей от левой границы и на Y пикселей от верхней границы холста. Примечание: при перемещении Черепашка не будет оставлять след.</para -></listitem> + <varlistentry> + <term>иди</term> + <listitem><para><screen>иди X,Y</screen> +Предписывают Черепашке занять определённое место на холсте. Это место находится на X пикселей от левой границы и на Y пикселей от верхней границы холста. Примечание: при перемещении Черепашка не будет оставлять след.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="gox"> - <title ->иди_гор</title> + <title>иди_гор</title> <variablelist> - <varlistentry -> - <term ->иди_гор</term> - <listitem -><para -><screen ->иди_гор X</screen> -<userinput ->иди_гор</userinput -> используется для перемещения Черепашки на X <glossterm linkend="pixels" ->пикселей</glossterm -> от левой границы холста, высота остаётся неизменной.</para -></listitem> + <varlistentry> + <term>иди_гор</term> + <listitem><para><screen>иди_гор X</screen> +<userinput>иди_гор</userinput> используется для перемещения Черепашки на X <glossterm linkend="pixels">пикселей</glossterm> от левой границы холста, высота остаётся неизменной.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="goy"> - <title ->иди_верт</title> + <title>иди_верт</title> <variablelist> - <varlistentry -> - <term ->иди_верт</term> - <listitem -><para -><screen ->иди_верт Y</screen> -Используется для перемещения Черепашки на Y <glossterm linkend="pixels" ->пикселей</glossterm -> от верхней границы холста, положение относительно левой границы остаётся неизменным.</para -></listitem> + <varlistentry> + <term>иди_верт</term> + <listitem><para><screen>иди_верт Y</screen> +Используется для перемещения Черепашки на Y <glossterm linkend="pixels">пикселей</glossterm> от верхней границы холста, положение относительно левой границы остаётся неизменным.</para></listitem> </varlistentry> </variablelist> </sect3> </sect2> <sect2 id="pen"> -<title ->У Черепашки есть перо</title> -<para ->У Черепашки есть перо, которым она рисует линию во время перемещения. Есть несколько команд для управления пером. В данном разделе они будут описаны подробно.</para> +<title>У Черепашки есть перо</title> +<para>У Черепашки есть перо, которым она рисует линию во время перемещения. Есть несколько команд для управления пером. В данном разделе они будут описаны подробно.</para> <sect3 id="penup"> - <title ->перо_подними (пп)</title> + <title>перо_подними (пп)</title> <variablelist> - <varlistentry -> - <term ->перо_подними</term> - <listitem -><para -><screen ->перо_подними</screen> -<userinput ->перо_подними</userinput -> отрывает перо от холста. Пока перо оторвано, Черепашка не будет рисовать линию во время перемещений. Может записываться и как <userinput ->пп</userinput ->. См. также <userinput ->перо_опусти</userinput ->.</para -></listitem> + <varlistentry> + <term>перо_подними</term> + <listitem><para><screen>перо_подними</screen> +<userinput>перо_подними</userinput> отрывает перо от холста. Пока перо оторвано, Черепашка не будет рисовать линию во время перемещений. Может записываться и как <userinput>пп</userinput>. См. также <userinput>перо_опусти</userinput>.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="pendown"> - <title ->перо_опусти (по)</title> + <title>перо_опусти (по)</title> <variablelist> - <varlistentry -> - <term ->перо_опусти</term> - <listitem -><para -><screen ->перо_опусти</screen> -<userinput ->перо_опусти</userinput -> опускает перо на холст. Когда перо опущено, Черепашка рисует линию при перемещениях. Может записываться и как <userinput ->по</userinput ->. См. также <userinput ->перо_подними</userinput ->.</para -></listitem> + <varlistentry> + <term>перо_опусти</term> + <listitem><para><screen>перо_опусти</screen> +<userinput>перо_опусти</userinput> опускает перо на холст. Когда перо опущено, Черепашка рисует линию при перемещениях. Может записываться и как <userinput>по</userinput>. См. также <userinput>перо_подними</userinput>.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="setpenwidth"> - <title ->нов_ширина_пера (ншп)</title> + <title>нов_ширина_пера (ншп)</title> <variablelist> - <varlistentry -> - <term ->нов_ширина_пера</term> - <listitem -><para -><screen ->нов_ширина_пера X</screen> -<userinput ->нов_ширина_пера</userinput -> устанавливает ширину пера (толщину линии) в X <glossterm linkend="pixels" ->пикселей</glossterm ->. Может записываться и как <userinput ->ншп</userinput ->.</para -></listitem> + <varlistentry> + <term>нов_ширина_пера</term> + <listitem><para><screen>нов_ширина_пера X</screen> +<userinput>нов_ширина_пера</userinput> устанавливает ширину пера (толщину линии) в X <glossterm linkend="pixels">пикселей</glossterm>. Может записываться и как <userinput>ншп</userinput>.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="setfgcolor"> - <title ->нов_цвет_пера (нцп)</title> + <title>нов_цвет_пера (нцп)</title> <variablelist> - <varlistentry -> - <term ->нов_цвет_пера</term> - <listitem -><para -><screen ->нов_цвет_пера R,G,B</screen> -<userinput ->нов_цвет_пера</userinput -> устанавливает цвет пера. В качестве параметров указывается интенсивность <glossterm linkend="rgb" ->красной, зелёной и синей</glossterm -> составляющих цвета (0..255). Может записываться и как <userinput ->нцп</userinput ->.</para -></listitem> + <varlistentry> + <term>нов_цвет_пера</term> + <listitem><para><screen>нов_цвет_пера R,G,B</screen> +<userinput>нов_цвет_пера</userinput> устанавливает цвет пера. В качестве параметров указывается интенсивность <glossterm linkend="rgb">красной, зелёной и синей</glossterm> составляющих цвета (0..255). Может записываться и как <userinput>нцп</userinput>.</para></listitem> </varlistentry> </variablelist> </sect3> </sect2> <sect2 id="canvas"> -<title ->Команды для работы с холстом</title> -<para ->Существует несколько команд для работы с холстом.</para> +<title>Команды для работы с холстом</title> +<para>Существует несколько команд для работы с холстом.</para> <sect3 id="resizecanvas"> - <title ->нов_размер_холста (нрх)</title> + <title>нов_размер_холста (нрх)</title> <variablelist> <varlistentry> - <term ->нов_размер_холста</term> - <listitem -><para -><screen ->нов_размер_холста X,Y</screen> -С помощью этой команды можно поменять размер холста. В качестве входных параметров задаются ширина X и высота Y в <glossterm linkend="pixels" ->пикселях</glossterm ->. Может записываться и как <userinput ->нрх</userinput ->.</para -></listitem> + <term>нов_размер_холста</term> + <listitem><para><screen>нов_размер_холста X,Y</screen> +С помощью этой команды можно поменять размер холста. В качестве входных параметров задаются ширина X и высота Y в <glossterm linkend="pixels">пикселях</glossterm>. Может записываться и как <userinput>нрх</userinput>.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="setbgcolor"> - <title ->нов_цвет_холста (нцх)</title> + <title>нов_цвет_холста (нцх)</title> <variablelist> - <varlistentry -> - <term ->нов_цвет_холста</term> - <listitem -><para -><screen ->нов_цвет_холста R,G,B</screen> -<userinput ->нов_цвет_холста</userinput -> устанавливает цвет холста. Входными параметрами является <glossterm linkend="rgb" ->комбинация RGB</glossterm ->. Может записываться и как <userinput ->нцх</userinput ->.</para -></listitem> + <varlistentry> + <term>нов_цвет_холста</term> + <listitem><para><screen>нов_цвет_холста R,G,B</screen> +<userinput>нов_цвет_холста</userinput> устанавливает цвет холста. Входными параметрами является <glossterm linkend="rgb">комбинация RGB</glossterm>. Может записываться и как <userinput>нцх</userinput>.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="wrapon"> - <title ->обёртка_вкл</title> + <title>обёртка_вкл</title> <variablelist> - <varlistentry -> - <term ->обёртка_вкл</term> - <listitem -><para -><screen ->обёртка_вкл</screen> -Этой командой вы устанавливаете <glossterm linkend="wrapping" ->обёртку холста</glossterm ->. Это значит, что при достижении края холста Черепашка не исчезнет, а окажется на его противоположной стороне.</para -></listitem> + <varlistentry> + <term>обёртка_вкл</term> + <listitem><para><screen>обёртка_вкл</screen> +Этой командой вы устанавливаете <glossterm linkend="wrapping">обёртку холста</glossterm>. Это значит, что при достижении края холста Черепашка не исчезнет, а окажется на его противоположной стороне.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="wrapoff"> - <title ->обёртка_выкл</title> + <title>обёртка_выкл</title> <variablelist> - <varlistentry -> - <term ->обёртка_выкл</term> - <listitem -><para -><screen ->обёртка_выкл</screen> -Этой командой вы отключаете <glossterm linkend="wrapping" ->обёртку холста</glossterm ->. Это значит, что Черепашка может выйти за границы холста и «исчезнуть».</para -></listitem> + <varlistentry> + <term>обёртка_выкл</term> + <listitem><para><screen>обёртка_выкл</screen> +Этой командой вы отключаете <glossterm linkend="wrapping">обёртку холста</glossterm>. Это значит, что Черепашка может выйти за границы холста и «исчезнуть».</para></listitem> </varlistentry> </variablelist> </sect3> </sect2> <sect2 id="clean"> -<title ->Команды очистки</title> -<para ->Существуют две команды очистки холста.</para> +<title>Команды очистки</title> +<para>Существуют две команды очистки холста.</para> <sect3 id="clear"> - <title ->очисти (очс)</title> + <title>очисти (очс)</title> <variablelist> - <varlistentry -> - <term ->очисти</term> - <listitem -><para -><screen ->очисти</screen> -Этой командой вы можете очистить холст от всех следов. Все остальное останется по-прежнему: позиция и угол направления Черепашки, цвет холста, видимость Черепашки и размер холста. Может записываться и как <userinput ->очс</userinput ->.</para -></listitem> + <varlistentry> + <term>очисти</term> + <listitem><para><screen>очисти</screen> +Этой командой вы можете очистить холст от всех следов. Все остальное останется по-прежнему: позиция и угол направления Черепашки, цвет холста, видимость Черепашки и размер холста. Может записываться и как <userinput>очс</userinput>.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="reset"> - <title ->сброс</title> + <title>сброс</title> <variablelist> - <varlistentry -> - <term ->сброс</term> - <listitem -><para -><screen ->сброс</screen> -Очищает более объёмно, нежели команда <userinput ->очисти</userinput ->. После выполнения этой команды всё будет выглядеть так, как будто вы только что запустили KTurtle. Черепашка будет расположена в центре экрана, цвет холста будет белым, Черепашка рисует чёрную линию.</para -></listitem> + <varlistentry> + <term>сброс</term> + <listitem><para><screen>сброс</screen> +Очищает более объёмно, нежели команда <userinput>очисти</userinput>. После выполнения этой команды всё будет выглядеть так, как будто вы только что запустили KTurtle. Черепашка будет расположена в центре экрана, цвет холста будет белым, Черепашка рисует чёрную линию.</para></listitem> </varlistentry> </variablelist> </sect3> </sect2> <sect2 id="sprites"> -<title ->Черепашка — это спрайт</title> -<para ->Большинство людей и понятия не имеют, что такое спрайты, так вот, спрайты — это маленькие картинки, которые можно перемещать по экрану. Так что Черепашка — <glossterm linkend="sprites" ->спрайт</glossterm ->. </para> -<para ->Ниже будет дано подробное описание всех команд работы со спрайтами.</para> -<para ->Текущая версия &kturtle; пока не поддерживает использование спрайтов, отличных от Черепашки. В ближайшем будущем вы сможете заменить Черепашку на любой другой персонаж какой хотите.</para> +<title>Черепашка — это спрайт</title> +<para>Большинство людей и понятия не имеют, что такое спрайты, так вот, спрайты — это маленькие картинки, которые можно перемещать по экрану. Так что Черепашка — <glossterm linkend="sprites">спрайт</glossterm>. </para> +<para>Ниже будет дано подробное описание всех команд работы со спрайтами.</para> +<para>Текущая версия &kturtle; пока не поддерживает использование спрайтов, отличных от Черепашки. В ближайшем будущем вы сможете заменить Черепашку на любой другой персонаж какой хотите.</para> <sect3 id="spriteshow"> - <title ->покажи</title> + <title>покажи</title> <variablelist> - <varlistentry -> - <term ->покажи (пж)</term> - <listitem -><para -><screen ->покажи</screen> -Делает Черепашку видимой после того, как она была скрыта. Так же может записываться как <userinput ->пж</userinput ->.</para -></listitem> + <varlistentry> + <term>покажи (пж)</term> + <listitem><para><screen>покажи</screen> +Делает Черепашку видимой после того, как она была скрыта. Так же может записываться как <userinput>пж</userinput>.</para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="spritehide"> - <title ->спрячь (сч)</title> + <title>спрячь (сч)</title> <variablelist> - <varlistentry -> - <term ->спрячь</term> - <listitem -><para -><screen ->спрячь</screen> -Скрывает Черепашку. Это полезно, когда Черепашка неуместна в ваших рисунках. Может записываться и как <userinput ->сч</userinput ->.</para -></listitem> + <varlistentry> + <term>спрячь</term> + <listitem><para><screen>спрячь</screen> +Скрывает Черепашку. Это полезно, когда Черепашка неуместна в ваших рисунках. Может записываться и как <userinput>сч</userinput>.</para></listitem> </varlistentry> </variablelist> </sect3> </sect2> <sect2 id="writing"> -<title ->Может ли Черепашка печатать на холсте?</title> -<para ->Черепашка может написать всё, что вы ей прикажете.</para> +<title>Может ли Черепашка печатать на холсте?</title> +<para>Черепашка может написать всё, что вы ей прикажете.</para> <sect3 id="print"> - <title ->напиши</title> + <title>напиши</title> <variablelist> - <varlistentry -> - <term ->напиши</term> - <listitem -><para -><screen ->напиши X</screen> -Команда <userinput ->напиши</userinput -> используется для указания Черепашки написать что-либо на холсте. В качестве входных параметров можно передавать строки или числа. Вы можете печатать различные числа и строки, комбинируя их вместе оператором «+». Вот маленький пример. <screen ->год = 2003 + <varlistentry> + <term>напиши</term> + <listitem><para><screen>напиши X</screen> +Команда <userinput>напиши</userinput> используется для указания Черепашки написать что-либо на холсте. В качестве входных параметров можно передавать строки или числа. Вы можете печатать различные числа и строки, комбинируя их вместе оператором «+». Вот маленький пример. <screen>год = 2003 автор = "Сиес" напиши автор + " начал проект KTurtle в " + год + " году и до сих пор с удовольствием работает над ним!" </screen> - </para -></listitem> + </para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="fontsize"> - <title ->нов_размер_шрифта</title> + <title>нов_размер_шрифта</title> <variablelist> - <varlistentry -> - <term ->нов_размер_шрифта</term> - <listitem -><para -><screen ->нов_размер_шрифта X</screen> -Устанавливает размер шрифта, используемого для печати. Входной параметр один, он должен быть числом. Размер задаётся в <glossterm linkend="pixels" ->пикселях</glossterm ->.</para -></listitem> + <varlistentry> + <term>нов_размер_шрифта</term> + <listitem><para><screen>нов_размер_шрифта X</screen> +Устанавливает размер шрифта, используемого для печати. Входной параметр один, он должен быть числом. Размер задаётся в <glossterm linkend="pixels">пикселях</glossterm>.</para></listitem> </varlistentry> </variablelist> </sect3> </sect2> <sect2 id="random"> -<title ->Команды для получения случайных чисел</title> -<para ->Команда, которая «бросает игральную кость» для вас — <userinput ->random</userinput ->: полезна для получения неожиданных результатов.</para> +<title>Команды для получения случайных чисел</title> +<para>Команда, которая «бросает игральную кость» для вас — <userinput>random</userinput>: полезна для получения неожиданных результатов.</para> <variablelist> - <varlistentry -> - <term ->случайное</term> - <listitem -><para -><screen ->случайное X,Y</screen> -<userinput ->случайное</userinput -> — команда, которая имеет входные и выходные параметры. На входе требуются два числа, первое (X) задаёт нижний порог получаемых чисел (минимум), второе (Y) задаёт верхний порог (максимум). Выходной параметр — это псевдослучайное число, которое не меньше минимума и не больше максимума. Вот маленький пример:<screen> + <varlistentry> + <term>случайное</term> + <listitem><para><screen>случайное X,Y</screen> +<userinput>случайное</userinput> — команда, которая имеет входные и выходные параметры. На входе требуются два числа, первое (X) задаёт нижний порог получаемых чисел (минимум), второе (Y) задаёт верхний порог (максимум). Выходной параметр — это псевдослучайное число, которое не меньше минимума и не больше максимума. Вот маленький пример:<screen> повтори 500 [ x = случайное 1,20 вперёд x налево 10 - x ] -</screen ->Используя <userinput ->случайное</userinput ->, вы можете привнести немного «хаоса» в вашу программу.</para -></listitem> +</screen>Используя <userinput>случайное</userinput>, вы можете привнести немного «хаоса» в вашу программу.</para></listitem> </varlistentry> </variablelist> </sect2> <sect2 id="dialogs"> -<title ->Взаимодействие через диалоги</title> -<para ->Диалог — небольшое всплывающее окно. Оно выводит сообщение или запрашивает что-либо. В &kturtle; есть две команды для диалогов: <userinput ->сообщение</userinput -> и <userinput ->окно_вопроса</userinput ->.</para> +<title>Взаимодействие через диалоги</title> +<para>Диалог — небольшое всплывающее окно. Оно выводит сообщение или запрашивает что-либо. В &kturtle; есть две команды для диалогов: <userinput>сообщение</userinput> и <userinput>окно_вопроса</userinput>.</para> <sect3 id="message"> - <title ->сообщение</title> + <title>сообщение</title> <variablelist> - <varlistentry -> - <term ->сообщение</term> - <listitem -><para -><screen ->сообщение X</screen> -Команде <userinput ->сообщение</userinput -> требуется передать <link linkend="string" ->строку</link ->, она будет показана в появившемся окне. <screen ->год = 2003 + <varlistentry> + <term>сообщение</term> + <listitem><para><screen>сообщение X</screen> +Команде <userinput>сообщение</userinput> требуется передать <link linkend="string">строку</link>, она будет показана в появившемся окне. <screen>год = 2003 автор = "Сиес" напиши автор + " начал проект KTurtle в " + год + " году и до сих пор с удовольствием работает над ним!" </screen> - </para -></listitem> + </para></listitem> </varlistentry> </variablelist> </sect3> <sect3 id="inputwindow"> - <title ->окно_вопроса</title> + <title>окно_вопроса</title> <variablelist> - <varlistentry -> - <term ->окно_вопроса</term> - <listitem -><para -><screen ->окно_вопроса X</screen> -Команде <userinput ->окно_вопроса</userinput -> требуется передать <link linkend="string" ->строку</link ->, она будет показана в появившемся окне, аналогично команде <link linkend="message" ->сообщение</link ->. Но, кроме этого, в окне будет поле для ввода <link linkend="number" ->числа</link -> или <link linkend="string" ->текста</link ->. Например <screen> + <varlistentry> + <term>окно_вопроса</term> + <listitem><para><screen>окно_вопроса X</screen> +Команде <userinput>окно_вопроса</userinput> требуется передать <link linkend="string">строку</link>, она будет показана в появившемся окне, аналогично команде <link linkend="message">сообщение</link>. Но, кроме этого, в окне будет поле для ввода <link linkend="number">числа</link> или <link linkend="string">текста</link>. Например <screen> результат = окно_вопроса "Сколько вам лет?" осталось = 18 - результат напиши "Через " + осталось + " лет вам будет разрешено водить машину." -</screen -> Если пользователь ничего не введёт и просто закроет окно, <link linkend="containers" ->контейнер</link -> <userinput ->осталось</userinput -> будет пустой.</para -></listitem> +</screen> Если пользователь ничего не введёт и просто закроет окно, <link linkend="containers">контейнер</link> <userinput>осталось</userinput> будет пустой.</para></listitem> </varlistentry> </variablelist> </sect3> @@ -889,41 +422,23 @@ W = "Сейчас мне столько лет: " <sect1 id="containers"> -<title ->Контейнеры</title> -<para ->Контейнеры — это символы или слова, которые используются программистом для хранения чисел или текста. Контейнеры, содержащие числа, называются переменными, а содержащие текст — <link linkend="string" ->строками</link ->.</para> +<title>Контейнеры</title> +<para>Контейнеры — это символы или слова, которые используются программистом для хранения чисел или текста. Контейнеры, содержащие числа, называются переменными, а содержащие текст — <link linkend="string">строками</link>.</para> -<para ->Контейнеры до первого их использования ничего не содержат. Вот пример:<screen> +<para>Контейнеры до первого их использования ничего не содержат. Вот пример:<screen> напиши N -</screen -> Не будет ничего напечатано. Если мы будет использовать <link linkend="math" ->математические</link -> операции с пустыми контейнерами, то получим ошибки. </para> +</screen> Не будет ничего напечатано. Если мы будет использовать <link linkend="math">математические</link> операции с пустыми контейнерами, то получим ошибки. </para> <sect2 id="variables"> -<title ->Переменные: числовые контейнеры</title> -<para ->Давайте начнём с небольшого примера: <screen> +<title>Переменные: числовые контейнеры</title> +<para>Давайте начнём с небольшого примера: <screen> x = 3 напиши x -</screen -> В первой строке символ <userinput ->x</userinput -> объявляется переменной (числовым контейнером). Как вы можете увидеть, значение переменной <userinput ->x</userinput -> устанавливается равной трём. На второй строке это значение выводится на печать.</para> -<para ->Помните, что если мы хотим напечатать не содержимое контейнера, а строку «x», мы должны написать <screen ->напиши "x" +</screen> В первой строке символ <userinput>x</userinput> объявляется переменной (числовым контейнером). Как вы можете увидеть, значение переменной <userinput>x</userinput> устанавливается равной трём. На второй строке это значение выводится на печать.</para> +<para>Помните, что если мы хотим напечатать не содержимое контейнера, а строку «x», мы должны написать <screen>напиши "x" </screen> </para> -<para ->Это было совсем просто, вот пример посложнее: <screen> +<para>Это было совсем просто, вот пример посложнее: <screen> A = 2004 B = 25 C = A + B @@ -936,316 +451,148 @@ C = A + B назад 30 # следующая команда напечатает "1979" напиши A - B -</screen -> В первых двух строках переменные <userinput ->A</userinput -> и <userinput ->B</userinput -> устанавливаются равными 2004 и 25. В третьей строке переменной <userinput ->С</userinput -> присваивается результат <userinput ->A + B</userinput ->, который равен 2029. Остальное в примере — три команды печати на холсте с командой <userinput ->назад 30</userinput -> между ними. Команда <userinput ->назад 30</userinput -> используется здесь для уверенности в том, что текст будет выводится на новой строке. В данном примере также демонстрируется, как переменные могут быть использованы в <link linkend="math" ->математических</link -> расчётах.</para> +</screen> В первых двух строках переменные <userinput>A</userinput> и <userinput>B</userinput> устанавливаются равными 2004 и 25. В третьей строке переменной <userinput>С</userinput> присваивается результат <userinput>A + B</userinput>, который равен 2029. Остальное в примере — три команды печати на холсте с командой <userinput>назад 30</userinput> между ними. Команда <userinput>назад 30</userinput> используется здесь для уверенности в том, что текст будет выводится на новой строке. В данном примере также демонстрируется, как переменные могут быть использованы в <link linkend="math">математических</link> расчётах.</para> </sect2> <sect2 id="strings"> -<title ->Строки: текстовые контейнеры</title> -<para ->Обычный текст заключается в кавычки, например: <screen> +<title>Строки: текстовые контейнеры</title> +<para>Обычный текст заключается в кавычки, например: <screen> напиши "Привет, программист!" -</screen -> То, что между кавычками, называется <link linkend="strings" ->строкой</link ->.</para> -<para ->Строки во многом похожи на <link linkend="containers" ->переменные</link ->. Главное же отличие состоит в том, что строки не могут быть использованы в <link linkend="math" ->математических выражениях</link -> и <link linkend="questions" ->вопросах</link ->. Пример использования строк: <screen> +</screen> То, что между кавычками, называется <link linkend="strings">строкой</link>.</para> +<para>Строки во многом похожи на <link linkend="containers">переменные</link>. Главное же отличие состоит в том, что строки не могут быть использованы в <link linkend="math">математических выражениях</link> и <link linkend="questions">вопросах</link>. Пример использования строк: <screen> x = "Привет " имя = окно_вопроса "Введите своё имя..." напиши x + ", " + имя + ". Как дела?" -</screen -> В первой строке x присваивается текст «Привет». Затем строке <userinput ->name</userinput -> присваивается результат выполнения команды <userinput ->окно_вопроса</userinput -> и на холсте печатается комбинация четырёх строк.</para> -<para ->Эта программа спрашивает ваше имя. Когда вы вводите, к примеру, имя «Павел», программа выводит на печать «Привет, Павел. Как дела?». Пожалуйста, не забывайте, что «+» — единственная математическая операция, которая может использоваться при работе со строками.</para> +</screen> В первой строке x присваивается текст «Привет». Затем строке <userinput>name</userinput> присваивается результат выполнения команды <userinput>окно_вопроса</userinput> и на холсте печатается комбинация четырёх строк.</para> +<para>Эта программа спрашивает ваше имя. Когда вы вводите, к примеру, имя «Павел», программа выводит на печать «Привет, Павел. Как дела?». Пожалуйста, не забывайте, что «+» — единственная математическая операция, которая может использоваться при работе со строками.</para> </sect2> </sect1> <sect1 id="math"> -<title ->Может ли Черепашка делать вычисления?</title> -<para ->Да, Черепашке под силу заниматься математическими вычислениями. Вы можете складывать (+), вычитать (-), умножать (*) и делить (/). Вот пример, демонстрирующий использование всех этих команд.<screen> +<title>Может ли Черепашка делать вычисления?</title> +<para>Да, Черепашке под силу заниматься математическими вычислениями. Вы можете складывать (+), вычитать (-), умножать (*) и делить (/). Вот пример, демонстрирующий использование всех этих команд.<screen> a = 20 - 5 b = 15 * 2 c = 30 / 30 d = 1 + 1 напиши "a: "+a+", b: "+b+", c: "+c+", d: "+d -</screen -> Знаете ли вы, какие значения примут a, b, c и d? Обратите внимание на использование символа <link linkend="assignment" ->присваивания</link -> <userinput ->=</userinput ->.</para> -<para ->Если в программе вам нужно вычислить простое выражение, вы можете поступать следующим образом: <screen ->напиши 2004-12 -</screen -></para> -<para ->Вот пример с приоритетом вычислений: <screen> +</screen> Знаете ли вы, какие значения примут a, b, c и d? Обратите внимание на использование символа <link linkend="assignment">присваивания</link> <userinput>=</userinput>.</para> +<para>Если в программе вам нужно вычислить простое выражение, вы можете поступать следующим образом: <screen>напиши 2004-12 +</screen></para> +<para>Вот пример с приоритетом вычислений: <screen> напиши ( ( 20 - 5 ) * 2 / 30 ) + 1 -</screen -> Выражение в скобках будет вычислено первым. В данном примере сначала будет получена разность 20 – 5, затем полученное значение будет умножено на 2, поделено на 30, и напоследок будет добавлена единица (результат равен 2).</para> +</screen> Выражение в скобках будет вычислено первым. В данном примере сначала будет получена разность 20 – 5, затем полученное значение будет умножено на 2, поделено на 30, и напоследок будет добавлена единица (результат равен 2).</para> </sect1> <sect1 id="questions"> -<title ->Задаём вопросы, получаем ответы...</title> -<para ->В следующем разделе мы обсудим команды <link linkend="controlling-execution" ->контроля выполнения</link ->: <link linkend="if" -><userinput ->если</userinput -></link -> и <link linkend="while" -><userinput ->пока</userinput -></link ->. В этом разделе мы будем использовать команду <userinput ->если</userinput -> для объяснения вопросов.</para> +<title>Задаём вопросы, получаем ответы...</title> +<para>В следующем разделе мы обсудим команды <link linkend="controlling-execution">контроля выполнения</link>: <link linkend="if"><userinput>если</userinput></link> и <link linkend="while"><userinput>пока</userinput></link>. В этом разделе мы будем использовать команду <userinput>если</userinput> для объяснения вопросов.</para> <sect2 id="q"> -<title ->Вопросы</title> -<para ->Простой пример с вопросом: <screen> +<title>Вопросы</title> +<para>Простой пример с вопросом: <screen> x = 6 если x > 5 [ напиши "hello" ] -</screen -> В данном примере вопросом является <userinput ->x > 5</userinput ->. Если будет получен ответ «истина» (true), будут выполнены команды в скобках. Вопросы — важная часть программирования. Чаще всего они используются вместе с <link linkend="controlling-execution" ->операторами контроля</link ->, такими как <link linkend="if" -><userinput ->если</userinput -></link ->. Все числа и <link linkend="variables" ->переменные</link -> (числовые контейнеры) могут сравниваться друг с другом с помощью вопросов.</para> -<para ->Вот возможные вопросы: <table> -<title ->Типы вопросов</title> +</screen> В данном примере вопросом является <userinput>x > 5</userinput>. Если будет получен ответ «истина» (true), будут выполнены команды в скобках. Вопросы — важная часть программирования. Чаще всего они используются вместе с <link linkend="controlling-execution">операторами контроля</link>, такими как <link linkend="if"><userinput>если</userinput></link>. Все числа и <link linkend="variables">переменные</link> (числовые контейнеры) могут сравниваться друг с другом с помощью вопросов.</para> +<para>Вот возможные вопросы: <table> +<title>Типы вопросов</title> <tgroup cols="3"> <tbody> <row> -<entry -><userinput ->a == b</userinput -></entry> -<entry ->равенство</entry> -<entry ->ответ «истина» («true»), если <userinput ->a</userinput -> равно <userinput ->b</userinput -></entry> +<entry><userinput>a == b</userinput></entry> +<entry>равенство</entry> +<entry>ответ «истина» («true»), если <userinput>a</userinput> равно <userinput>b</userinput></entry> </row> <row> -<entry -><userinput ->a != b</userinput -></entry> -<entry ->неравенство</entry> -<entry ->ответ «истина» («true»), если <userinput ->a</userinput -> не равно <userinput ->b</userinput -></entry> +<entry><userinput>a != b</userinput></entry> +<entry>неравенство</entry> +<entry>ответ «истина» («true»), если <userinput>a</userinput> не равно <userinput>b</userinput></entry> </row> <row> -<entry -><userinput ->a > b</userinput -></entry> -<entry ->больше</entry> -<entry ->ответ «истина» («true»), если <userinput ->a</userinput -> больше <userinput ->b</userinput -></entry> +<entry><userinput>a > b</userinput></entry> +<entry>больше</entry> +<entry>ответ «истина» («true»), если <userinput>a</userinput> больше <userinput>b</userinput></entry> </row> <row> -<entry -><userinput ->a < b</userinput -></entry> -<entry ->меньше</entry> -<entry ->ответ «истина» («true»), если <userinput ->a</userinput -> меньше <userinput ->b</userinput -></entry> +<entry><userinput>a < b</userinput></entry> +<entry>меньше</entry> +<entry>ответ «истина» («true»), если <userinput>a</userinput> меньше <userinput>b</userinput></entry> </row> <row> -<entry -><userinput ->a >= b</userinput -></entry> -<entry ->больше или равно</entry> -<entry ->ответ «истина» («true»), если <userinput ->a</userinput -> больше или равно <userinput ->b</userinput -></entry> +<entry><userinput>a >= b</userinput></entry> +<entry>больше или равно</entry> +<entry>ответ «истина» («true»), если <userinput>a</userinput> больше или равно <userinput>b</userinput></entry> </row> <row> -<entry -><userinput ->a <= b</userinput -></entry> -<entry ->меньше или равно</entry> -<entry ->ответ «истина» («true»), если <userinput ->a</userinput -> меньше или равно <userinput ->b</userinput -></entry> +<entry><userinput>a <= b</userinput></entry> +<entry>меньше или равно</entry> +<entry>ответ «истина» («true»), если <userinput>a</userinput> меньше или равно <userinput>b</userinput></entry> </row> </tbody> </tgroup> </table> </para> -<para ->Вопросы <glossterm ->подсвечиваются</glossterm -> (выделяются) голубым в <link linkend="the-code-editor" ->редакторе кода</link ->.</para -> +<para>Вопросы <glossterm>подсвечиваются</glossterm> (выделяются) голубым в <link linkend="the-code-editor">редакторе кода</link>.</para> </sect2> <sect2 id="question-glue"> -<title ->Вопросный клей</title> -<para ->Вопросы также могут быть совмещены друг с другом с помощью клея. Это позволяет использовать несколько вопросов как один большой. <screen> +<title>Вопросный клей</title> +<para>Вопросы также могут быть совмещены друг с другом с помощью клея. Это позволяет использовать несколько вопросов как один большой. <screen> a = 1 b = 5 если (a < 5) и (b == 5) [ напиши "hello" ] -</screen -> В этом вопросе «склеивающее слово» — <userinput ->и</userinput ->, оно используется, чтобы совместить два вопроса (a < 5, b==5) вместе. Если с одной стороны результатом будет «ложь», то и ответ на весь вопрос будет «ложь», потому, что с этим «склеивающим словом» обе стороны должны быть равны «истина» для получения ответа на весь вопрос «истина». Не забывайте использовать скобки для выставления приоритетов вопросов.</para> +</screen> В этом вопросе «склеивающее слово» — <userinput>и</userinput>, оно используется, чтобы совместить два вопроса (a < 5, b==5) вместе. Если с одной стороны результатом будет «ложь», то и ответ на весь вопрос будет «ложь», потому, что с этим «склеивающим словом» обе стороны должны быть равны «истина» для получения ответа на весь вопрос «истина». Не забывайте использовать скобки для выставления приоритетов вопросов.</para> -<para ->Вот краткий обзор управляющих операторов, более детально они описаны ниже: <table> -<title ->«Склеивающие слова» для вопросов</title> +<para>Вот краткий обзор управляющих операторов, более детально они описаны ниже: <table> +<title>«Склеивающие слова» для вопросов</title> <tgroup cols="2"> <tbody> <row> -<entry -><userinput ->и</userinput -></entry> -<entry ->Обе стороны должны быть равны «истина» для получения ответа «истина» на весь вопрос.</entry> +<entry><userinput>и</userinput></entry> +<entry>Обе стороны должны быть равны «истина» для получения ответа «истина» на весь вопрос.</entry> </row> <row> -<entry -><userinput ->или</userinput -></entry> -<entry ->Если хотя бы одна сторона равна «истина», то и ответ будет «истина».</entry> +<entry><userinput>или</userinput></entry> +<entry>Если хотя бы одна сторона равна «истина», то и ответ будет «истина».</entry> </row> <row> -<entry -><userinput ->не</userinput -></entry> -<entry ->Только если обе стороны «ложь», ответ будет «ложь».</entry> +<entry><userinput>не</userinput></entry> +<entry>Только если обе стороны «ложь», ответ будет «ложь».</entry> </row> </tbody> </tgroup> </table> </para> -<para ->Склеивающие слова <glossterm ->подсвечиваются</glossterm -> фиолетовым в <link linkend="the-code-editor" ->редакторе кода</link ->.</para> +<para>Склеивающие слова <glossterm>подсвечиваются</glossterm> фиолетовым в <link linkend="the-code-editor">редакторе кода</link>.</para> <sect3 id="and"> -<title ->и</title> -<para ->Если вопросы соединяются при помощи <userinput ->и</userinput ->, для получения общего ответа «истина», они все должны быть истинными, например: <screen> +<title>и</title> +<para>Если вопросы соединяются при помощи <userinput>и</userinput>, для получения общего ответа «истина», они все должны быть истинными, например: <screen> a = 1 b = 5 если ((a < 10) и (b == 5)) и (a < b) [ напиши "хм" ] -</screen -></para> +</screen></para> </sect3> <sect3 id="or"> -<title ->или</title> -<para ->Если ответ хотя бы на один из вопросов — «истина», то и общий ответ будет таким же, например: <screen> +<title>или</title> +<para>Если ответ хотя бы на один из вопросов — «истина», то и общий ответ будет таким же, например: <screen> a = 1 b = 5 если ((a < 10) или (b == 10)) или (a == 0) [ напиши "хм" ] -</screen -></para> +</screen></para> </sect3> <sect3 id="not"> -<title ->не</title> -<para ->Это специальная приставка, меняющая ответ на противоположный, например: <screen> +<title>не</title> +<para>Это специальная приставка, меняющая ответ на противоположный, например: <screen> a = 1 b = 5 если не ((a < 10) и (b == 5)) [ @@ -1255,14 +602,7 @@ b = 5 [ напиши "не хм ;-)" ] -</screen -> В этом примере ответ на заданный вопрос — «истина», а приставка <userinput ->не</userinput -> изменяет это на «ложь», так что на <link linkend="the-canvas" ->холсте</link -> будет напечатано <userinput ->"не хм ;-)"</userinput ->.</para> +</screen> В этом примере ответ на заданный вопрос — «истина», а приставка <userinput>не</userinput> изменяет это на «ложь», так что на <link linkend="the-canvas">холсте</link> будет напечатано <userinput>"не хм ;-)"</userinput>.</para> </sect3> </sect2> @@ -1270,145 +610,69 @@ b = 5 </sect1> <sect1 id="controlling-execution"> -<title ->Контроль над выполнением</title> -<para ->Управляющие операторы позволяют вам контролировать процесс выполнения (о чём говорит само их название).</para> -<para ->Управляющие операторы <glossterm ->выделяются</glossterm -> тёмно-зелёным цветом и полужирным начертанием шрифта. Квадратные скобки, используемые вместе с ними, выделяются светло-зелёным.</para> +<title>Контроль над выполнением</title> +<para>Управляющие операторы позволяют вам контролировать процесс выполнения (о чём говорит само их название).</para> +<para>Управляющие операторы <glossterm>выделяются</glossterm> тёмно-зелёным цветом и полужирным начертанием шрифта. Квадратные скобки, используемые вместе с ними, выделяются светло-зелёным.</para> <sect2 id="wait"> -<title ->Может ли Черепашка ждать?</title> -<para ->Если вы уже немного попрактиковались в программировании в KTurtle, вы могли заметить, что Черепашка может рисовать чересчур быстро. Следующая команда позволяет избежать этого.</para> +<title>Может ли Черепашка ждать?</title> +<para>Если вы уже немного попрактиковались в программировании в KTurtle, вы могли заметить, что Черепашка может рисовать чересчур быстро. Следующая команда позволяет избежать этого.</para> <variablelist> <varlistentry> - <term ->жди</term> - <listitem -><para -><screen ->жди X</screen> -<userinput ->жди</userinput -> указывает Черепашке подождать X секунд.<screen> + <term>жди</term> + <listitem><para><screen>жди X</screen> +<userinput>жди</userinput> указывает Черепашке подождать X секунд.<screen> повтори 36 [ вперёд 5 направо 10 жди 0.5 ] -</screen -> Данный код рисует круг, при этом после каждого шага Черепашка будет ждать полсекунды. Это создаёт впечатление неторопливого движения.</para -></listitem> +</screen> Данный код рисует круг, при этом после каждого шага Черепашка будет ждать полсекунды. Это создаёт впечатление неторопливого движения.</para></listitem> </varlistentry> </variablelist> </sect2> <sect2 id="if"> -<title ->Условное выполнение</title> +<title>Условное выполнение</title> <variablelist> <varlistentry> - <term ->если</term> - <listitem -><para -><screen ->если <link linkend="questions" ->вопрос</link -> [ ... ]</screen> -Код, расположенный между скобками, будет выполнен только тогда, когда ответом на вопрос будет «истина». Для более подробной информации прочитайте раздел «<link linkend="questions" ->Вопросы</link ->».<screen> + <term>если</term> + <listitem><para><screen>если <link linkend="questions">вопрос</link> [ ... ]</screen> +Код, расположенный между скобками, будет выполнен только тогда, когда ответом на вопрос будет «истина». Для более подробной информации прочитайте раздел «<link linkend="questions">Вопросы</link>».<screen> x = 6 если x > 5 [ напиши "x больше пяти!" ] -</screen -> В первой строке контейнеру <userinput ->x</userinput -> присваивается 6. Во второй задаётся <link linkend="questions" ->вопрос</link -> <userinput ->x > 5</userinput ->. Если ответом на него будет «истина», управляющий оператор <userinput ->если</userinput -> позволит выполнить код, расположенный между скобками.</para -></listitem> +</screen> В первой строке контейнеру <userinput>x</userinput> присваивается 6. Во второй задаётся <link linkend="questions">вопрос</link> <userinput>x > 5</userinput>. Если ответом на него будет «истина», управляющий оператор <userinput>если</userinput> позволит выполнить код, расположенный между скобками.</para></listitem> </varlistentry> </variablelist> </sect2> <sect2 id="while"> -<title ->Цикл «пока»</title> +<title>Цикл «пока»</title> <variablelist> <varlistentry> - <term ->пока</term> - <listitem -><para -><screen ->пока <link linkend="questions" ->вопрос</link -> [ ... ]</screen> -Управляющий оператор <userinput ->пока</userinput -> немного похож на <link linkend="if" -><userinput ->если</userinput -></link ->. Разница в том, что <userinput ->пока</userinput -> будет повторять код (цикл), расположенный между скобками, до тех пор, пока ответом на <link linkend="questions" ->вопрос</link -> не станет «ложь».<screen> + <term>пока</term> + <listitem><para><screen>пока <link linkend="questions">вопрос</link> [ ... ]</screen> +Управляющий оператор <userinput>пока</userinput> немного похож на <link linkend="if"><userinput>если</userinput></link>. Разница в том, что <userinput>пока</userinput> будет повторять код (цикл), расположенный между скобками, до тех пор, пока ответом на <link linkend="questions">вопрос</link> не станет «ложь».<screen> x = 1 пока x < 5 [ вперёд 10 жди 1 x = x + 1 ] -</screen -> В первой строке <userinput ->x</userinput -> присваивается 1. Во второй строке задаётся <link linkend="questions" ->вопрос</link -> <userinput ->x < 5</userinput ->. Так как ответ на этот вопрос — «истина», оператор <userinput ->пока</userinput -> начнёт выполнять код между скобками, пока ответом на вопрос не станет «ложь». В данном случае код между скобками будет выполнен 4 раза потому, что на каждом прогоне в пятой строке <userinput ->x</userinput -> будет увеличиваться на 1.</para -></listitem> +</screen> В первой строке <userinput>x</userinput> присваивается 1. Во второй строке задаётся <link linkend="questions">вопрос</link> <userinput>x < 5</userinput>. Так как ответ на этот вопрос — «истина», оператор <userinput>пока</userinput> начнёт выполнять код между скобками, пока ответом на вопрос не станет «ложь». В данном случае код между скобками будет выполнен 4 раза потому, что на каждом прогоне в пятой строке <userinput>x</userinput> будет увеличиваться на 1.</para></listitem> </varlistentry> </variablelist> </sect2> <sect2 id="else"> -<title ->Если нет, «иначе»</title> +<title>Если нет, «иначе»</title> <variablelist> <varlistentry> - <term ->иначе</term> - <listitem -><para -><screen ->если вопрос [ ... ] иначе [ ... ]</screen> -Может быть дополнением к оператору условного выполнения <link linkend="if" -><userinput ->если</userinput -></link ->. Код между скобками, расположенными после <userinput ->иначе</userinput -> будет выполнен тогда, когда ответом на <link linkend="questions" ->вопрос</link -> будет «ложь». <screen> + <term>иначе</term> + <listitem><para><screen>если вопрос [ ... ] иначе [ ... ]</screen> +Может быть дополнением к оператору условного выполнения <link linkend="if"><userinput>если</userinput></link>. Код между скобками, расположенными после <userinput>иначе</userinput> будет выполнен тогда, когда ответом на <link linkend="questions">вопрос</link> будет «ложь». <screen> сброс x = 4 если x > 5 [ @@ -1418,54 +682,23 @@ x = 4 [ напиши "x меньше пяти!" ] -</screen -> Оператор <userinput ->если</userinput -> ставит <link linkend="questions" ->вопрос</link ->, больше ли <userinput ->x</userinput -> чем 5. Так как <userinput ->x</userinput -> равно 4, ответ на вопрос — «ложь». Поэтому выполняется код в скобках после <userinput ->иначе</userinput ->.</para -></listitem> +</screen> Оператор <userinput>если</userinput> ставит <link linkend="questions">вопрос</link>, больше ли <userinput>x</userinput> чем 5. Так как <userinput>x</userinput> равно 4, ответ на вопрос — «ложь». Поэтому выполняется код в скобках после <userinput>иначе</userinput>.</para></listitem> </varlistentry> </variablelist> </sect2> <sect2 id="for"> -<title ->Считающий цикл «для»</title> +<title>Считающий цикл «для»</title> <variablelist> <varlistentry> - <term ->для</term> - <listitem -><para -><screen ->для <userinput ->начальное число</userinput -> до <userinput ->конечное число</userinput -> [ ... ]</screen> -Цикл <userinput ->для</userinput -> — это цикл «со счётчиком». <screen> + <term>для</term> + <listitem><para><screen>для <userinput>начальное число</userinput> до <userinput>конечное число</userinput> [ ... ]</screen> +Цикл <userinput>для</userinput> — это цикл «со счётчиком». <screen> для x = 1 до 10 [ напиши x * 7 вперёд 15 ] -</screen -> Каждый раз, когда выполняется код в скобках, значение <userinput ->x</userinput -> увеличивается на 1. Выполнение цикла продолжиться, пока <userinput ->x</userinput -> не станет равным 10. Код в скобках выводит на печать произведение <userinput ->x</userinput -> и 7. Результат работы этой программы — таблица умножения на 7.</para -></listitem> +</screen> Каждый раз, когда выполняется код в скобках, значение <userinput>x</userinput> увеличивается на 1. Выполнение цикла продолжиться, пока <userinput>x</userinput> не станет равным 10. Код в скобках выводит на печать произведение <userinput>x</userinput> и 7. Результат работы этой программы — таблица умножения на 7.</para></listitem> </varlistentry> </variablelist> </sect2> @@ -1474,29 +707,15 @@ x = 4 <sect1 id="learn"> -<title ->Создавайте свои собственные команды</title> -<para -><userinput ->Выучи</userinput -> — особенная команда, потому что она предназначена для создания ваших собственных команд. Создаваемые вами команды могут <glossterm linkend="input-output" ->принимать входные параметры и возвращать различные значения</glossterm ->. Давайте посмотрим, как создаются собственные команды: <screen> +<title>Создавайте свои собственные команды</title> +<para><userinput>Выучи</userinput> — особенная команда, потому что она предназначена для создания ваших собственных команд. Создаваемые вами команды могут <glossterm linkend="input-output">принимать входные параметры и возвращать различные значения</glossterm>. Давайте посмотрим, как создаются собственные команды: <screen> выучи круг x [ повтори 36 [ вперёд x налево 10 ] ] -</screen -> Новая команда называется <userinput ->круг</userinput ->. Её <glossterm linkend="input-output" ->входным параметром</glossterm -> является число — размер круга. Теперь команду <userinput ->круг</userinput -> можно использовать как же, как и обычные команды: <screen ->выучи круг X [ +</screen> Новая команда называется <userinput>круг</userinput>. Её <glossterm linkend="input-output">входным параметром</glossterm> является число — размер круга. Теперь команду <userinput>круг</userinput> можно использовать как же, как и обычные команды: <screen>выучи круг X [ повтори 36 [ вперёд X налево 10 @@ -1510,8 +729,7 @@ x = 4 круг 50 </screen> </para> -<para ->В следующем примере будет создана команда, возвращающая значение.<screen> +<para>В следующем примере будет создана команда, возвращающая значение.<screen> сброс выучи квадрат_числа n [ @@ -1520,10 +738,7 @@ x = 4 ] i = окно_вопроса "Введите число и нажмите OK" напиши i + ", умноженное на себя: " + квадрат_числа i -</screen -> В данном примере создана новая команда с именем<userinput ->квадрат_числа</userinput ->. Ей передаётся число, а она возвращает его квадрат. </para> +</screen> В данном примере создана новая команда с именем<userinput>квадрат_числа</userinput>. Ей передаётся число, а она возвращает его квадрат. </para> </sect1> </chapter> |