Практическая работа № 5. Построение алгоритмов линейных структур
Цель: сформировать у студентов навыки построения алгоритмов линейных структур с помощью учебной среды КУМИР.
Ход работы:
1. Ознакомиться с теоретическим материалом.
2. Выполнить задания для закрепления изученного материала.
Методические указания по выполнению работы.
1. Теоретические сведения: Исполнитель Робот
2 Среда Робота
Учебный исполнитель Робот предназначен для того, чтобы без участия человека сажать цветы в подготовленные для них грядки. В программе, с которой вы будете работать, Робот изображен в виде машинки, которая ездит по полю. Поле размечено на квадраты, каждый из которых может быть: 1) свободным местом ; 2) грядкой или 3) стенкой . Робот может переходить из клетки в клетку по грядкам или по свободным клеткам, ходить по клумбам с цветами запрещается. Он должен посадить цветы на всех грядках и вернуться на Базу, обозначенную значком , для пополнения запасов.
Робот может двигаться вперед и назад, а также разворачиваться на 90 и 180 градусов влево или вправо. Конечно, в реальной обстановке на Робота влияет ветер, дождь, неровность земли и т.п., но мы их не будем учитывать. Такое упрощенное представление называется моделью Робота.
2 Основные команды Робота
Как и любой исполнитель, Робот понимает только ограниченный набор команд, которые входят в его СКИ (список команд исполнителя). Пока нам хватит нескольких команд, перечисленных ниже:
¨ СКИ Робота:
направо; повернуться на 90 градусов вправо
налево; повернуться на 90 градусов влево
кругом; развернуться кругом (на 180 градусов)
вперед (n); перейти на n клеток вперед
назад (n); перейти на n клеток назад
посади; посадить цветы на грядке в том месте, где стоит Робот
Позже мы немного расширим СКИ и добавим в него новые команды. Робот не может ходить по диагонали, проходить сквозь стенки и топтать цветы на клумбах.
2 Простейшая программа (задача z1-3.maz)
ТриКлумбы { вперед(3); посади; направо; вперед(2); налево; вперед(2); налево; вперед(1); посади; вперед(2); посади; вперед(1); налево; вперед(1); }
|
Имя программы должно состоять из одного «слова», обратите внимание, что внутри нет пробелов. Каждая команда заканчивается точкой с запятой. Можно записывать несколько команд в одну строчку.
2 Какие ошибки могут быть у Робота?
1. Синтаксические (“НЕ ПОНИМАЮ”) – появляются при ошибках в написании команд, например
влево;
вперед (3);
направо (2);
2. Отказы (“НЕ МОГУ”) – появляются, например, если Роботу приказывают идти прямо на стенку или сажать цветы там, где нет грядки.
3. Логические – возникают тогда, когда Робот понимает команды и делает все, что ему сказали, но результат совсем не тот, какой мы ожидали.
Синтаксические ошибки и отказы обнаруживает сам исполнитель. Когда вы будете работать с компьютером, вы увидите сообщения об таких ошибках. Самые сложные ошибки – логические – придется искать самим.
2 Работа в системе Исполнители
Чтобы проверить программу и посмотреть исполнителя Робот в работе, мы будем использовать систему Исполнители, установленную на компьютерах. Найдите на Рабочем столе ярлык программы и дважды щелкните по нему. Когда программа запустится, вы увидите окно, показанное на рисунке справа.
Окно состоит из трех частей: верху расположены меню и кнопки для управления исполнителем, слева – редактор программы, а справа – поле исполнителя.
Сначала загрузите задачу для Робота, щелкнув по кнопке и выбрав заданный файл.
Затем надо набрать программу в поле редактора. Для того, чтобы ускорить ввод команд, удобно использовать меню Шаблоны. Там есть все команды языка программирования и команды исполнителя Робот.
Для того, чтобы компьютер выровнял все строки программы (привел программу в «приличный» вид), можно нажать клавишу F6 или щелкнуть по кнопке на панели инструментов.
Когда программа готова, запишите ее на диск, нажав клавишу F2 или кнопку на панели инструментов. В ответ на это при первой записи файла на диск появляется окно для ввода имени файла, где вам надо ввести любое имя и затем щелкнуть на кнопку ОК. При записи файла в следующий раз имя уже известно, поэтому система переименует старую версию, сделав у нее расширение *.bak, а новую запишет с тем же именем.
Для выполнения программы надо нажать клавишу F9 или кнопку на панели инструментов. Если в программе нет синтаксических ошибок, которые машина обнаруживает, вы увидите, как Робот (в виде машинки) выполняет программу.
Если ошибки есть, красным цветом будет выделена строка, в которой обнаружена ошибка, и выведено сообщение на экран. Посмотрите внимательно на эту строку и на предыдущую, нажмите на клавишу Enter и исправьте ошибку.
Если ошибок нет, но Робот не выполнил задание, в программе есть логическая ошибка. Для ее обнаружения воспользуйтесь режимом отладки: при нажатии на клавишу F8 исполнитель выполняет одну строку программы и останавливается. Такой режим называется пошаговым. Таким образом, можно определить, в какой строчке программа начинает выполняться не так, как вам хочется. Обнаружив ошибку, нажмите клавишу Esc для выхода из режима отладки. Когда все получилось, запишите новый вариант на диск и закончите работу, щелкнув по кнопке в правом верхнем углу окна или нажав клавиши Alt+F4.
Если вы забыли какую-то команду или хотите узнать то, что вам еще не рассказывали, щелкните на кнопке или нажмите клавишу F1, чтобы войти в справочную систему.
Если программа не доделана и записана на диск, вы сможете в следующий раз загрузить старую программу, нажав на клавишу F3 или щелкнув по кнопке . Чтобы начать новую программу и очистить поле редактора, щелкните по кнопке .
2. Задания для самостоятельной работы:
Необходимо записать с помощью алгоритма линейной структуры следующие задачи для движения робота в учебной среде программирования КУМИР исполнитель Робот.
Задание №1
В среде КУМИР «Робот» написать такой алгоритм движения для робота, чтобы он посадил 3-ри грядки и приехал в конце на базу:
Задание №2
В среде КУМИР «Робот» написать такой алгоритм движения для робота, чтобы он посадил все грядки и приехал в конце на базу:
Задание №3
В среде КУМИР «Робот» написать такой алгоритм движения для робота, чтобы он посадил все грядки и приехал в конце на базу:
Задание №4
В среде КУМИР «Робот» написать такой алгоритм движения для робота, чтобы он посадил все грядки и приехал в конце на базу:
Задание №5
В среде КУМИР «Робот» написать такой алгоритм движения для робота, чтобы он посадил все грядки и приехал в конце на базу:
Все алгоритмы движения должны иметь линейную структуру!
Скачано с www.znanio.ru
© ООО «Знанио»
С вами с 2009 года.