
- •Тема: Алгоритм. Понятие алгоритма, свойства алгоритмов. Исполнители алгоритмов. Исполнитель – черепашка. Система команд. Алгоритмическая структура следование.
- •Свойства алгоритма
- •Система команд черепашки в среде л-Граф:
- •Задание
- •Тема: Алгоритмическая структура повторение. Оператор цикла.
- •Задания
- •Тема: Понятие процедуры. Процедуры без параметров.
- •Задания
- •Тема: Использование переменных и арифметических выражений в среде «л-граф», процедуры с параметрами.
- •Задания
- •Тема: Практика решения задач на процедуры с параметрами
- •Задания
- •Тема: Структура ветвления «Если-То-Иначе»
- •Задания
- •Алфавит и синтаксис языка
- •Структура программы на языке Паскаль
- •Стандартные типы данных
- •Инструкция присваивания
- •Задания
- •Тема: Логические выражения. Переменные булевского типа. Логические операции.
- •Задания
- •Тема: Инструкции ввода-вывода.
- •Задания
- •Тема: Организация ветвлений в программе. Инструкция if...Then...Else.
- •Задания
- •Тема: Усечённая инструкция if...Then. Вложенные инструкции if...Then...Else.
- •Задания
- •Тема: Компьютерная графика. Стандартные графические процедуры.
- •Задания
- •Тема: Организация циклов в программах
- •Задания
- •Тема: Процедуры. Параметры процедур.
- •Задания
- •Тема: Практика решения задач. Нахождение суммы, произведения, количества чисел в последовательности, введенной с клавиатуры. Цикл-счетчик.
- •Задания
- •Список литературы
Задание
Познакомьтесь со средой Л-граф.
Напишите программу, позволяющую получить на экране компьютера какую-нибудь картинку. Например, домик, дерево, забор или робота.
Тема: Алгоритмическая структура повторение. Оператор цикла.
Помните на прошлом занятии мы писали программу рисования квадрата со стороной в 70 черепашьих шагов?
Легко заметить, что команды FORWARD 70 и RIGHT 90 в нашей программе повторяются четыре раза. Чтобы избежать таких повторов, можно и нужно использовать циклическую структуру.
Цикл — это многократно повторяющаяся часть алгоритма. В «Л-ГРАФ» для организации цикла есть команда REPEAT k (повторить k раз). Вызов этой команды осуществляется клавишами <Alt>+<F3>.
Формат команды:
REPEAT k
[
последовательность команд, которую необходимо повторить
]
Теперь программа рисования квадрата будет выглядеть следующим образом:
REPEAT 4
[
FORWARD 70
RIGHT 90
]
Последовательность команд, которую необходимо выполнить в цикле, называется тело цикла.
Задания
Напишите программы, позволяющие получить на экране компьютера следующие картинки. Размеры сторон задавайте произвольно:
Задание 1.
Задание 2.
З адание 3.
Задание 4*. Задание 5.
Задание 6. Задание 7*
Тема: Понятие процедуры. Процедуры без параметров.
Пример 1.
TO SQUARE REPEAT 4 [ FORWARD 70 RIGHT 90 ] END REPEAT 3 [ SQUARE RIGHT 120 ]
Последовательность команд, заключенная между TO и END, называется процедурой, а имя процедуры SQUARE — это новая команда для черепашки.
Применение процедур позволит Вам:
просто и легко писать программы;
получать понятные и легкочитаемые программы;
быстро находить ошибки в программе;
быстро изменять и совершенствовать Ваши программы.
Рассмотрим еще одну программу, которая рисует на экране несколько одинаковых квадратов равноудаленных друг от друга по горизонтали.
T
O
KVADRAT
REPEAT 4
[
FORWARD 70
RIGHT 90
]
END
TO PEREMESTIS NODRAW RIGHT 90 FORWARD 70 LEFT 90 DRAW END
REPEAT 3 [ KVADRAT PEREMESTIS ]
Задания
Напишите программы, позволяющие получить на экране компьютера следующие картинки. Размеры сторон задавайте произвольно:
Задание 1.
|
Задание 2.
|
Задание 3.
|
Задание 4.
|
Задание 5.
|
Задание 6.
|
Задание 7*.
|
|
|
Тема: Использование переменных и арифметических выражений в среде «л-граф», процедуры с параметрами.
Переменная — это величина, значение которой может меняться. Признаком переменной в среде «Л-ГРАФ» является символ ":" (двоеточие).
Имя переменной — это последовательность букв, цифр и знака подчеркивания (не более 32 символов), всегда начинающаяся с двоеточия.
Примеры имен переменных: :A, :A_1, :SPEED, :NUMBER1.
Для задания значений переменных или для изменения значения переменных используется команда присваивания.
Формат команды:
<имя переменной>=<арифметическое выражение>
Арифметическое выражение — это совокупность констант, переменных и стандартных математических функций, объединенных знаками арифметических операций и круглыми скобками так, чтобы данное выражение имело математический смысл.
Операции, используемые в арифметических выражениях:
-
*
—
умножение
/
—
деление
+
—
сложение
-
—
вычитание
Порядок вычисления арифметического выражения определяется в соответствии с приоритетом операций. Использование скобок позволяет изменить порядок вычисления выражения.
В среде «Л-ГРАФ» можно использовать следующие стандартные математические функции:
-
ARCTAN(X)
—
арктангенс
COS(X)
—
косинус
INT(X)
—
отбрасывание дробной части
SIN(X)
—
синус
SQR(X)
—
возведение в квадрат
SQRT(X)
—
извлечение квадратного корня
Аргумент в функциях COS(X), SIN(X) задается в радианах.
Примеры записи арифметических выражений и команд присваивания:
:A=25 :N=:N+1 :P=175*(:M+1)/200 :X1=INT(:K/2)
Мы описывали процедуру рисования квадрата:
TO KVADRAT REPEAT 4 [ FORWARD 70 RIGHT 360/4 ] END
По команде KVADRAT черепашка всякий раз рисовала на экране квадрат со стороной в 70 черепашьих шагов. А как же получить квадрат другого размера?
Изменим описание процедуры KVADRAT следующим образом:
TO KVADRAT :SIZE REPEAT 4 [ FORWARD :SIZE RIGHT 360/4 ] END
Теперь черепашка будет перемещаться не на 70 шагов, а на некоторую величину :SIZE.
Чтобы нарисовать квадрат со стороной, например, в 20 черепашьих шагов, необходимо задать черепашке команду: KVADRAT 20. При выполнении данной команды происходит обращение к процедуре KVADRAT и вместо величины :SIZE используется значение 20.
Величина :SIZE является параметром нашей новой команды KVADRAT.
Параметры, указанные при описании процедуры, называются формальные (мы описываем «формулу», по которой бегает черепашка).
А параметры, указанные при вызове процедуры, называются фактические (т. е. Фактические значения, с которыми работает черепашка).
Например,
KVADRAT 45
:A=60
KVADRAT :A
:A=:A+10
KVADRAT :A
KVADRAT SQR(:A)
:A=:A*2-40
KVADRAT :A
KVADRAT SQRT(:A)
Рассмотрим задачу построения правильного выпуклого N-угольника.
Пусть значение длины стороны многоугольника определяется параметром :SIZE, а количество сторон — параметром :N. При построении правильного N-угольника черепашка должна :N раз продвинуться вперед на величину :SIZE и повернуться на угол, значение которого равно 360/:N.
Опишем процедуру рисования правильного N-угольника с именем NUGOLNIK и двумя параметрами :SIZE и :N:
TO NUGOLNIK :N :SIZE REPEAT :N [ FORWARD :SIZE RIGHT 360/:N ] END
Меняя значения параметров :N и :SIZE, можно получить бесконечное множество правильных многоугольников с различными длинами сторон:
Легко заметить, что при большом значении параметра :N и маленьком значении :SIZE наш многоугольник на экране компьютера будет выглядеть окружностью.
В качестве значений параметров могут использоваться константа (число), переменная или арифметическое выражение.
-
TO KVADRAT :SIZE
REPEAT 4
[
FORWARD :SIZE
RIGHT 90
]
END
:A=10
REPEAT 5
[
SQUARE :A
:A=:A+20
]
Понятно, что мы рисуем квадраты с длиной стороны :A, которая каждый раз увеличивается на 20 черепашьих шагов, а длина стороны первого квадрата равна 10.