<chapter id="Glossary">
<title
>Глоссарий</title>

<para
>В данной главе вы найдёте объяснение большинства <quote
>непонятных</quote
> слов, встречающихся в данном руководстве.</para>

<glosslist>
<glossentry id="degrees">
<glossterm
>градусы</glossterm>
<glossdef
><para
>Градусы — единицы измерения углов или поворотов. Полный разворот — это 360 градусов, половина разворота  — это 180 градусов, четверть разворота — 90 градусов. Входными параметрами команд <userinput
>налево</userinput
>, <userinput
>направо</userinput
> и <userinput
>направление</userinput
> являются углы в градусах.</para
></glossdef>
</glossentry>

<glossentry id="input-output">
<glossterm
>входные параметры и возвращаемые значения команд</glossterm>
<glossdef
><para
>Некоторым командам необходимы входные параметры, некоторые возвращают значения. Есть такие, которые имеют <emphasis
>и</emphasis
> вход, <emphasis
>и</emphasis
> выход, а есть, наоборот, не имеющие ни входных параметров, ни возвращаемых значений.</para>
<para
>Вот несколько команд, имеющих только входные параметры: <screen>
вперёд 50
цвет_пера 255,0,0
напиши "Привет!"
</screen
> Команда <userinput
>вперёд</userinput
> принимает в качестве входного параметра число <userinput
>50</userinput
>. Данный параметр указывает команде <userinput
>вперёд</userinput
> на сколько <glossterm linkend="pixels"
>пикселов</glossterm
> вперёд должна продвинуться Черепашка. Входным параметром для <userinput
>цвет_пера</userinput
> является цвет, а для <userinput
>напиши</userinput
> — строка. И не забывайте, что входным параметром также может являться контейнер. Следующий пример продемонстрирует это: <screen
>$x = 50
напиши $x
вперёд 50
$стр = "привет!"
напиши $стр
</screen
></para>

<para
>Теперь приведём примеры команд, возвращающих значения: <screen>
$x = спроси "Введите что-нибудь и нажмите OK... спасибо!"
$r = случайное 1,100
</screen
> Команда <userinput
>спроси</userinput
> принимает в качестве входного параметра строку, а возвращает введённое число или строку. Как вы можете заметить, возвращаемое <userinput
>спроси</userinput
> значение помещается в контейнер <userinput
>x</userinput
>. Команда <userinput
>случайное</userinput
> также возвращает значение. В данном случае это будет число от 1 до 100. Как и в случае с предыдущей командой, выходное значение <userinput
>случайное</userinput
> также помещается в контейнер, имеющий имя <userinput
>r</userinput
>. Надо заметить, что контейнеры <userinput
>x</userinput
> и <userinput
>r</userinput
> нигде до этого в коде примера не использовались.</para>

<para
>Упомянем и команды, которые ничего не принимают и ничего не возвращают. Вот несколько примеров: <screen
>очисти
перо_подними
</screen>
</para
></glossdef>
</glossentry>

