Меню
Разработки
Разработки  /  Информатика  /  Разное  /  6 класс  /  Работа со списками в ЛОГО

Работа со списками в ЛОГО

Лекции для углубленного изучения ЛОГО (продвинутый уровень)

Работа со списками в ЛОГО

30.08.2018

Содержимое разработки

Лекции для углубленного изучения ЛОГО (продвинутый уровень)


Тема 2. Работа со списками

2. 1. Понятия и определения

2. 1. 1. Команда ПУСТЬ


пусть слово слово-или-список 2 параметра

Создает переменную с именем слово и присваивает ей значение слово-или-список. Переменные не исчезают при закрытии проекта

Пример:

пусть “подруга “Марина - переменной с именем “подруга присваивается значение Марина

 

Аналогична этой - команда назови:

назови слово-или-список слово 2 параметра

Параметры те же, только указаны в обратном порядке.

2. 1. 2. Слово

Это переменная, которая содержит символы (буквы, цифры, знаки), не содержит пробелов и начинается с кавычек.

Словом может стать и несколько слов в обычном понимании, если они заключены в вертикальные скобки (в английской раскладке shift+ \).

Например, “мама; “|мама мыла раму |.

Для того чтобы убедиться в правильности работы со словами, можно использовать команду покажи.

2. 1. 3. Команда ПОКАЖИ

 

покажи слово-или-список 1 параметр

 

Печатает слово-или-список в Поле команд.

Примеры:

пусть “хелло “Привет!

покажи :хелло

Привет!

пусть “строка “|Очей очарованье…|

покажи :строка

Очей очарованье ...

Замечание. При использовании переменных надо учитывать, что кавычка перед ее именем обозначает, что используется именно имя переменной, а двоеточие, что используется ее значение. Например, если бы мы набрали строку покажи “пр, то появилось бы вместо Привет! - пр.

2. 1. 4. Списки

 

Списком называется произвольная последовательность элементов списка; элементом списка может быть или слово или список.

 

Списки записываются в виде: [....].

Например

 

пусть “имена [Оля Петя Коля]

В этом примере создается список с именем имена, у которого элементами являются имена девочки и мальчиков.

Элементы списка аналогичны элементам массива, каждый элемент которого может быть либо словом, либо другим символьным массивом. Получается древовидная вложенная структура.

2. 1. 5. Датчик ЭЛЕМЕНТ

Служит для вывода какого либо элемента существующего списка или буквы слова.

 

элемент число слово-или-список 2 параметра

 

Сообщает элемент слова-или-списка с номером число. Первый входной параметр должен быть не меньше единицы и не больше количества элементов в слове (списке).

 

Примеры:

покажи элемент 2 "Привет!

р

пустьмальчики [Ваня Илья Денис]

покажи элемент 3 :мальчики

Денис

покажи элемент 3 “мальчики

л

2. 1. 6. Датчик ПЕРВЫЙ

Используется для выдачи первого элемента списка или слова.

 

первый слово-или-список 1 параметр

 

Сообщает первый элемент слова-или-списка. Имеет сокращенную форму – прв.

 

Примеры:

1) покажи прв "хелло

х

2) покажи прв [Гонимы вешними лучами]

Гонимы

3) В этом примере список состоит из разных по природе элементов. То, что записано в вертикальных скобках, является словом, а то что в квадратных скобках – списком:

 

пусть "имена [|Оля Иванова| [Петя Миронов] |Коля Юшкин|]

 

 

 

 

 

Если напечатать весь список “имена, то разницу в природе его элементов трудно почувствовать. А вот если рассмотреть их первые элементы, то разница сразу ощущается:

 

покажи прв элемент 3 :имена

К

покажи прв элемент 2 :имена

Петя

 

Хочется отметить разницу между записями “имена и :имена. В первом случае идет указание на имя объекта, а во втором – на его значение.

 

2. 1. 7. Датчик СЛ_ЭЛЕМЕНТ

сл_элемент слово-или-список 1 параметр

Сообщает выбранный наугад элемент из слова или списка. Элементом слова является символ, элементом списка является слово или список.

Примеры:

1)      пусть “кошки [Мурка Дуська Васька Тимка]

покажи сл_элемент :кошки

Васька

покажи сл_элемент :кошки

Мурка

2)      пусть “т1 “|А у вас молоко убежало!|

покажи сл_элемент :т1

у

покажи сл_элемент :т1

!


Упражнение 1


Процедура startup

Startup – это особое имя для процедуры, которая позволяет произвести то или иное действие в момент открытия проекта. Процедура startup не может иметь входных параметров.

Например, в нижеприведенной процедуре при загрузке проекта разными цветами будет мигать поле проекта 7 раз (в качестве цветного салюта).

 

это startup

пусть "ц 5