<glossentry id="intuitive-highlighting">
<glossterm
>подсветка синтаксиса</glossterm>
<glossdef
><para
>Это особенность &kturtle; делает программирование очень простым. С интуитивной подсветкой синтаксиса весь код в редакторе выводится разными цветами, в зависимости от того, для чего предназначена та или иная часть программы. В следующем списке вы найдёте описание разных типов кода и цветов, которые они получают в <link linkend="the-editor"
>редакторе кода</link
>. <table>
<title
>Разные типы кода и их раскраска</title>
<tgroup cols="3">
<tbody>
<row>
<entry
>команды</entry>
<entry
>тёмно-синий</entry>
<entry
>Обычные команды описаны <link linkend="commands"
>здесь</link
>.</entry>
</row>
<row>
<entry
>команды контроля выполнения</entry>
<entry
>чёрный (жирный)</entry>
<entry
>Эти специальные команды контролируют выполнение. Узнать больше можно <link linkend="controlling-execution"
>здесь</link
>.</entry>
</row>
<row>
<entry
>комментарии</entry>
<entry
>серый</entry>
<entry
>Строки комментария начинаются со знака комментария (#). Они игнорируются при выполнении программы. Комментарии необходимы для пояснения программистом того, что он делает в том или ином фрагменте кода, а также для того, чтобы временно не выполнять какие-либо команды.</entry>
</row>
<row>
<entry
>скобки {, }</entry>
<entry
>тёмно-зелёный (жирный)</entry>
<entry
>Скобки используются для группировки фрагмента программы. Зачастую скобки используются совместно с <link linkend="controlling-execution"
>командами контроля выполнения</link
>.</entry>
</row>
<row>
<entry
>команда <link linkend="learn"
>выучи</link
></entry>
<entry
>светло-зелёный (жирный)</entry>
<entry
>Команда <link linkend="learn"
>выучи</link
> используется для создания новых команд.</entry>
</row>
<row>
<entry
>строки</entry>
<entry
>красный</entry>
<entry
>Единственное, что мы скажем о строках — они должны начинаться и заканчиваться двойными кавычками (").</entry>
</row>
<row>
<entry
>числа</entry>
<entry
>тёмно-красный</entry>
<entry
>Числа..., да вроде бы говорить о них нечего.</entry>
</row>
<row>
<entry
>логические значения</entry>
<entry
>тёмно-красный</entry>
<entry
>Существует только два логических значения: истина и ложь.</entry>
</row>
<row>
<entry
>переменные</entry>
<entry
>фиолетовый</entry>
<entry
>Начинается с символа «$» и может содержать цифры, строки и логические значения.</entry>
</row>
<row>
<entry
>математические операторы</entry>
<entry
>серый</entry>
<entry
>Математические операторы: <userinput
>+</userinput
>, <userinput
>-</userinput
>, <userinput
>*</userinput
>, <userinput
>/</userinput
> и <userinput
>^</userinput
>.</entry>
</row>
<row>
<entry
>операторы сравнения</entry>
<entry
>светло-синий (жирный)</entry>
<entry
>Операторы сравнения: <userinput
>==</userinput
>, <userinput
>!=</userinput
>, <userinput
>&lt;</userinput
>, <userinput
>&gt;</userinput
>, <userinput
>&lt;=</userinput
> и <userinput
>&gt;=</userinput
>.</entry>
</row>
<row>
<entry
>логические операторы</entry>
<entry
>розовый (жирный)</entry>
<entry
>Логические операторы: <userinput
>и</userinput
>, <userinput
>или</userinput
> и <userinput
>не</userinput
>.</entry>
</row>
<row>
<entry
>обычный текст</entry>
<entry
>чёрный</entry>
<entry
></entry>
</row>
</tbody>
</tgroup>
</table>
</para
></glossdef>
</glossentry>

<glossentry id="pixels">
<glossterm
>пикселы</glossterm>
<glossdef
><para
>Пиксел — точка на экране. Если вы посмотрите на экран с очень близкого расстояния вы увидите, что ваш монитор использует пикселы. Пиксел — наименьшая частица, которая может быть нарисована на экране.</para>
<para
>Множеству команд требуется количество пикселов в качестве входных параметров. Вот эти команды: <userinput
>вперёд</userinput
>, <userinput
>назад</userinput
>, <userinput
>иди</userinput
>, <userinput
>иди_гор</userinput
>, <userinput
>иди_верт</userinput
>, <userinput
>размер_холста</userinput
> и <userinput
>толщина_пера</userinput
>.</para>
<para
>В ранних версиях &kturtle; холст был растровым изображением, в более поздних версиях холст — это векторный рисунок. Это означает, что холст можно увеличить или уменьшить, так как один пиксел не обязательно должен соответствовать одной точке на экране.</para>
</glossdef>
</glossentry>

<glossentry id="rgb">
<glossterm
>RGB комбинации (коды цветов)</glossterm>
<glossdef
><para
>RGB комбинации используются для описания цветов. <quote
>R</quote
> отвечает за <quote
>красный</quote
>, <quote
>G</quote
> за <quote
>зелёный</quote
> и <quote
>B</quote
> за <quote
>синий</quote
> цвета. Например, рассмотрим комбинацию <userinput
>255,0,0</userinput
>: первое число, отвечающее за <quote
>красный</quote
>, равно 255, а два остальных равны 0. Это говорит о том, что данная комбинация передаёт чистейший красный цвет. Каждая составляющая комбинации лежит в диапазоне от 0 до 255. Ниже приведён пример нескольких часто используемых цветов: <table frame="none">
<title
>Часто используемые RGB комбинации</title>
<tgroup cols="2" colsep="5" rowsep="1">
<colspec colname="c1"/>
<tbody>
<row
><entry
><userinput
>0,0,0</userinput
></entry
><entry
>чёрный</entry
></row>
<row
><entry
><userinput
>255,255,255</userinput
></entry
><entry
>белый</entry
></row>
<row
><entry
><userinput
>255,0,0</userinput
></entry
><entry
>красный</entry
></row>
<row
><entry
><userinput
>150,0,0</userinput
></entry
><entry
>тёмно-красный</entry
></row>
<row
><entry
><userinput
>0,255,0</userinput
></entry
><entry
>зелёный</entry
></row>
<row
><entry
><userinput
>0,0,255</userinput
></entry
><entry
>голубой</entry
></row>
<row
><entry
><userinput
>0,255,255</userinput
></entry
><entry
>светло-голубой</entry
></row>
<row
><entry
><userinput
>255,0,255</userinput
></entry
><entry
>розовый</entry
></row>
<row
><entry
><userinput
>255,255,0</userinput
></entry
><entry
>жёлтый</entry
></row>
</tbody>
</tgroup>
</table>
</para>
<para
>RGB комбинации в качестве входных параметров используются в двух командах: <userinput
>цвет_холста</userinput
> и <userinput
>цвет_пера</userinput
>.</para
></glossdef>
</glossentry>

<glossentry id="sprite">
<glossterm
>спрайт</glossterm>
<glossdef
><para
>Спрайт — это небольшая картинка, перемещаемая по экрану. Наша Черепашка, к слову, является спрайтом.</para>
<para
>Примечание: в данной версии &kturtle; спрайт не может быть заменён с Черепашки на что-либо другое. В следующих версиях &kturtle; такая возможность будет предусмотрена.</para
></glossdef>
</glossentry>

</glosslist>

</chapter>