повтори 7[нц :ц крась пусть "ц :ц + 10 жди 4 ]

нц 0 крась нц 9

конец


Процедуру startup можно вызывать также как и другие процедуры по желанию.

В первом задании по этой теме вам предстоит создать процедуру startup, которая выдавала бы одно, выбранное случайно, приветствие из созданного списка приветствий при открытии проекта и помещала бы его в специально созданное текстовое окно.

Хорошо бы сделать текст в этом окне побольше и пожирнее. Окно должно быть без имени.

В качестве списка приветствий можно взять, например, такой:

пусть “привет [Хелло! |Приветствую Вас!| Здравствуйте! Привет! |Добрый день!|]

2. 1. 8. Датчик СКОЛЬКО

сколько слово-или-список 1 параметр


Сообщает количество элементов в слове-или-списке.

Примеры:

покажи сколько "хелло

5

покажи сколько [0 1 2 3]

4

2. 1. 9. Датчик РАЗБЕРИ

разбери слово 1 параметр


Превращает символьную цепочку в список. Содержащиеся в символьной цепочке пробелы и возвраты каретки становятся разделителями элементов списка. Разбери может использоваться для превращения длинных слов (цепочек символов, содержащих пробелы) в списки слов, в частности, для считывания содержимого текстовых окон.

 

Пример1: Пусть имеется текстовое окно с именем текст1, содержащее слова «Сбежали мутными ручьями».


покажи текст1


Сбежали мутными ручьями


покажи сколько текст1


23 Слово из 23 символов, включая пробелы.

покажи сколько разбери текст1


3 Список из 3 слов.

Пример 2: Пусть имеется текстовое окно текст1 с именами мальчиков: «Ваня Миша Сергей»

пусть "мальчики разбери текст1

покажи элемент 1 :мальчики

Ваня


Упражнение 2

Пусть имеется текстовое окно текст1 с именами членов вашей команды, разделенными пробелами или написанными в столбик. Ваша задача будет состоять в создании еще двух окон. Одно из них должно содержать имена мальчиков, начинающихся на букву А, а если таких имен в списке нет, то надпись «Имен на букву А нет». Используйте при решении этой задачи команду если (см. справку), датчик прв (см. выше), команду много раз (см. справку) и список имен.

Второе окно должно содержать имена, длина которых не превышает 5 символов. Используйте датчик сколько, команды если и много_раз. Работу своих программ оформите в виде процедур на листе программ и сделайте кнопки, управляющие их работой.

Пример вида выполненного проекта приведен на рисунке.

 

 

Справка

Вам понадобиться при программировании еще несколько команд.


2. 1. 10. Команда много_раз

Служит для организации перебора значений из диапазона и выполнения с этими значениями команд из списка инструкций:


много_раз [диапазон] [список-инструкций]

Выполняет список-инструкций для каждого значения из диапазона. Первый входной параметр - это список, состоящий из имени временной переменной и числа, являющегося верхней границей диапазона (нижней границей диапазона является 0). Второй входной параметр - это список инструкций.

 

Пример1: В нижеследующем примере инструкция нов_цвет устанавливает цвет черепашки для каждого значения к, от 1 до 9. (Цвет черепашки не может равняться 0).

много_раз [ к 8] [ нов_цвет :к + 1 жди 5]

Пример2: следующая инструкция печатает числа 0, 1, 2, ..., 9 в текстовом окне.

много_раз [ к 9] [ вставь :к]


2. 1. 11. Команда ЕСЛИ

если логическое-значение список-инструкций 2 параметра


Выполняет список-инструкций только в том случае, если условие (первый входной параметр) сообщает да. См. если_иначе.


Примеры:

если цп = 115 стоп

эта команда вызовет остановку, когда черепашка будет стоять на поле фиолетового цвета (цвет поля 115)

если прв :имя = “К пиши “Да

эта команда сравнивает первую букву переменной “имя с буквой К и если она действительно окажется таковой, пишет слово Да в текстовое окно.


2. 1. 12. Команда ЕСЛИ_ИНАЧЕ


если_иначе логическое-значение список-инструкций1 список-инструкций2

(3 параметра)


Выполняет список-инструкций1, если первый входной параметр равен да. Выполняет список-инструкций2, если первый входной параметр равен нет. См. если.


Пример:

если_иначе цп = 15 [вп 50] [нд 50]

В этом примере если черепашка попадет на поле красного цвета (15), то она продвинется вперед, а если цвет будет другим, она будет пятиться назад.

-75%
Курсы профессиональной переподготовке

Учитель, преподаватель физики и информатики

Продолжительность 600 или 1000 часов
Документ: Диплом о профессиональной переподготовке
17800 руб.
от 4450 руб.
Подробнее
Скачать разработку
Сохранить у себя:
Работа со списками в ЛОГО (58.79 KB)

Комментарии 0

Чтобы добавить комментарий зарегистрируйтесь или на сайт