Ошибка выполнения робот нельзя сквозь стену

Система подготовки обучающихся к ОГЭ по информатике на примере решения задач по алгоритмизации в среде «КУМИР» Гребнева Татьяна Васильевна, учитель информатики МБОУ г. Мурманска СОШ № 33

Система подготовки обучающихся к ОГЭ по информатике на примере решения задач по алгоритмизации в среде «КУМИР»

Гребнева Татьяна Васильевна,

учитель информатики

МБОУ г. Мурманска СОШ № 33

Задание 15.1 Разработка алгоритма для учебного исполнителя «Робот»

Задание 15.1 Разработка алгоритма для учебного исполнителя «Робот»

Задание 15.1 Традиционно заключается в разработке алгоритма для учебного исполнителя «Робот». Описание команд исполнителя и синтаксиса управляющих конструкций соответствует общепринятому школьному алгоритмическому языку, также оно дано в тексте задания. Формулировке задания предшествует описание команд исполнителя и синтаксиса записи алгоритмических конструкций ветвления и цикла, поэтому задание может быть выполнено даже теми школьниками, которые не знакомы с используемым синтаксисом языка, но владеют основами алгоритмизации. На бесконечном поле имеются стены, которые робот должен обойти, закрасить нужные клетки и не разбиться. Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться. Учащиеся записывают алгоритм в текстовом редакторе и сохраняют в текстовом файле.

Задание 15.1

  • Традиционно заключается в разработке алгоритма для учебного исполнителя «Робот». Описание команд исполнителя и синтаксиса управляющих конструкций соответствует общепринятому школьному алгоритмическому языку, также оно дано в тексте задания.
  • Формулировке задания предшествует описание команд исполнителя и синтаксиса записи алгоритмических конструкций ветвления и цикла, поэтому задание может быть выполнено даже теми школьниками, которые не знакомы с используемым синтаксисом языка, но владеют основами алгоритмизации.
  • На бесконечном поле имеются стены, которые робот должен обойти, закрасить нужные клетки и не разбиться. Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться.
  • Учащиеся записывают алгоритм в текстовом редакторе и сохраняют в текстовом файле.

Основные ошибки при выполнении задания 15.1 Представленные алгоритмы решения работают только в частных случаях. Использование цикла «n раз» вместо цикла «пока». Использование конструкций ветвления вместо конструкции цикла. Представлены линейные алгоритмы решения. Происходит «зацикливание» (алгоритм не завершается). Закрашены лишние клетки. Закрашена лишняя клетка / Не закрашена нужная клетка. Столкновение со стеной (Робот разбивается). Алгоритм содержит бесконечные циклы. Некорректное использование операторов цикла – отсутствует начало цикла (НЦ) или конец цикла (КЦ).

Основные ошибки при выполнении задания 15.1

  • Представленные алгоритмы решения работают только в частных случаях.
  • Использование цикла «n раз» вместо цикла «пока».
  • Использование конструкций ветвления вместо конструкции цикла.
  • Представлены линейные алгоритмы решения.
  • Происходит «зацикливание» (алгоритм не завершается).
  • Закрашены лишние клетки.
  • Закрашена лишняя клетка / Не закрашена нужная клетка.
  • Столкновение со стеной (Робот разбивается).
  • Алгоритм содержит бесконечные циклы.
  • Некорректное использование операторов цикла – отсутствует начало цикла (НЦ) или конец цикла (КЦ).

Проблема Большая часть затруднений учащихся связана с недостаточностью умений смыслового чтения : представленные алгоритмы решения работают только при конкретных размерах коридора; робот закрашивает клетки, например, слева от стены, а не справа; алгоритм работает только для конкретной обстановки. По-прежнему учащиеся показывают недостаточные умения в использовании конструкции цикла «ПОКА» с условием : путают с конструкцией ветвления «ЕСЛИ» или неверно указывают условие выхода из цикла.

Проблема

Большая часть затруднений учащихся связана с недостаточностью умений смыслового чтения :

  • представленные алгоритмы решения работают только при конкретных размерах коридора;
  • робот закрашивает клетки, например, слева от стены, а не справа;
  • алгоритм работает только для конкретной обстановки.

По-прежнему учащиеся показывают недостаточные умения в использовании конструкции цикла «ПОКА» с условием :

  • путают с конструкцией ветвления «ЕСЛИ» или неверно указывают условие выхода из цикла.

Пример формулировки задания 15.1 На бесконечном поле есть горизонтальная и вертикальная стены. Правый конец горизонтальной стены соединён с нижним концом вертикальной стены. Длины стен неизвестны. В горизонтальной стене есть ровно один проход, точное место прохода и его ширина неизвестны. Робот находится в клетке, расположенной рядом с вертикальной стеной слева от её верхнего конца. На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).

Пример формулировки задания 15.1

На бесконечном поле есть горизонтальная и вертикальная стены. Правый конец горизонтальной стены соединён с нижним концом вертикальной стены. Длины стен неизвестны. В горизонтальной стене есть ровно один проход, точное место прохода и его ширина неизвестны. Робот находится в клетке, расположенной рядом с вертикальной стеной слева от её верхнего конца. На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).

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

Напишите для Робота алгоритм,

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

Важно учитывать: При исполнении алгоритма Робот не должен разрушиться. Выполнение алгоритма должно завершиться . Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для любого допустимого расположения стен и любого расположения и размера прохода внутри стены. Алгоритм может быть выполнен в среде формального исполнителя или записан в текстовом редакторе.

Важно учитывать:

  • При исполнении алгоритма Робот не должен разрушиться.
  • Выполнение алгоритма должно завершиться .
  • Конечное расположение Робота может быть произвольным.
  • Алгоритм должен решать задачу для любого допустимого расположения стен и любого расположения и размера прохода внутри стены.
  • Алгоритм может быть выполнен в среде формального исполнителя или записан в текстовом редакторе.

Правильное решение:

Правильное решение:

Правильное решение: Любое правильное решение этой задачи обязательно должно содержать не менее 7 циклов «пока», перемещающих робота вдоль стен. Если такие циклы в алгоритме отсутствуют, то задание решено неверно и оценивается в 0 баллов.

Правильное решение:

  • Любое правильное решение этой задачи обязательно должно содержать не менее 7 циклов «пока», перемещающих робота вдоль стен.
  • Если такие циклы в алгоритме отсутствуют, то задание решено неверно и оценивается в 0 баллов.

Критерии оценивания:

Критерии оценивания:

Разбор возможных ошибок

Разбор возможных ошибок

Ошибка № 1 : ширина прохода ровно 1 клетка За такое решение: 0 баллов .

Ошибка № 1 : ширина прохода ровно 1 клетка

За такое решение: 0 баллов .

Ошибка № 2 : цикл n раз За такое решение: 0 баллов .

Ошибка № 2 : цикл n раз

За такое решение: 0 баллов .

Ошибка № 3 : ветвление вместо цикла За такое решение: 0 баллов .

Ошибка № 3 : ветвление вместо цикла

За такое решение: 0 баллов .

Ошибка № 4 : линейный алгоритм За такое решение: 0 баллов .

Ошибка № 4 : линейный алгоритм

За такое решение: 0 баллов .

Ошибка № 5 : Задача решена, но при возвращении в исходную позицию произведена проверка препятствия сверху За такое решение: 0 баллов . Здесь надо помнить, что поле Робота бесконечно ! Поэтому произойдёт зацикливание последнего цикла. Если в условии задачи не указано конечное расположение Робота, а учащийся возвращает его в исходную позицию, то это за ошибку не считается (п ри условии корректной остановки).

Ошибка № 5 : Задача решена, но при возвращении в исходную позицию произведена проверка препятствия сверху

За такое решение: 0 баллов .

Здесь надо помнить, что поле Робота бесконечно !

Поэтому произойдёт зацикливание последнего цикла.

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

Ошибка № 6 : Закрашены лишние клетки Здесь надо помнить, что по условию поле Робота бесконечно и ширина прохода может быть бесконечно большой ! Поэтому в результате увеличения ширины прохода будет закрашено более 10 клеток. За такое решение: 0 баллов .

Ошибка № 6 : Закрашены лишние клетки

Здесь надо помнить, что по условию поле Робота бесконечно и ширина прохода может быть бесконечно большой !

Поэтому в результате увеличения ширины прохода будет закрашено более 10 клеток.

За такое решение: 0 баллов .

Ошибка № 7 : Закрашена лишняя клетка/ Не закрашена нужная клетка Данное решение на 1 балл : Робот не разбивается; закрашено не более 10 лишних клеток; не закрашено не более 10 клеток, которые должны быть закрашены.

Ошибка № 7 : Закрашена лишняя клетка/ Не закрашена нужная клетка

Данное решение на 1 балл :

  • Робот не разбивается;
  • закрашено не более 10 лишних клеток;
  • не закрашено не более 10 клеток, которые должны быть закрашены.

Ошибка № 8 : Столкновение со стеной ОШИБКА ВЫПОЛНЕНИЯ: Робот - нельзя сквозь стену ( 8061 ) За такое решение: 0 баллов .

Ошибка № 8 : Столкновение со стеной

ОШИБКА ВЫПОЛНЕНИЯ:

Робот — нельзя сквозь стену ( 8061 )

За такое решение: 0 баллов .

Правильное решение:

Правильное решение:

Рекомендации по проверке задания 15.1

Рекомендации по проверке задания 15.1

Задание 15.1 Представление в задании команд исполнителя и синтаксиса управляющих конструкций соответствует общепринятому школьному алгоритмическому языку. Использование свободно распространяемой среды учебного исполнителя, например, среду Кумир (сайт http:// www.niisi.ru/kumir ) или другую среду с аналогичными возможностями исполнителя «Робот». Синтаксис команд используемой среды может отличаться от синтаксиса, описанного в условии. Результатом выполнения является файл, подготовленный в среде учебного исполнителя , содержащий запись алгоритма, являющегося решением задания или текстовый файл , содержащий запись алгоритма.

Задание 15.1

  • Представление в задании команд исполнителя и синтаксиса управляющих конструкций соответствует общепринятому школьному алгоритмическому языку.
  • Использование свободно распространяемой среды учебного исполнителя, например, среду Кумир (сайт http:// www.niisi.ru/kumir ) или другую среду с аналогичными возможностями исполнителя «Робот».
  • Синтаксис команд используемой среды может отличаться от синтаксиса, описанного в условии.
  • Результатом выполнения является файл, подготовленный в среде учебного исполнителя , содержащий запись алгоритма, являющегося решением задания или текстовый файл , содержащий запись алгоритма.

Рекомендации по оцениванию Завершает ли работу проверяемый алгоритм (то есть верно ли, что алгоритм не содержит бесконечных циклов)? Остается ли робот цел в результате исполнения алгоритма (то есть верно ли, что Робот не разрушается от столкновения со стеной)? Полностью ли Робот выполняет поставленную задачу, то есть закрашивает все требуемые клетки . Если ответы утвердительные на все вопросы, то есть алгоритм всегда заканчивает свою роботу , Робот не разрушается при исполнении алгоритма и полностью выполняет поставленную в условии задачу, то задание оценивается в 2 балла.

Рекомендации по оцениванию

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

Если ответы утвердительные на все вопросы, то есть алгоритм всегда заканчивает свою роботу , Робот не разрушается при исполнении алгоритма и полностью выполняет поставленную в условии задачу, то задание оценивается в 2 балла.

Источники Система программирования КуМир https://www.niisi.ru/kumir/books.htm К.Ю. Поляков Кумир для подготовки к ОГЭ. Практикум http://kpolyakov.spb.ru/school/kumir.htm Программирование в системе Кумир https://sites.google.com/site/fakultativinformatika/ Денис Кириенко (Архив с курсом заданий для практикума) http://server.179.ru/wiki/?page=DenisKirienko/Kumir https://server.179.ru/wiki/?show_files=1&page=Denis_Kirienko/Kumir#header-files Удалова Т.Л. (Варианты для Робота) http://licey.net/free/18-programmirovanie_na_yazyke_kumir/70-sistema_programmirovaniya_kumir.html «Информатика. Кумир» Удалова Т.Л. https://books.google.ru/books?id=CdAqevFDPa4C&printsec=frontcover&hl=ru#v=onepage&q&f=false

Источники

Система программирования КуМир

https://www.niisi.ru/kumir/books.htm

К.Ю. Поляков Кумир для подготовки к ОГЭ. Практикум

http://kpolyakov.spb.ru/school/kumir.htm

Программирование в системе Кумир

https://sites.google.com/site/fakultativinformatika/

Денис Кириенко (Архив с курсом заданий для практикума)

http://server.179.ru/wiki/?page=DenisKirienko/Kumir

https://server.179.ru/wiki/?show_files=1&page=Denis_Kirienko/Kumir#header-files

Удалова Т.Л. (Варианты для Робота)

http://licey.net/free/18-programmirovanie_na_yazyke_kumir/70-sistema_programmirovaniya_kumir.html

«Информатика. Кумир» Удалова Т.Л.

https://books.google.ru/books?id=CdAqevFDPa4C&printsec=frontcover&hl=ru#v=onepage&q&f=false

Получив приказ
исполнить алгоритм, компьютер выполняет
следующие действия:

  1. Находит в памяти
    алгоритм с указанным именем.

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

  3. Последовательно
    читает команды после строки нач
    и передает
    их исполнителю. Каждый такой приказ на
    выполнение команды называется вызовом
    этой команды.

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

  5. Заканчивает
    выполнение алгоритма.

Пример.
Компьютер
получает приказ исполнить алгоритм
«ход конем».

  1. Компьютер находит
    в памяти алгоритм А1.

  2. В строке дано
    записан
    комментарий — компьютер его пропускает.

  3. Компьютер
    последовательно командует Роботу
    вправо,
    вправо, вниз
    .
    Робот
    исполняет
    эти команды.

  4. В строке надо
    помещен
    комментарий — компьютер его пропускает.

  5. Компьютер
    заканчивает выполнение алгоритма «ход
    конем».

7.6. Ошибки в алгоритмах

Если при составлении
алгоритма мы случайно вместо вниз
напишем внис
или вместо вправо
направо,
то компьютер нашу запись не поймет и,
даже не приступая к выполнению алгоритма,
сообщит об ошибке. Ошибки в записи
алгоритма называются синтаксическими.

Но даже если все
команды записаны правильно, это еще не
значит, что алгоритм составлен без
ошибок. Ошибки в составлении алгоритма
называются логическими.

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

Рис. 2

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

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

В правильно
составленных алгоритмах никаких ошибок
быть не должно. Но если синтаксические
ошибки обычно легко устранимы, то поиск
и устранение логических ошибок могут
оказаться весьма трудным делом. Таким
образом, все возможные ошибки можно
представить в виде таблицы:

Таблица 1. Ошибки
в алгоритмах.

Смысл ошибки

Название

Пример

1

Цель не достигнута

Логическая

Робот не попал
куда надо

2

Команда не входит
в СКИ

Синтаксическая

наверх, направо

3

Авария при попытке
исполнения команды

Семантическая
(отказ)

Попытка пройти
сквозь стену

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
Автор статьи

Дмитрий Михайлович Беляев

Эксперт по предмету «Информатика»

Задать вопрос автору статьи

Определение 1

Исполнитель «робот» в КуМире — это программа, написанная в программной среде КуМир.

В 1970 году академик Ершов А.П. разработал специальный язык для реализации различных алгоритмов, который был назван КуМир. На сегодняшний день КуМир является программой, которая может свободно распространяться и имеет различные модификации для разных операционных систем, включая Linuх и Windоws.

Исполнитель Робот

Запустив программу КуМир, мы попадаем в окно, предназначенное для набора программы робота.

Окно программы «Робот». Автор24 — интернет-биржа студенческих работ

Рисунок 1. Окно программы «Робот». Автор24 — интернет-биржа студенческих работ

Профориентация для студентов

Поможем определиться с профессией, окажем помощь в профессиональном самоопределении и трудоустройстве

Пройти профориентацию

Для отслеживания перемещений исполнителя при работе программы, необходимо запустить окно исполнителя Робот (обстановка старта). Она первоначально не заполнена, то есть не имеет стен или иных объектов.

Обстановка старта. Автор24 — интернет-биржа студенческих работ

Рисунок 2. Обстановка старта. Автор24 — интернет-биржа студенческих работ

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

«Исполнитель Робот в КуМире» 👇

Вид обстановки в текущий момент времени всегда целиком виден в рабочем поле наблюдательного окна Робота. Ниже приведён пример возможного вида текущей обстановки в наблюдательном окне.

Пример вида текущей обстановки. Автор24 — интернет-биржа студенческих работ

Рисунок 3. Пример вида текущей обстановки. Автор24 — интернет-биржа студенческих работ

Рабочее поле имеет зелёный фон, серым цветом Робот окрашивает клетки. Стены показаны жёлтыми, утолщёнными линиями. Расположение Робота в текущей клетке поля окна наблюдения показано маленьким ромбом.

Стартовая обстановка

Назначить стартовую обстановку возможно следующими вариантами:

  1. Путём загрузки стартовой обстановки из заранее сформированного файла с расширением .fill.
  2. Путём редактирования уже имеющейся стартовой обстановки при помощи программы редактирования стартовой обстановки. Далее необходимо выполнить сохранение обстановки в файл или прямо её использовать в программе.
  3. Сформировать свою стартовую обстановку.

Начать редактирование стартовой обстановки возможно путём использования команды «Редактировать стартовую обстановку», которая есть в меню Робота. Эта команда открывает окно редактирования стартовой обстановки, имеющее синий фон. Набор команд редактирования обстановки можно выполнить при помощи мышки. Например, чтобы поставитьубрать стенку, надо выполнить щелчок мышью по граничной межклеточной полосе, выполнитьубрать закраску клетки, надо выполнить щелчок по этой клетке. Для перемещения Робота, нужно перетащить его мышкой в требуемую клетку. Окно редактора имеет сверху полосу с основными функциями (свернуть, развернуть, закрыть) и главное меню. Чтобы выйти из режима редактора стартовой обстановки, необходимо просто использовать нужную кнопку окна редактора или использовать команду «Выход» меню. Нельзя выполнять редактирование сразу двух стартовых обстановок.

Редакция обстановки. Автор24 — интернет-биржа студенческих работ

Рисунок 4. Редакция обстановки. Автор24 — интернет-биржа студенческих работ

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

Сохранение. Автор24 — интернет-биржа студенческих работ

Рисунок 5. Сохранение. Автор24 — интернет-биржа студенческих работ

Чтобы исключить ошибки и упростить работу, желательно при вводе текста применять команду «Вставка». Эта команда позволяет вставлять уже подготовленные командные наборы.

Порядок действий при формировании программы Робот в КуМире

Чтобы создать программу исполнителя Робот на алгоритмическом языке КуМир, надо выполнить следующие действия:

  1. Выполнить активацию исполнителя Робот с помощью вкладки Вставка и там выбрать «использовать Робот».
  2. Осуществить создание стартовой обстановки (возможно путём редактирования имеющейся стартовой обстановки). Выбрать в списке меню Робот пункт «Новая обстановка», затем необходимо выбрать нужные размеры рабочего поля. После этого надо отредактировать обстановку, расставить требуемые стенки, определить начальную позицию робота. В завершение данного пункта требуется выполнить сохранение стартовой обстановки в файл.
  3. Выполнить загрузку стартовой обстановки.
  4. Сформировать программу в поле для алгоритма.
  5. Выполнить старт программы (при помощи кнопки F9 или через соответствующий пункт меню).
  6. Осуществить сохранение файла.

Тестирование программы на ошибки

Редактор оснащён сервисом подсветки ключевых слов, и, кроме того, нижнее окно представляет собой консоль ввода/вывода. Правая часть его предназначена для вывода итоговых результатов действий каждого оператора. Когда при работе программы происходит грубая ошибка, например, разбился исполнитель, системой формируется информация об ошибке, и она окрашивает в определённый цвет первую команду, вызвавшую сбой. Кроме того, окрашивается в аварийный цвет и робот. Когда выполнение программы завершается, системой так же формируется сообщение об этом. В случае, если при проверке работы алгоритма обнаруживается неверное функционирование Робота, имеется возможность возврата к стартовой обстановке, используя команду «Вернуться к стартовой обстановке» из меню Робота. Выполнить операцию сохранения программы, сформированной в операционной системе КуМир, возможно при помощи командной опции «Сохранить программу» из меню Программа. Этот файл оснащается расширением kum.

Пример написания программы

На поле бесконечного размера стоит расположенная горизонтально стена. Размеры стены не определены. Начальное положение Робота — выше стены в левом её окончании. Требуется написать алгоритм для робота, который закрашивает все клетки, расположенные над стеной на расстоянии одной пустой клетки от стены, вне зависимости от длины стены. Написание такой программы может быть представлено следующим образом.

Пример написания программы. Автор24 — интернет-биржа студенческих работ

Рисунок 6. Пример написания программы. Автор24 — интернет-биржа студенческих работ

Находи статьи и создавай свой список литературы по ГОСТу

Поиск по теме

Содержание

  1. Кумир имя не объявлено что делать
  2. Помогите, пожалуйста, почему в программе КуМир ,,Имя не объявлено», хотя там всё правильно. Что мне нужно исправить. ​
  3. Настройка среды Кумир для исполнителя Робот
  4. КуМир, Исполнитель Робот
  5. Главное меню
  6. Пульт
  7. Задачи
  8. Знакомство с языком и системой КуМир путем решения задач С2

Кумир имя не объявлено что делать

Помогите, пожалуйста, почему в программе КуМир ,,Имя не объявлено», хотя там всё правильно. Что мне нужно исправить. ​

Замечание: предполагается, что в имени файла нет «.».
program qq;
var s:string;
begin
writeln(‘Введите имя файла:’);
readln(s);
s:=copy(s,1,pos(‘.’,s))+’exe’;
writeln(s);
end.

Пример:
Введите имя файла:
Привет.txt
Привет.exe

5 — 10 + 20 = 15 (q = -2)
15 — 15 + 15 = 15 (q = -1)
20 -10 + 5 = 15 (q = -0.5)
15 + 0 + 0 = 15 (q = 0)
5 + 5 + 5 = 15 (q = 1)

программа на руби, для нахождения

Ответ:

Объяснение:

В этой кодировке символ занимат 1 байт = 8 бит.

284 на 8 нацело не делится, а число символов должно быть целым, поэтому такое сообщение невозможно.

Настройка среды Кумир для исполнителя Робот

На прошлом уроке мы познакомились с исполнителем Робот, узнали как его установить и запустить. Сегодня будем настраивать программу для дальнейшей работы.

Запущенная программа Кумир выглядит так.

Среда Кумир, исполнитель Робот

Первым делом мы должны раскомментировать первую строку нашей программы, убрав символ |

Раскомментируем первую строку

Таким образом, программа станет выглядеть так:

использовать Робот

алг

нач

кон

Удалив символ |, мы тем самым указали Кумиру на то, что будем работать с исполнителем Робот. Если этого не сделать, то при написании программы мы столкнемся с ошибкой «Нет такого алгоритма». Поэтому очень важно при создании новой программы раскомментировать первую строку. Теперь все готово для дальнейшей работы.

КуМир, Исполнитель Робот

Чтобы задать условия для выполнения, нужно выполнить команду меню Инструменты→Редактировать стартовую обстановку Робота.

В результате мы увидим окно:

Помощь выводит исчерпывающую информацию о возможных действиях:

Меню Обстановка позволяет сделать следующее:

Новая обстановка Сбрасывает имя файла и создает обстановку, показанную в синем окне выше
Открыть Открытие уже созданной обстановки (файл *.fil) для редактирования
Недавние обстановки Ускоряет доступ к 8 последним проектам
Сохранить Сохраняет текущие изменения
Сохранить как. Позволяет задать имя для обстановки
Сохранить как стартовую Именно она будет средой по умолчанию
Печать в файл Создает PDF-файл с картинкой обстановки, именем файла, датой и комментарием
Закрыть Закрывает окно редактирования

Главное меню

Пульт

Вызов пульта производится нажатием на кнопку или через меню Робот→Показать пульт.

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

Некоторые из записываемых команд окажутся избыточными, так как для них используется вывод информации, а не действия. Но их можно отредактировать, либо взять из них только нужные элементы.

Подробности использования пульта смотри меню Инфо→Язык и система КуМир.

Задачи

  1. Робот находится в левом верхнем углу прямоугольной области неизвестного размера, со всех сторон окруженной стенками. Посередине находится стена, в которой есть проход. Где он, точно неизвестно, но проход не примыкает к нижней стенке. Задача: написать программу, которая переведет робота в правый нижний угол. Файл среды.
  2. См. также ОГЭ: вопрос 20.1.
  3. См. также ЕГЭ: вопросы 6, 14.

Copyright © 1993–2022 Мацкявичюс Д.А. Все права защищены.
Никакая часть сайта не может быть воспроизведена никаким способом без письменного разрешения правообладателя и явной ссылки на данный ресурс.

Источник

Знакомство с языком и системой КуМир путем решения задач С2

Знакомство с языком и системой КуМир путем решения задач С2

Настоящая короткая инструкция адресована читателям, имеющим практический опыт решения нескольких десятков простейших задач по программированию на каком-нибудь языке программирования.

Предполагается, что читатель хочет с минимальными затратами времени научиться решать на школьном алгоритмическом языке в системе КуМир, задачи, подобные задачам С2-С6 демоверсии компьютеризированного ЕГЭ. Эта демоверсия опубликована на сайте МИОО: На том же сайте сказано, как загрузить систему КуМир (версия для ЕГЭ) для операционных систем типа MS Windows и Linux . Ниже мы будем обсуждать только те понятия, конструкции и команды школьного языка и системы КуМир, которые нужны при решении задач типа С2-С3. В частности, все программы ниже будут состоять из одного алгоритма без параметров. В условиях задач С2-С6 не предусмотрена какая-либо работа с файлами. Предписывается вводить информацию с клавиатуры и выводить ее на экран. Дополнительно требуется, чтобы каждая порция вводимой или выводимой информации размещалась на отдельной строке и обрабатывалась одной командой ввод или вывод .

Вывод значения величины х в отдельную строку производится в командой

где нс означает н овая с трока.

Ввод значения величины х производится командой

по этой команде в окне ввода/вывода подсвечивается строка, в которую будет направлено эхо ввода и система КуМир ожидает посимвольного ввода значения величины, завершаемого нажатием клавиши Enter .

Итак, загружаем КуМир и, согласно инструкции, запускаем версию КуМира для ЕГЭ. Мы увидим следующую картинку.

В верхней строке с иконками команд, правее крестика, должно быть пусто. Если правее крестика Вы увидели три желто-зеленые иконки, то Вы запустили полный КуМир, с Роботом и Чертежником, которые Вам не нужны. Перечитайте инструкцию и запустите версию КуМир для ЕГЭ. Размеры трех областей, которые мы видим при первом появлении окна КуМира на экране, для задач С2-С6 неудобны. Их нужно изменить. Для этого нужно «схватить» мышкой нижний край окна (под словом Редактирование) и уменьшить высоту окна, затем «схватить» мышкой правый край окна и уменьшить ширину и наконец, нужно подвинуть границы между тремя областями окна так, чтобы получилась картинка примерно такой формы и размера:

Начнем с задачи С2, в которой нужно подсчитать количество различных значений среди модулей трех введенных с клавиатуры целых чисел a , b , c .

Условие и решение задачи C 2

С2. Составить программу, которая вводит с клавиатуры три целых числа a, b,c (каждое число – отдельной командой «ввод»), заменяет каждое из этих чисел на его модуль и выводит на экран количество различных среди полученных трех чисел. Ничего, кроме этого количества, программа выводить не должна. Например, если все числа равны, программа должна выводить число 1 . При использовании системы Fr ee Pascal для представления целых чисел используйте тип LongInt .

Указание. Модуль целого числа можно вычислить следующим образом:

Пояснение. Ответом в этой задаче является программа, записанная на школьном алгоритмическом языке или языке Free Pascal. Эта программа должна быть подготовлена и проверена в среде программирования КуМир или Free Pascal и сохранена в одном файле средствами среды программирования. Далее этот файл должен быть загружен в экзаменационную работу средствами системы КТС ЕГЭ.
Не забудьте загрузить в Вашу экзаменационную работу файл с подготовленной Вами программой.

Важное замечание. В КуМире имена переменных можно писать русскими буквами, а можно и латинскими. Какой способ удобнее? При решении задач С2-С6 удобнее всего установить латинский нижний регистр и давать переменным однобуквенные имена, тем более, что в условиях задач уже используются имена: a , b , c , n . Чтобы поменьше переключать регистр при наборе ключевых слов на русском языке, используйте клавишу Alt: пока эта клавиша удерживается в нажатом положении, текущий латинский регистр становится русским (и наоборот).

Алгоритм решения задачи С2 назовем С2 (заглавная латинская буква С). КуМир для ЕГЭ настроен так, что латинские буквы в именах изображаются курсивом, поэтому в тексте программы латинские буквы можно отличить от схожих по начертанию русских. Сохранять программу будем в файле C 2.kum

Начнем составление алгоритма. В начале алгоритма, после слова нач, опишем целые переменные a , b , c

далее напишем команды ввода значения этих переменных с клавиатуры. Как требуется в условии задачи, каждое значение введем отдельной командой:

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

В окне ввода/вывода внизу появляется желтая строка, в которую будет производиться ввод цифр первого числа. В нижней части обрамления окна система выводит сообщение Ожидается ввод: цел. Ввод цифр целого числа должен быть завершен нажатием клавиши Enter . Введем единственую цифру первого числа 1 и нажмем клавишу Enter , аналогочно введем числа -1 и 2. Программа завершит работу:

На полях программы, справа от ее текста, система КуМир показывает результаты выполнения команд ввод в строках 3,4,5 и результаты присваиваний в строках 6,7,8. И на полях строк 3,4,5 и в окне ввода/вывода видно, что были введены три числа 1 -1 2 . Однако на полях строк 6,7,8 почему-то показано, что все три числа стали равны 1 . Почему же число c оказалось равным 1 , а не 2 ? «Элементарно, Ватсон»: на место строки 8 мы скопировали строку 6, собираясь затем поменять в ней в двух местах букву a на букву c . После этого мы изменили первую букву а , но забыли изменить вторую и получилась ошибочная команда

Исправим эту ошибку и попробуем дописать в конец алгоритма команду, вычисляющую количество различных среди чисел a , b :

Технические замечания. 1) Хотя в меню вставка есть макрокоманды по вставке управляющих конструкций, в данном случае удобнее набрать ключевые слова конструкции вручную, разместив их в одной строке.

2) В процессе редактировании строки, до момента окончания редактирования строки, КуМир не производит перепроверку программы. Эта перепроверка запускается после «покидания» строки курсором.

Уводим курсор из редактируемой строки номер 9 и смотрим, что получилось. КуМир сообщает, что в строке 9 найдены три ошибки типа «Величина или алгоритм не описаны»:

Какие именно величины не описаны, показано в строке 9 тремя красными подчеркиваниями. Во-первых, подчеркнута, русская буква а, ее нужно исправить на латинскую а. Кроме того, мы забыли описать величину k .

Исправляем эти ошибки и пока [1] КуМир переразбирает программу, думаем, что еще осталось сделать. Величина k показывает, сколько различных среди первых двух чисел a и b . Сравним третье число c числом а, затем с числом b . Если c не совпадает ни с a ни с b , то при переходе от набора чисел

a b к набору a b c количество различных чисел увеличивается на 1. Если же число c совпадает с одним из первых двух чисел, то добавление числа c к набору a b количества различных чисел не меняет. Эти длинные словесные объяснения записываются в алгоритме очень коротко:

Для завершения программы осталось вывести вычисленный ответ k в отдельной строке вывод k , нс:

Запустив программу для входных данных 1 1 1 , получим правильный ответ 1:

Запуская программу еще на нескольких наборах входных данных, убеждаемся, что она работает правильно:

Убедившись в правильности программы, необходимо сохранить ее, а затем включить файл C 2. kum в экзаменационную работу средствами системы КТС ЕГЭ.

[1] Для коротенькой программы переразбор происходит мгновенно. Для очень длинной программы на не очень новом компьютере переразбор может занять несколько секунд. Зеленый сигнал светофора показывает, что переразбор закончен. Для коротких программ на светофор можно не обращать внимания.

Источник

 Система подготовки обучающихся к ОГЭ по информатике на примере решения задач по алгоритмизации в среде «КУМИР»  Гребнева Татьяна Васильевна,  учитель информатики МБОУ г. Мурманска СОШ № 33

Система подготовки обучающихся к ОГЭ по информатике на примере решения задач по алгоритмизации в среде «КУМИР»

Гребнева Татьяна Васильевна,

учитель информатики

МБОУ г. Мурманска СОШ № 33

Задание 15.1  Разработка алгоритма для учебного исполнителя «Робот»

Задание 15.1 Разработка алгоритма для учебного исполнителя «Робот»

Задание 15.1 Традиционно заключается в разработке алгоритма для учебного исполнителя «Робот». Описание команд исполнителя и синтаксиса управляющих конструкций соответствует общепринятому школьному алгоритмическому языку, также оно дано в тексте задания. Формулировке задания предшествует описание команд исполнителя и синтаксиса записи алгоритмических конструкций ветвления и цикла, поэтому задание может быть выполнено даже теми школьниками, которые не знакомы с используемым синтаксисом языка, но владеют основами алгоритмизации. На бесконечном поле имеются стены, которые робот должен обойти, закрасить нужные клетки и не разбиться. Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться. Учащиеся записывают алгоритм в текстовом редакторе и сохраняют в текстовом файле.

Задание 15.1

  • Традиционно заключается в разработке алгоритма для учебного исполнителя «Робот». Описание команд исполнителя и синтаксиса управляющих конструкций соответствует общепринятому школьному алгоритмическому языку, также оно дано в тексте задания.
  • Формулировке задания предшествует описание команд исполнителя и синтаксиса записи алгоритмических конструкций ветвления и цикла, поэтому задание может быть выполнено даже теми школьниками, которые не знакомы с используемым синтаксисом языка, но владеют основами алгоритмизации.
  • На бесконечном поле имеются стены, которые робот должен обойти, закрасить нужные клетки и не разбиться. Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться.
  • Учащиеся записывают алгоритм в текстовом редакторе и сохраняют в текстовом файле.

Основные ошибки при выполнении задания 15.1 Представленные алгоритмы решения работают только в частных случаях. Использование цикла «n раз» вместо цикла «пока». Использование конструкций ветвления вместо конструкции цикла. Представлены линейные алгоритмы решения. Происходит «зацикливание» (алгоритм не завершается). Закрашены лишние клетки. Закрашена лишняя клетка / Не закрашена нужная клетка. Столкновение со стеной (Робот разбивается). Алгоритм содержит бесконечные циклы. Некорректное использование операторов цикла – отсутствует начало цикла (НЦ) или конец цикла (КЦ).

Основные ошибки при выполнении задания 15.1

  • Представленные алгоритмы решения работают только в частных случаях.
  • Использование цикла «n раз» вместо цикла «пока».
  • Использование конструкций ветвления вместо конструкции цикла.
  • Представлены линейные алгоритмы решения.
  • Происходит «зацикливание» (алгоритм не завершается).
  • Закрашены лишние клетки.
  • Закрашена лишняя клетка / Не закрашена нужная клетка.
  • Столкновение со стеной (Робот разбивается).
  • Алгоритм содержит бесконечные циклы.
  • Некорректное использование операторов цикла – отсутствует начало цикла (НЦ) или конец цикла (КЦ).

Проблема Большая часть затруднений учащихся связана с недостаточностью умений смыслового чтения : представленные алгоритмы решения работают только при конкретных размерах коридора; робот закрашивает клетки, например, слева от стены, а не справа; алгоритм работает только для конкретной обстановки. По-прежнему учащиеся показывают недостаточные умения в использовании конструкции цикла «ПОКА» с условием : путают с конструкцией ветвления «ЕСЛИ» или неверно указывают условие выхода из цикла.

Проблема

Большая часть затруднений учащихся связана с недостаточностью умений смыслового чтения :

  • представленные алгоритмы решения работают только при конкретных размерах коридора;
  • робот закрашивает клетки, например, слева от стены, а не справа;
  • алгоритм работает только для конкретной обстановки.

По-прежнему учащиеся показывают недостаточные умения в использовании конструкции цикла «ПОКА» с условием :

  • путают с конструкцией ветвления «ЕСЛИ» или неверно указывают условие выхода из цикла.

Пример формулировки задания 15.1 На бесконечном поле есть горизонтальная и вертикальная стены. Правый конец горизонтальной стены соединён с нижним концом вертикальной стены. Длины стен неизвестны. В горизонтальной стене есть ровно один проход, точное место прохода и его ширина неизвестны. Робот находится в клетке, расположенной рядом с вертикальной стеной слева от её верхнего конца. На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).

Пример формулировки задания 15.1

На бесконечном поле есть горизонтальная и вертикальная стены. Правый конец горизонтальной стены соединён с нижним концом вертикальной стены. Длины стен неизвестны. В горизонтальной стене есть ровно один проход, точное место прохода и его ширина неизвестны. Робот находится в клетке, расположенной рядом с вертикальной стеной слева от её верхнего конца. На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).

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

Напишите для Робота алгоритм,

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

Важно учитывать: При исполнении алгоритма Робот не должен разрушиться. Выполнение алгоритма должно завершиться . Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для любого допустимого расположения стен и любого расположения и размера прохода внутри стены. Алгоритм может быть выполнен в среде формального исполнителя или записан в текстовом редакторе.

Важно учитывать:

  • При исполнении алгоритма Робот не должен разрушиться.
  • Выполнение алгоритма должно завершиться .
  • Конечное расположение Робота может быть произвольным.
  • Алгоритм должен решать задачу для любого допустимого расположения стен и любого расположения и размера прохода внутри стены.
  • Алгоритм может быть выполнен в среде формального исполнителя или записан в текстовом редакторе.

Правильное решение:

Правильное решение:

Правильное решение:  Любое правильное решение этой задачи обязательно должно содержать не менее 7 циклов «пока», перемещающих робота вдоль стен.  Если такие циклы в алгоритме отсутствуют, то задание решено неверно и оценивается в 0 баллов.

Правильное решение:

  • Любое правильное решение этой задачи обязательно должно содержать не менее 7 циклов «пока», перемещающих робота вдоль стен.
  • Если такие циклы в алгоритме отсутствуют, то задание решено неверно и оценивается в 0 баллов.

Критерии оценивания:

Критерии оценивания:

Разбор возможных ошибок

Разбор возможных ошибок

Ошибка № 1 :  ширина прохода ровно      1 клетка  За такое решение: 0 баллов .

Ошибка № 1 : ширина прохода ровно 1 клетка

За такое решение: 0 баллов .

Ошибка № 2 : цикл n раз  За такое решение: 0 баллов .

Ошибка № 2 : цикл n раз

За такое решение: 0 баллов .

Ошибка № 3 : ветвление вместо цикла  За такое решение: 0 баллов .

Ошибка № 3 : ветвление вместо цикла

За такое решение: 0 баллов .

Ошибка № 4 : линейный алгоритм  За такое решение: 0 баллов .

Ошибка № 4 : линейный алгоритм

За такое решение: 0 баллов .

Ошибка № 5 : Задача решена, но при возвращении в исходную позицию  произведена проверка препятствия сверху За такое решение: 0 баллов . Здесь надо помнить, что поле Робота бесконечно ! Поэтому произойдёт зацикливание последнего цикла. Если в условии задачи не указано конечное расположение Робота, а учащийся возвращает его в исходную позицию, то это за ошибку не считается (п ри условии корректной остановки).

Ошибка № 5 : Задача решена, но при возвращении в исходную позицию произведена проверка препятствия сверху

За такое решение: 0 баллов .

Здесь надо помнить, что поле Робота бесконечно !

Поэтому произойдёт зацикливание последнего цикла.

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

Ошибка № 6 : Закрашены лишние клетки Здесь надо помнить, что по условию поле Робота бесконечно и ширина прохода может быть бесконечно большой ! Поэтому в результате увеличения ширины прохода будет закрашено более 10 клеток.  За такое решение: 0 баллов .

Ошибка № 6 : Закрашены лишние клетки

Здесь надо помнить, что по условию поле Робота бесконечно и ширина прохода может быть бесконечно большой !

Поэтому в результате увеличения ширины прохода будет закрашено более 10 клеток.

За такое решение: 0 баллов .

Ошибка № 7 :  Закрашена лишняя клетка/     Не закрашена нужная клетка Данное решение на 1 балл :  Робот не разбивается;  закрашено не более 10 лишних клеток;  не закрашено не более 10 клеток, которые должны быть закрашены.

Ошибка № 7 : Закрашена лишняя клетка/ Не закрашена нужная клетка

Данное решение на 1 балл :

  • Робот не разбивается;
  • закрашено не более 10 лишних клеток;
  • не закрашено не более 10 клеток, которые должны быть закрашены.

Ошибка № 8 : Столкновение со стеной ОШИБКА ВЫПОЛНЕНИЯ: Робот - нельзя сквозь стену ( 8061 )  За такое решение: 0 баллов .

Ошибка № 8 : Столкновение со стеной

ОШИБКА ВЫПОЛНЕНИЯ:

Робот — нельзя сквозь стену ( 8061 )

За такое решение: 0 баллов .

Правильное решение:

Правильное решение:

Рекомендации по проверке задания 15.1

Рекомендации по проверке задания 15.1

Задание 15.1 Представление в задании команд исполнителя и синтаксиса управляющих конструкций соответствует общепринятому школьному алгоритмическому языку. Использование свободно распространяемой среды учебного исполнителя, например, среду Кумир (сайт http:// www.niisi.ru/kumir ) или другую среду с аналогичными возможностями исполнителя «Робот». Синтаксис команд используемой среды может отличаться от синтаксиса, описанного в условии. Результатом выполнения является файл, подготовленный в среде учебного исполнителя , содержащий запись алгоритма, являющегося решением задания или  текстовый файл , содержащий запись алгоритма.

Задание 15.1

  • Представление в задании команд исполнителя и синтаксиса управляющих конструкций соответствует общепринятому школьному алгоритмическому языку.
  • Использование свободно распространяемой среды учебного исполнителя, например, среду Кумир (сайт http:// www.niisi.ru/kumir ) или другую среду с аналогичными возможностями исполнителя «Робот».
  • Синтаксис команд используемой среды может отличаться от синтаксиса, описанного в условии.
  • Результатом выполнения является файл, подготовленный в среде учебного исполнителя , содержащий запись алгоритма, являющегося решением задания или текстовый файл , содержащий запись алгоритма.

Рекомендации по оцениванию Завершает ли работу проверяемый алгоритм (то есть верно ли, что алгоритм не содержит бесконечных циклов)? Остается ли робот цел в результате исполнения алгоритма (то есть верно ли, что Робот не разрушается от столкновения со стеной)? Полностью ли Робот выполняет поставленную задачу, то есть закрашивает все требуемые клетки .  Если ответы утвердительные на все вопросы, то есть алгоритм всегда заканчивает свою роботу , Робот не разрушается  при исполнении алгоритма и полностью выполняет поставленную в условии задачу, то задание оценивается в 2 балла.

Рекомендации по оцениванию

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

Если ответы утвердительные на все вопросы, то есть алгоритм всегда заканчивает свою роботу , Робот не разрушается при исполнении алгоритма и полностью выполняет поставленную в условии задачу, то задание оценивается в 2 балла.

Источники Система программирования КуМир https://www.niisi.ru/kumir/books.htm К.Ю. Поляков Кумир для подготовки к ОГЭ. Практикум http://kpolyakov.spb.ru/school/kumir.htm Программирование в системе Кумир https://sites.google.com/site/fakultativinformatika/ Денис Кириенко (Архив с курсом заданий для практикума) http://server.179.ru/wiki/?page=DenisKirienko/Kumir https://server.179.ru/wiki/?show_files=1&page=Denis_Kirienko/Kumir#header-files Удалова Т.Л. (Варианты для Робота) http://licey.net/free/18-programmirovanie_na_yazyke_kumir/70-sistema_programmirovaniya_kumir.html «Информатика. Кумир» Удалова Т.Л. https://books.google.ru/books?id=CdAqevFDPa4C&printsec=frontcover&hl=ru#v=onepage&q&f=false

Источники

Система программирования КуМир

https://www.niisi.ru/kumir/books.htm

К.Ю. Поляков Кумир для подготовки к ОГЭ. Практикум

http://kpolyakov.spb.ru/school/kumir.htm

Программирование в системе Кумир

https://sites.google.com/site/fakultativinformatika/

Денис Кириенко (Архив с курсом заданий для практикума)

http://server.179.ru/wiki/?page=DenisKirienko/Kumir

https://server.179.ru/wiki/?show_files=1&page=Denis_Kirienko/Kumir#header-files

Удалова Т.Л. (Варианты для Робота)

http://licey.net/free/18-programmirovanie_na_yazyke_kumir/70-sistema_programmirovaniya_kumir.html

«Информатика. Кумир» Удалова Т.Л.

https://books.google.ru/books?id=CdAqevFDPa4C&printsec=frontcover&hl=ru#v=onepage&q&f=false

Российская Федерация

Московская область

Муниципальное общеобразовательное учреждение

Павлищевская средняя общеобразовательная школа

143214, Московская обл., Можайский район,                                Тел. (факс) (49638) 52-452.

 д. Павлищево, ул. Школьная, д1а                                               E-mail: Pavlishevo@mail.ru

Выступление на РМО учителей информатики

Тема: Разбор заданий ГИА Тема «Кумир и школьная информатика»

Учитель информатики

МОУ Павслищевская СОШ

Иванова Л.Н.

январь, 2018

     Назначение КИМ для ОГЭ – оценить уровень общеобразовательной подготовки по информатике и ИКТ выпускников IX классов общеобразовательных организаций в целях государственной итоговой аттестации выпускников. Результаты экзамена могут быть использованы при приеме обучающихся в профильные классы средней школы.

     Содержание экзаменационной работы определяет Федеральный компонент Государственного стандарта основного общего образования по информатике и ИКТ (приказ Минобразования России от 05.03.2004 № 1089).

     Экзаменационная работа охватывает основное содержание курса информатики и ИКТ, однозначно трактуемое в большинстве преподаваемых в школе вариантов курса информатики и ИКТ и входящее в Федеральный компонент государственного образовательного стандарта основного общего образования.

     В работу не включены задания, требующие простого воспроизведения знания терминов, понятий, величин, правил. При выполнении любого из заданий от экзаменуемого требуется решить какую-либо задачу: либо прямо использовать известное правило, алгоритм, умение; либо выбрать из общего количества изученных понятий и алгоритмов наиболее подходящее и применить его в известной либо новой ситуации.

     Часть 1 содержит 18 заданий базового и повышенного уровней сложности, среди которых 6 заданий с выбором ответа и 12 заданий, подразумевающих самостоятельное формулирование и запись экзаменуемым ответа в виде последовательности символов. Здесь нам интересно задание под номером 6, где проверяется умение исполнить алгоритм для конкретного исполнителя с фиксированным набором команд.

     Часть 2 работы содержит практические задания, проверяющие наиболее важные практические навыки курса информатики и ИКТ: умение обработать большой информационный массив данных и умение разработать и записать простой алгоритм. Здесь мы рассмотрим задание 20.1, где проверяется умение написать короткий алгоритм в среде формального исполнителя.

№6. Умение исполнить алгоритм для конкретного исполнителя с фиксированным набором команд

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

   Пользуясь пиктограммами в верхней части окна Чертёжника, можно менять масштаб рисунка, устанавливать шаг сетки или скрывать её.

   Чертёжник рисует с помощью пера, которое можно поднимать или опускать. Если при перемещении пера оно опущено, то за ним остаётся след в виде отрезка прямой, который прерывается в момент поднятия пера. Из отрезков линий и создаются рисунки.

   По умолчанию при запуске Чертёжника перо находится в начале системы координат в поднятом состоянии, его цвет – чёрный. Если в любой момент кликнуть по перу ПКМ, то можно увидеть текущие координаты пера Чертёжника. чертёжник может менять цвет пера, что позволяет рисовать цветные картинки.

СКИ Чертёжник

Чертёжник выполняет 6 команд:

  1. опустить перо;
  2. поднять перо;
  3. сместиться в точку (вещ х, вещ у);
  4. сместиться на вектор (вещ dх, вещ dу);
  5. установить цвет (лит цвет);
  6. надпись (вещ ширина_символа, лит текст).

Пример 1. Рассмотрим результат выполнения перечисленных команд. Опускаем перо и перемещаем Чертёжника в точку А(2,3). Получаем отрезок ОА

Затем, подняв перо, перемещаем Чертёжника в точку В(2,1), после чего выполняем команду смещение на вектор (3, 2).

Управление исполнителем Чертёжник

http://metodist.lbz.ru/authors/informatika/3/flash/gl3/2.php 

Пример 2 (ОГЭ)

Исполнитель Чертёжник перемещается на координатной плоскости, оставляя след в виде линии. Чертёжник может выполнять команду Сместиться на (a, b) (где a, b — целые числа), перемещающую Чертёжника из точки с координатами (x, у) в точку с координатами (x + а, у + b). Если числа a, b положительные, значение соответствующей координаты увеличивается; если отрицательные, уменьшается.

Например, если Чертёжник находится в точке с координатами (4, 2), то команда Сместиться на (2, −3) переместит Чертёжника в точку (6, −1).

Запись

Повтори k раз

Команда1 Команда2 КомандаЗ

Конец

означает, что последовательность команд Команда1 Команда2 КомандаЗ повторится k раз.

Чертёжнику был дан для исполнения следующий алгоритм:

Повтори 2 раз

Команда1 Сместиться на (3, 2) Сместиться на (2, 1) Конец

Сместиться на (−6, −4)

После выполнения этого алгоритма Чертёжник вернулся в исходную точку. Какую команду надо поставить вместо команды Команда1?

1) Сместиться на (−2, −1)
2) Сместиться на (1, 1)
3) Сместиться на (−4, −2)
4) Сместиться на (2, 1)

Пояснение: Команда Повтори 2 раз означает, что команды Сместиться на (3, 2) и Сместиться на (2, 1) выполнятся два раза. В результате Чертёжник переместится на 2·(3 + 2, 2 + 1) = (10, 6). Выполнив последнюю команду Сместиться на (−6, −4), Чертёжник окажется в точке (4, 2).

Чтобы Чертёжник вернулся в исходную точку, необходимо переместить его на (−4, −2). Учитывая, наличие команды Повтори 2 раз, приходим к выводу, что Команда 1 это команда Сместиться на (−2, −1).

Ответ: 1.

Можно предложить учащимся после решения на бумаге, проверить его в среде исполнителя Кумир.

Знакомство с Черепашкой в среде Кумир https://sites.google.com/site/fakultativinformatika/home/zanatie-1-znakomstvo-s-cerepahoj 

Пример 2

Исполнитель Черепашка перемещается на экране компьютера, оставляя след в виде линии. В каждый конкретный момент известно положение исполнителя и направление его движения. У исполнителя существует две команды: Вперёд n (где n — целое число), вызывающая передвижение Черепашки на n шагов в направлении движения; Направо m (где m — целое число), вызывающая изменение направления движения на m градусов по часовой стрелке. Запись Повтори k [Команда1 Команда2 КомандаЗ] означает, что последовательность команд в скобках повторится k раз.

Черепашке был дан для исполнения следующий алгоритм: Повтори 9 [Вперёд 70 Направо 90]. Какая фигура появится на экране?

1) незамкнутая ломаная линия
2) правильный девятиугольник
3) правильный восьмиугольник
4) правильный четырёхугольник

Пояснение: Выполняя алгоритм, Черепашка оставляет след в виде одинаковых отрезков, расположенных под углом 180° − 90° = 90° друг к другу. Такой угол составляют между собой стороны правильного четырёхугольника. Поэтому за первые четыре шага алгоритма Черепашка нарисует правильный четырёхугольник, а за следующие пять шагов пройдет по четырём его сторонам ещё раз. Следовательно, оставленный Черепашкой след представляет собой правильный четырёхугольник

Помним, что: Сумма внутренних углов выпуклого n-угольника равна 180°(n − 2), поэтому угол между его сторонами может быть найден по формуле 180°(1 − 2/n).

Ответ: 4.

Задание 20.1 заключается в разработке алгоритма для учебного исполнителя «Робот». Описание команд исполнителя и синтаксиса управляющих конструкций соответствует общепринятому школьному алгоритмическому языку, также оно дано в тексте задания. Для выполнения этого задания можно использовать свободно распространяемую среду учебного исполнителя, например, среду Кумир (сайт

http://www.niisi.ru/kumir/) или другую среду с аналогичными возможностями исполнителя «Робот».

     Результатом выполнения этого задания является файл, подготовленный в среде  учебного исполнителя, содержащий запись алгоритма, являющегося решением задания.

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

Пример 1

На бесконечном поле имеется вертикальная стена. Длина стены неизвестна. От верхнего конца стены вправо отходит горизонтальная стена также неизвестной длины. Робот находится в клетке, расположенной слева от нижнего края вертикальной стены. На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).

Порядок  создания алгоритма:

1.Командами  Инструменты  -Редактировать стартовую обстановку  нарисовать на поле Робота стены и установить Робота в начальное положение.

2.Командами Робот- Сохранить обстановку в файл сохранить новую обстановку и открыть её командами Робот – Сменить стартовую обстановку.

Напишите для Робота алгоритм, закрашивающий все клетки, расположенные левее вертикальной стены и выше горизонтальной стены и прилегающие к ним. Робот должен закрасить только клетки, удовлетворяющие данному условию. Например, для приведённого выше рисунка Робот должен закрасить следующие клетки (см. рисунок).

Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться.

Алгоритм напишите в текстовом редакторе и сохраните в текстовом файле.

Название файла и каталог для сохранения Вам сообщат организаторы экзамена.

3.Командами Вставка- Использовать Робот указать исполнителя.

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

Команды исполнителя будем записывать жирным шрифтом, а комментарии, поясняющие алгоритм и не являющиеся его частью, – курсивом. Начало комментария будем обозначать символом «|».

| Двигаемся вверх, пока не дойдём до конца вертикальной стены, закрашивая все

клетки на пути

нц пока не справа свободно

закрасить

вверх

кц

| Закрасим угловую клетку и переместимся в начало горизонтальной стены

закрасить

вправо

| Двигаемся вправо до конца горизонтальной стены, закрашивая все клетки на пути

нц пока не снизу свободно

закрасить

вправо

кц

5.Командами Выполнение –выполнить непрерывно (или по шагам) запустить алгоритм.

6.Рассмотреть результат выполнения алгоритма и при необходимости произвести его отладку.

Возможны и другие варианты решения

Пример 2

ОГЭ – 2018 ДЭМО. Исполнитель Робот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки. Между соседними (по сторонам) клетками может стоять стена, через которую Робот пройти не может.

У Робота есть девять команд. Четыре команды – это команды-приказы:

вверх вниз влево вправо

При выполнении любой из этих команд Робот перемещается на одну клетку соответственно: вверх ↑, вниз ↓, влево ←, вправо →. Если Робот получит команду передвижения сквозь стену, то он разрушится.

Также у Робота есть команда закрасить, при которой закрашивается клетка, в которой Робот находится в настоящий момент.

Ещё четыре команды – это команды проверки условий. Эти команды проверяют, свободен ли путь для Робота в каждом из четырёх возможных направлений:

сверху свободно снизу свободно слева свободно справа свободно

Эти команды можно использовать вместе с условием «eсли», имеющим следующий вид:

если условие то

последовательность команд

все

Здесь условие – одна из команд проверки условия.

Последовательность команд – это одна или несколько любых команд-приказов.

Например, для передвижения на одну клетку вправо, если справа нет стенки, и закрашивания клетки можно использовать такой алгоритм:

если справа свободно то

вправо

закрасить

все

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

если (справа свободно) и (не снизу свободно) то

вправо

все

Для повторения последовательности команд можно использовать цикл

«пока», имеющий следующий вид:

нц пока условие

последовательность команд

кц

Например, для движения вправо, пока это возможно, можно использовать следующий алгоритм:

нц пока справа свободно

вправо

кц

Выполните задание.

На бесконечном поле есть горизонтальная и вертикальная стены. Левый конец горизонтальной стены соединён с нижним концом вертикальной стены. Длины стен неизвестны. В вертикальной стене есть ровно один проход, точное место прохода и его ширина неизвестны. Робот находится в клетке, расположенной непосредственно над горизонтальной стеной у её правого конца.

На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).

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

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

Алгоритм должен решать задачу для любого допустимого расположения стен и любого расположения и размера прохода внутри стены.

Алгоритм может быть выполнен в среде формального исполнителя или записан в текстовом редакторе.

Сохраните алгоритм в текстовом файле. Название файла и каталог для сохранения Вам сообщат организаторы экзамена.

Решение:

Команды исполнителя будем записывать жирным шрифтом, а комментарии – курсивом. Начало комментария будем обозначать символом «|».

|Двигаемся влево, пока не дойдём до вертикальной стены.

нц пока слева свободно

влево

кц

|Двигаемся вверх, пока не дойдём до прохода в стене, и закрашиваем клетки.

нц пока не слева свободно

закрасить

вверх

кц

|Двигаемся дальше до вертикальной стены.

нц пока слева свободно

вверх

кц

|Двигаемся вверх до конца стены и закрашиваем клетки.

нц пока не слева свободно

закрасить

вверх

кц

|Обходим стену.

влево

вниз

|Двигаемся вниз, пока не дойдём до прохода в стене, и закрашиваем клетки.

нц пока не справа свободно

закрасить

вниз

кц

|Двигаемся дальше до вертикальной стены.

нц пока справа свободно

вниз

кц

Для подготовки учащихся к решению задач по этой теме предлагаю кроме учебника использовать:

Информационные ресурсы:

1) учебное пособие «Программирование на алгоритмическом языке Кумир» авт. Л. А. Анеликова, О. Б. Гусева;

2) Методическое пособие «Информатика. Кумир» авт. Удалова Т.А,, Ануфриева М.В. http://schoolinformati.my1.ru/load/metodicheskoe_posobie_informatika_kumir/1-1-0-85

3) Федеральный институт педагогических измерений  http://www.fipi.ru/oge-i-gve-9/demoversii-specifikacii-kodifikatory 

4)  Знакомство с Черепашкой https://sites.google.com/site/fakultativinformatika/home/zanatie-1-znakomstvo-s-cerepahoj

 Система подготовки обучающихся к ОГЭ по информатике на примере решения задач по алгоритмизации в среде «КУМИР» Гребнева Татьяна Васильевна, учитель информатики МБОУ г. Мурманска СОШ № 33

Система подготовки обучающихся к ОГЭ по информатике на примере решения задач по алгоритмизации в среде «КУМИР»

Гребнева Татьяна Васильевна,

учитель информатики

МБОУ г. Мурманска СОШ № 33

Задание 15.1 Разработка алгоритма для учебного исполнителя «Робот»

Задание 15.1 Разработка алгоритма для учебного исполнителя «Робот»

Задание 15.1 Традиционно заключается в разработке алгоритма для учебного исполнителя «Робот». Описание команд исполнителя и синтаксиса управляющих конструкций соответствует общепринятому школьному алгоритмическому языку, также оно дано в тексте задания. Формулировке задания предшествует описание команд исполнителя и синтаксиса записи алгоритмических конструкций ветвления и цикла, поэтому задание может быть выполнено даже теми школьниками, которые не знакомы с используемым синтаксисом языка, но владеют основами алгоритмизации. На бесконечном поле имеются стены, которые робот должен обойти, закрасить нужные клетки и не разбиться. Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться. Учащиеся записывают алгоритм в текстовом редакторе и сохраняют в текстовом файле.

Задание 15.1

  • Традиционно заключается в разработке алгоритма для учебного исполнителя «Робот». Описание команд исполнителя и синтаксиса управляющих конструкций соответствует общепринятому школьному алгоритмическому языку, также оно дано в тексте задания.
  • Формулировке задания предшествует описание команд исполнителя и синтаксиса записи алгоритмических конструкций ветвления и цикла, поэтому задание может быть выполнено даже теми школьниками, которые не знакомы с используемым синтаксисом языка, но владеют основами алгоритмизации.
  • На бесконечном поле имеются стены, которые робот должен обойти, закрасить нужные клетки и не разбиться. Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен внутри прямоугольного поля. При исполнении алгоритма Робот не должен разрушиться.
  • Учащиеся записывают алгоритм в текстовом редакторе и сохраняют в текстовом файле.

Основные ошибки при выполнении задания 15.1 Представленные алгоритмы решения работают только в частных случаях. Использование цикла «n раз» вместо цикла «пока». Использование конструкций ветвления вместо конструкции цикла. Представлены линейные алгоритмы решения. Происходит «зацикливание» (алгоритм не завершается). Закрашены лишние клетки. Закрашена лишняя клетка / Не закрашена нужная клетка. Столкновение со стеной (Робот разбивается). Алгоритм содержит бесконечные циклы. Некорректное использование операторов цикла – отсутствует начало цикла (НЦ) или конец цикла (КЦ).

Основные ошибки при выполнении задания 15.1

  • Представленные алгоритмы решения работают только в частных случаях.
  • Использование цикла «n раз» вместо цикла «пока».
  • Использование конструкций ветвления вместо конструкции цикла.
  • Представлены линейные алгоритмы решения.
  • Происходит «зацикливание» (алгоритм не завершается).
  • Закрашены лишние клетки.
  • Закрашена лишняя клетка / Не закрашена нужная клетка.
  • Столкновение со стеной (Робот разбивается).
  • Алгоритм содержит бесконечные циклы.
  • Некорректное использование операторов цикла – отсутствует начало цикла (НЦ) или конец цикла (КЦ).

Проблема Большая часть затруднений учащихся связана с недостаточностью умений смыслового чтения : представленные алгоритмы решения работают только при конкретных размерах коридора; робот закрашивает клетки, например, слева от стены, а не справа; алгоритм работает только для конкретной обстановки. По-прежнему учащиеся показывают недостаточные умения в использовании конструкции цикла «ПОКА» с условием : путают с конструкцией ветвления «ЕСЛИ» или неверно указывают условие выхода из цикла.

Проблема

Большая часть затруднений учащихся связана с недостаточностью умений смыслового чтения :

  • представленные алгоритмы решения работают только при конкретных размерах коридора;
  • робот закрашивает клетки, например, слева от стены, а не справа;
  • алгоритм работает только для конкретной обстановки.

По-прежнему учащиеся показывают недостаточные умения в использовании конструкции цикла «ПОКА» с условием :

  • путают с конструкцией ветвления «ЕСЛИ» или неверно указывают условие выхода из цикла.

Пример формулировки задания 15.1 На бесконечном поле есть горизонтальная и вертикальная стены. Правый конец горизонтальной стены соединён с нижним концом вертикальной стены. Длины стен неизвестны. В горизонтальной стене есть ровно один проход, точное место прохода и его ширина неизвестны. Робот находится в клетке, расположенной рядом с вертикальной стеной слева от её верхнего конца. На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).

Пример формулировки задания 15.1

На бесконечном поле есть горизонтальная и вертикальная стены. Правый конец горизонтальной стены соединён с нижним концом вертикальной стены. Длины стен неизвестны. В горизонтальной стене есть ровно один проход, точное место прохода и его ширина неизвестны. Робот находится в клетке, расположенной рядом с вертикальной стеной слева от её верхнего конца. На рисунке указан один из возможных способов расположения стен и Робота (Робот обозначен буквой «Р»).

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

Напишите для Робота алгоритм,

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

Важно учитывать: При исполнении алгоритма Робот не должен разрушиться. Выполнение алгоритма должно завершиться . Конечное расположение Робота может быть произвольным. Алгоритм должен решать задачу для любого допустимого расположения стен и любого расположения и размера прохода внутри стены. Алгоритм может быть выполнен в среде формального исполнителя или записан в текстовом редакторе.

Важно учитывать:

  • При исполнении алгоритма Робот не должен разрушиться.
  • Выполнение алгоритма должно завершиться .
  • Конечное расположение Робота может быть произвольным.
  • Алгоритм должен решать задачу для любого допустимого расположения стен и любого расположения и размера прохода внутри стены.
  • Алгоритм может быть выполнен в среде формального исполнителя или записан в текстовом редакторе.

Правильное решение:

Правильное решение:

Правильное решение: Любое правильное решение этой задачи обязательно должно содержать не менее 7 циклов «пока», перемещающих робота вдоль стен. Если такие циклы в алгоритме отсутствуют, то задание решено неверно и оценивается в 0 баллов.

Правильное решение:

  • Любое правильное решение этой задачи обязательно должно содержать не менее 7 циклов «пока», перемещающих робота вдоль стен.
  • Если такие циклы в алгоритме отсутствуют, то задание решено неверно и оценивается в 0 баллов.

Критерии оценивания:

Критерии оценивания:

Разбор возможных ошибок

Разбор возможных ошибок

Ошибка № 1 : ширина прохода ровно 1 клетка За такое решение: 0 баллов .

Ошибка № 1 : ширина прохода ровно 1 клетка

За такое решение: 0 баллов .

Ошибка № 2 : цикл n раз За такое решение: 0 баллов .

Ошибка № 2 : цикл n раз

За такое решение: 0 баллов .

Ошибка № 3 : ветвление вместо цикла За такое решение: 0 баллов .

Ошибка № 3 : ветвление вместо цикла

За такое решение: 0 баллов .

Ошибка № 4 : линейный алгоритм За такое решение: 0 баллов .

Ошибка № 4 : линейный алгоритм

За такое решение: 0 баллов .

Ошибка № 5 : Задача решена, но при возвращении в исходную позицию произведена проверка препятствия сверху За такое решение: 0 баллов . Здесь надо помнить, что поле Робота бесконечно ! Поэтому произойдёт зацикливание последнего цикла. Если в условии задачи не указано конечное расположение Робота, а учащийся возвращает его в исходную позицию, то это за ошибку не считается (п ри условии корректной остановки).

Ошибка № 5 : Задача решена, но при возвращении в исходную позицию произведена проверка препятствия сверху

За такое решение: 0 баллов .

Здесь надо помнить, что поле Робота бесконечно !

Поэтому произойдёт зацикливание последнего цикла.

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

Ошибка № 6 : Закрашены лишние клетки Здесь надо помнить, что по условию поле Робота бесконечно и ширина прохода может быть бесконечно большой ! Поэтому в результате увеличения ширины прохода будет закрашено более 10 клеток. За такое решение: 0 баллов .

Ошибка № 6 : Закрашены лишние клетки

Здесь надо помнить, что по условию поле Робота бесконечно и ширина прохода может быть бесконечно большой !

Поэтому в результате увеличения ширины прохода будет закрашено более 10 клеток.

За такое решение: 0 баллов .

Ошибка № 7 : Закрашена лишняя клетка/ Не закрашена нужная клетка Данное решение на 1 балл : Робот не разбивается; закрашено не более 10 лишних клеток; не закрашено не более 10 клеток, которые должны быть закрашены.

Ошибка № 7 : Закрашена лишняя клетка/ Не закрашена нужная клетка

Данное решение на 1 балл :

  • Робот не разбивается;
  • закрашено не более 10 лишних клеток;
  • не закрашено не более 10 клеток, которые должны быть закрашены.

Ошибка № 8 : Столкновение со стеной ОШИБКА ВЫПОЛНЕНИЯ: Робот - нельзя сквозь стену ( 8061 ) За такое решение: 0 баллов .

Ошибка № 8 : Столкновение со стеной

ОШИБКА ВЫПОЛНЕНИЯ:

Робот — нельзя сквозь стену ( 8061 )

За такое решение: 0 баллов .

Правильное решение:

Правильное решение:

Рекомендации по проверке задания 15.1

Рекомендации по проверке задания 15.1

Задание 15.1 Представление в задании команд исполнителя и синтаксиса управляющих конструкций соответствует общепринятому школьному алгоритмическому языку. Использование свободно распространяемой среды учебного исполнителя, например, среду Кумир (сайт http:// www.niisi.ru/kumir ) или другую среду с аналогичными возможностями исполнителя «Робот». Синтаксис команд используемой среды может отличаться от синтаксиса, описанного в условии. Результатом выполнения является файл, подготовленный в среде учебного исполнителя , содержащий запись алгоритма, являющегося решением задания или текстовый файл , содержащий запись алгоритма.

Задание 15.1

  • Представление в задании команд исполнителя и синтаксиса управляющих конструкций соответствует общепринятому школьному алгоритмическому языку.
  • Использование свободно распространяемой среды учебного исполнителя, например, среду Кумир (сайт http:// www.niisi.ru/kumir ) или другую среду с аналогичными возможностями исполнителя «Робот».
  • Синтаксис команд используемой среды может отличаться от синтаксиса, описанного в условии.
  • Результатом выполнения является файл, подготовленный в среде учебного исполнителя , содержащий запись алгоритма, являющегося решением задания или текстовый файл , содержащий запись алгоритма.

Рекомендации по оцениванию Завершает ли работу проверяемый алгоритм (то есть верно ли, что алгоритм не содержит бесконечных циклов)? Остается ли робот цел в результате исполнения алгоритма (то есть верно ли, что Робот не разрушается от столкновения со стеной)? Полностью ли Робот выполняет поставленную задачу, то есть закрашивает все требуемые клетки . Если ответы утвердительные на все вопросы, то есть алгоритм всегда заканчивает свою роботу , Робот не разрушается при исполнении алгоритма и полностью выполняет поставленную в условии задачу, то задание оценивается в 2 балла.

Рекомендации по оцениванию

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

Если ответы утвердительные на все вопросы, то есть алгоритм всегда заканчивает свою роботу , Робот не разрушается при исполнении алгоритма и полностью выполняет поставленную в условии задачу, то задание оценивается в 2 балла.

Источники Система программирования КуМир https://www.niisi.ru/kumir/books.htm К.Ю. Поляков Кумир для подготовки к ОГЭ. Практикум http://kpolyakov.spb.ru/school/kumir.htm Программирование в системе Кумир https://sites.google.com/site/fakultativinformatika/ Денис Кириенко (Архив с курсом заданий для практикума) http://server.179.ru/wiki/?page=DenisKirienko/Kumir https://server.179.ru/wiki/?show_files=1&page=Denis_Kirienko/Kumir#header-files Удалова Т.Л. (Варианты для Робота) http://licey.net/free/18-programmirovanie_na_yazyke_kumir/70-sistema_programmirovaniya_kumir.html «Информатика. Кумир» Удалова Т.Л. https://books.google.ru/books?id=CdAqevFDPa4C&printsec=frontcover&hl=ru#v=onepage&q&f=false

Источники

Система программирования КуМир

https://www.niisi.ru/kumir/books.htm

К.Ю. Поляков Кумир для подготовки к ОГЭ. Практикум

http://kpolyakov.spb.ru/school/kumir.htm

Программирование в системе Кумир

https://sites.google.com/site/fakultativinformatika/

Денис Кириенко (Архив с курсом заданий для практикума)

http://server.179.ru/wiki/?page=DenisKirienko/Kumir

https://server.179.ru/wiki/?show_files=1&page=Denis_Kirienko/Kumir#header-files

Удалова Т.Л. (Варианты для Робота)

http://licey.net/free/18-programmirovanie_na_yazyke_kumir/70-sistema_programmirovaniya_kumir.html

«Информатика. Кумир» Удалова Т.Л.

https://books.google.ru/books?id=CdAqevFDPa4C&printsec=frontcover&hl=ru#v=onepage&q&f=false

Исполнитель ‹‹Робот››


1. Введение

1.1. Обстановки Робота

Исполнитель Робот существует в некоторой обстановке – прямоугольном поле, разбитом на клетки, между которыми могут стоять стены. Обстановка, в которой находится Робот, называется текущей обстановкой Робота. Кроме того, определена еще одна обстановка Робота – стартовая обстановка.Выполнение программы начинается со Стартовой обстановки.

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

Удобно представлять себе, что Робот существует всегда. В частности, когда начинается сеанс работы системы Кумир, Робот уже существует и для него определены и текущая, и стартовая обстановка (они совпадают).

Обстановки Робота могут храниться в файлах специального формата (расширение .fil).

1.2. Окно наблюдения за Роботом

В Кумире есть специальное устройство – Окно наблюдения за Роботом (иногда для краткости будем говорить Окно Роботa). В этом окне всегда видна текущая обстановка Робота, включая положение самого Робота.

1.3. Управление Роботом из программы

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

Таким образом, в каждый момент сеанса работы системы Кумир определены две обстановки Робота – текущая и стартовая. Текущая обстановка в любой момент показывается в окне наблюдения за Роботом.

Непосредственное управление Роботом из программы осуществляется с помощью команд Роботa.

1.4. Как установить стартовую обстановку

В системе Кумир есть средства, с помощью которых Школьник может задать нужную ему стартовую обстановку. Это можно сделать двумя способами. Один способ – загрузить стартовую обстановку из указанного Школьником файла. Другой способ – редактировать существующую стартовую обстановку с помощью специального редактора стартовых обстановок.

Редактор стартовых обстановок является частью системы Кумир. Редактирование обстановки происходит в окне наблюдения, но при этом окно наблюдения открывается в специальном режиме – режиме редактирования стартовой обстановки. Редактируемая обстановка может быть сохранена в файл или непосредственно использоваться в качестве стартовой обстановки.

1.5. Ручное управление Роботом

В систему Кумир входит пульт ручного управления Роботом . Этот пульт позволяет вручную управлять Роботом – выдавать команды, входящие в систему команд Робота. Использовать пульт можно в любое время, кроме тех временных промежутков, когда происходит непрерывное выполнение Кумир-программы. В частности, Роботом можно управлять с пульта в те моменты, когда выполнение Кумир программы приостановлено (система Кумир находится в состоянии «Пауза»).

2. Окно наблюдения за Роботом

2.1. Видимое и скрытое состояние окна

Окно наблюдения за Роботом создается в момент начала сеанса работы системы Кумир и доступно до окончания сеанса. Во время сеанса работы окно может находиться в одном из двух состояний – видимо или скрыто (с отображением на панели задач или без).

В момент запуска Кумира окно наблюдения за Роботом скрыто. Чтобы сделать окно видимым, Школьник должен нажать кнопку Робот на панели инструментов или же кликнуть по соответственному пункту меню Окна. Кроме того, окно Робота автоматически становится видимым при запуске на выполнение программы, содержащей строку использовать Робот. Окно Робота становится видимым на том же месте, где оно находилось, когда его последний раз сделали скрытым.

2.2. Свойства окна наблюдения за Роботом

На окне наблюдения за Роботом нет ни меню, ни кнопок. Таким образом, в окне Робота есть только полоса заголовка и рабочее поле.

В левой части заголовка есть надпись «Робот», за которой следует имя файла, в котором хранится стартовая обстановка. Если такого файла нет, то вместо имени файла выводится слово «временная». Правила, определяющие привязку стартовой обстановки к определенному файлу, описаны ниже.

Размер окна наблюдения полностью определяется размерами стартовой обстановки. Пользователь не может менять размер окна с помощью стандартных средств, например, манипулируя мышью.

2.3. Режимы окна наблюдения за Роботом

Окно наблюдения за Роботом может находится в двух режимах:

  • обычном – применяется при наблюдении за Роботом во время исполнения программ или управлении с пульта,
  • редактирования – применяется при редактировании стартовой обстановки Робота.

2.4. Что входит в описание обстановки Робота

Обстановка Робота представляет собой прямоугольное поле, окруженное забором и разбитое на клетки. Говоря более точно, обстановка описывается следующими величинами:

  1. размеры обстановки — количество строк (1–128) и количество столбцов (1–255);
  2. для каждой клетки:
  • наличие стен вокруг клетки,
  • признак закрашенности,
  • уровень радиации (измеряется в условных единицах, может принимать любое вещественное значение от 0 до 99),
  • температура (измеряется в градусах Цельсия, может принимать любое целое значение от -273 до +233).

Примечание. Нижняя возможная температура – это (приблизительно) абсолютный ноль (0 градусов по шкале Кельвина). Верхняя температура – это температура, при которой горят книги (451 градус по Фаренгейту).

Система команд Робота позволяет ему определить значения всех этих характеристик клетки (см. ниже).

Кроме того, в клетке могут быть пометки, видимые наблюдателю, но не доступные «органам чувств» Робота:

  • символы в левом верхнем и левом нижнем углах,
  • точка в правом нижнем углу.

Частью описания обстановки является и положение Робота. Как и для чтения пометок, у Робота нет средств, чтобы определить свои координаты.

2.5. Изображение текущей обстановки в окне наблюдения

Изображение текущей обстановка по умолчанию полностью помещается в рабочем поле окна наблюдения за Роботом .

Фон рабочего поля — зеленый. Закрашенные клетки – серые. Между клетками тонкие жёлтые линии. Стены (в том числе – «забор» по периметру прямоугольника обстановки) изображаются толстыми желтыми линиями.

Примечание. Все цвета отображения обстановки являются настраиваемыми. Чтобы изменить тот или иной цвет, нужно использовать пункт настройки в меню программа.

В клетке рабочего поля окна наблюдения Робот изображается ромбиком. Температура и радиация не показываются, они могут быть только измерены Роботом. Символы в клетках, наоборот, видны человеку, но Робот не умеет их считывать.

Масштаб изображения обстановки можно изменить, используя колёсико мыши, предварительно сделав активным окно наблюдения за Роботом.

2.6. Когда и как меняется текущая обстановка Робота

Текущая обстановка изменяется при выполнении команд Робота, подаваемых из программы или с пульта .

Выполнение команд Робота влияет на текущую обстановку следующим образом. Команды перемещения и закрашивания отображаются в текущей обстановке естественно.

Если команда перемещения выдает отказ, то текущая обстановка не изменяется, а на экране (если он виден) соответствующий угол Робота закрашивается красным. Красный цвет снимается:

  • при выполнении команды использовать Робот,
  • при принудительном помещении Робота в стартовую обстановку (см. ниже).

Команды проверок и измерения радиации и температуры на текущую обстановку не влияют.

Кроме того, в двух случаях происходит принудительное помещение Робота в стартовую обстановку (текущая обстановка становится равной стартовой). Это происходит:

  • при запуске Кумир-программы, которая использует Робот (окно наблюдения при этом становится видимым, даже если оно было скрыто);
  • при изменении имени файла стартовой обстановки Робота (в этой ситуации невидимое окно остается невидимым).

3. Команды управления Роботом из программы

3.1. Общие сведения

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

Система команд исполнителя «Робот» включает:

  • 5 команд, вызывающих действия Робота (влево, вправо, вверх, вниз, закрасить);
  • 10 команд проверки условий:
    • 8 команд вида [слева/ справа/ сверху/ снизу] [стена/ свободно],
    • 2 команды вида клетка [закрашена/ чистая];
  • 2 команды измерения (температура, радиация).

Командам влево, вправо, вверх, вниз, закрасить соответствуют алгоритмы-процедуры языка КуМир. Остальным командам соответствуют алгоритмы-функции, тип этих функций указан ниже.

3.2. Команды-действия

3.2.1. влево

Перемещает Робота на одну клетку влево. Если слева стена, выдает отказ.

3.2.2. вправо

Перемещает Робота на одну клетку вправо. Если справа стена, выдает отказ.

3.2.3. вверх

Перемещает Робота на одну клетку вверх. Если сверху стена, выдает отказ.

3.2.4. вниз

Перемещает Робота на одну клетку вниз. Если снизу стена, выдает отказ.

3.2.5. закрасить

Делает клетку, в которой находится робот, закрашенной.

Ниже приведён пример использования команд-действий Роботa.

Пример 1. Использование команд-действий Роботa

3.3. Команды-проверки

3.3.1. слева свободно

Возвращает да, если Pобот может перейти влево, иначе – нет.

3.3.2. справа свободно

Возвращает да, если Pобот может перейти вправо, иначе – нет.

3.3.3. сверху свободно

Возвращает да, если Pобот может перейти вверх, иначе – нет.

3.3.4. снизу свободно

Возвращает да, если Pобот может перейти вниз, иначе – нет.

3.3.5. слева стена

Возвращает да, если слева от Pобота находится стена, иначе – нет.

3.3.6. справа стена

Возвращает да, если справа от Pобота находится стена, иначе – нет.

3.3.7. сверху стена

Возвращает да, если сверху от Pобота находится стена, иначе – нет.

3.3.8. снизу стена

Возвращает да, если снизу от Pобота находится стена, иначе – нет.

3.3.9. клетка закрашена

Возвращает да, если клетка закрашена, иначе – нет.

3.3.10. клетка чистая

Возвращает нет, если клетка закрашена, иначе – да.

3.4. Команды-измерения

3.4.1. радиация

Возвращает значение радиации в клетке, где находится Pобот.

3.4.2. температура

Возвращает значение температуры в клетке, где находится Pобот.

4. Стартовая обстановка, ее изменение и связь с текущей обстановкой

4.1. Вводные сведения

Стартовая обстановка – это обстановка, в которую Робот будет помещен при запуске Кумир-программы, т. е. при выполнении команды использовать Робот.

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

4.2. Как определяется стартовая обстановка

Как правило, стартовая обстановка — это обстановка, хранящаяся в файле стартовой обстановки (для краткости – ФСО).

Из этого правила есть два исключения. Одно из них связано с тем, что файл с указанным именем может не содержать корректного описания обстановки или вообще не существовать. Этот случай рассмотрен ниже в следующей главе.

Другое исключение связано с возможностью упрощенного внесения временных изменений в стартовую обстановку. А именно, если в данный момент в Кумир-системе происходит редактирование файла обстановки, то текущее промежуточное значение этой редактируемой обстановки считается временной стартовой обстановкой. Иными словами, действия пользователя по подготовке обстановки имеют приоритет над содержимым строки с именем ФСО.

4.3. Изменение имени файла стартовой обстановки

Общие сведения

Школьник может изменить файл стартовой обстановки (ФСО) двумя способами:

  • с помощью команды «Загрузить обстановку» меню Робота,
  • с помощью редактора стартовых обстановок.

Состояние окна наблюдения (видимо/скрыто) при этих действиях не меняется.

При изменении строки с именем ФСО, новая стартовая обстановка становится текущей, что отражается в окне наблюдения за Роботом.

Команда «Загрузить обстановку»

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

Если с чтением обстановки из выбранного файла возникают какие-либо проблемы, пользователю выдаётся сообщение ‹‹Ошибка открытия файла››. При этом ни стартовая, ни текущая обстановки Роботa, а также имя ФСО не изменяются.

Изменение стартовой обстановки с помощью редактора стартовых обстановок Робота

Редактор стартовых обстановок Робота – составная часть системы Кумир. Он позволяет добавлять и удалять стены, менять размеры обстановки и т. п. Изменённая обстановка объявляется стартовой. Её можно сохранить в новый файл, а можно перезаписать текущий .

4.4. Создание новой стартовой обстановки

Для создания новой стартовой обстановки Робота нужно воспользоваться коммандой «Новая обстановка» меню Робот. При этом откроектся специальное окно, где можно будет ввести размер обстановки. После настройки размера и нажатия кнопки «Ок», новая обстановка сразу открывается в режиме редактирования .

4.5. Начальная установка имени файла стартовой обстановки

Запуск системы Кумир

Система Кумир при окончании сеанса работы запоминает в своих настройках значение имени файла со стартовой обстановкой. При новом запуске система Кумир проверяет, существует ли файл с запомненным именем. Если файл существует и содержит корректную обстановку, то эта обстановка считается стартовой. Она же объявляется текущей, т. е. Робот помещается в эту обстановку. Это отображается в окне наблюдения Робота. Имя файла стартовой обстановки (без директории) показывается в левой части заголовка окна наблюдения за Роботом.

Если с чтением обстановки из выбранного файла возникают какие-либо проблемы, то стартовой (и одновременно текущей) объявляется стандартная обстановка, хранящаяся в Кумире. В левой части заголовка окна наблюдения за Роботом появляется предупреждающая надпись – «нет файла». Никакой файл с обстановкой при этом не создается, а предыдущее значение имени файла стартовой обстановки не изменяется.

Установка имени файла стартовой обстановки при инсталляции системы Кумир

При инсталляции системы Кумир в качестве имени ФСО записывается имя файла со стандартной обстановкой, который входит в поставку Кумира (7×7.fil). Стандартной обстановкой является пустая обстановка размера 7×7 с Роботом в левом верхнем углу. Максимально допустимый размер обстановки составляет 128×255. Слово «пустая» означает:

  • в обстановке нет стен (кроме проходящего по периметру забора),
  • в клетках нет точек и символов,
  • во всех клетках радиация и температура установлены в 0.

5. Редактирование стартовой обстановки

5.1. Общие сведения

Редактор стартовых обстановок можно использовать:

  • для подготовки новых обстановок,
  • при отладке Кумир-программ для оперативного внесения небольших изменений в стартовую обстановку.

Запуск редактирования производится с помощью команды ‹‹Редактировать обстановку›› меню Роботa. По этой команде окно наблюдения переходит в специальный режим – режим редактирования стартовой обстановки (для краткости – режим редактирования). Завершить редактирование обстановки можно двумя способами:

  • снять галочку с пункта Редактирование меню Робота,
  • запустить на исполнение любую Кумир-программу, использующую Робот. Тогда окно наблюдения снова перейдёт в обычный режим.

В обоих случаях результаты редактирования сохранятся и стартовая обстановка Робота изменится.

Свойства окна наблюдения в режиме редактирования аналогичны свойствам окна наблюдения за Роботом. Основных отличий – два:

  • фон рабочего поля — синий,
  • в левом верхнем углу окна есть инструментальные кнопки, позволяющие изменять параметры клетки обстановки.

5.2. Главное меню окна наблюдения в режиме редактирования

Кнопки редактирования обстановки

Опишем кратко назначение кнопок редактирования обстановки по порядку слева направо.

  • Кнопка редактирования меток клетки. При нажати на эту кнопку в каждой клетке появляются два поля для ввода текста меток (одно вверху клетки, одно внизу). В каждое из этих полей можно ввести только один символ.
  • Кнопка редактирования уровня радиации. При нажати на эту кнопку справа от кнопок настройки появляется поле для редактирования уровня радиации в клетке. Значение по умолчанию в этом поле равно 55,00. Это значение можно изменять, кликая на верхний или нижний треугольник в этом поле. Также можно ввести своё собственное значение. Уровень радиации в клетке может колеблется в диапазоне от 0,00 до 99,00. После получения нужного числа в поле настройки уровня для применения настроек к выбранной клетке нужно просто кликнуть по ней левой кнопкой мыши.
  • Кнопка редактирования уровня температуры. Механизм редактирования температуры в клетке поностью аналогичен механизму редактирования уровня радиации. Значение по умолчанию в поле редактирования температуры равно 77. Температура в клетке может колебаться от -273 до 233.

5.3. Непосредственное редактирование обстановки

Основное редактирование обстановок Робота ведется непосредственно. Предусмотрены следующие операции непосредственного редактирования:

  • поставить/убрать стену – щелкнуть по границе между клетками,
  • закрасить/сделать чистой клетку – щелкнуть по клетке,
  • поставить/убрать точку – щелкнуть по клетке при нажатой клавише Ctrl,
  • переместить Робота – тащить мышью,
  • установить температуру, радиацию, метки – использовать соответственные кнопки в левом верхнем углу окна наблюдения в режиме редактирования обстановки.

5.4. Операции с файлами обстановок

Перечислим все операции с файлами обстановок (расширение .fil), предусмотренные в системе Кумир. Соответствующие им команды входят в меню «Робот» главного окна (команды «Сохранить обстановку» и «Загрузить обстановку»).

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

6. Пульт Робота

6.1. Общие сведения

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

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

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

Окно Пульта создается при запуске системы Кумир. Свойства окна таковы:

  • при запуске системы КуМир пульт скрыт,
  • пользователь не может менять размеры окна пульта,

Чтобы сделать пульт видимым, нужно воспользоваться командой «Робот-Пульт» меню «Робот» или соответствующей инструментальной клавишей.

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

6.2. Общий вид Пульта

На пульте Робота есть:

  • лампочки-индикаторы:
    • зелёная лампочка-индикатор Связь установлена ,
    • красная лампочка-индикатор Нет связи ;
  • табло для семи последних выполненных команд, разделенное на левую часть (собственно команда) и правую часть (реакция Робота);
  • вспомогательные кнопки табло:
    • Сброс табло и Скопировать в буфер – кнопки очистки и копирования, находящиеся справа от табло,
    • Прокрутка табло – две кнопки сверху и снизу;
  • кнопочная панель из 9 кнопок, служащая для передачи команд Роботу.

6.3. Кнопочная панель. Передача команд Роботу

На панели есть:

  • 4 кнопки-стрелки (они соответствуют командам передвижения Робота);
  • кнопка закрасить (в центре);
  • кнопки температура и радиация (в левом верхнем и левом нижнем углах);
  • две кнопки-префикса Стена/Закрашено и Свободно/Чисто (в правом верхнем и левом нижнем углах);

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

Чтобы передать команду проверки нужно последовательно нажать две кнопки: сначала – префикс ( Стена/Закрашено и Свободно/Чисто ), а потом — основную (закрасить или одну из стрелок).

Примеры:

  1. Чтобы передать Роботу команду проверки слева свободно? нужно сначала нажать кнопку-префикс Свободно/Чисто , а затем кнопку влево .
  2. Чтобы передать Роботу команду проверки клетка закрашена? нужно сначала нажать кнопку-префикс Стена/Закрашено , а затем кнопку закрасить .

После того, как нажата кнопка-префикс, она меняет цвет. Если после кнопки-префикса нажата кнопка, отличная от стрелок и кнопки закрасить , то исходная кнопка-префикс просто будет забыта.

6.4. Использование табло

На табло выводятся все команды, передаваемые Роботу вместе с реакцией Робота на эти команды. В ответ на команды перемещения в правой части появляется надпись «ОК» или «Отказ». Если с Роботом нет связи, на табло выдается «Нет связи».

Вывод на табло при первом включении Пульта в сеансе работы системы Кумир или после нажатия кнопки Сброс табло начинается с верхней строки. Когда табло заполнилось, начинается прокрутка и вывод идет в последнюю строку табло. Выше и ниже табло есть две кнопки для прокрутки его содержимого на одну строку вверх/вниз.

7. Робот и главное меню

7.1. Общие сведения

К Роботу относится меню Робот главного окна системы «Кумир» (полностью), а также две команды из меню Окна . Для действий Показать поле Робота и Пульт Робота есть инструментальные кнопки на панели кнопок.

Ниже отдельно описана каждая из команд меню Робот .

7.2. Команды меню «Робот»

  • Загрузть обстановку – открывает диалог выбора ФСО.
  • Недавние обстановки – выводит список последних использовавшихся ФСО.
  • Вернуть исходную обстановку – делает текущей стартовую обстановку.
  • Сохранить обстановку – открывает диалог сохраниения обстановки в файл.
  • Редактировать обстановку – переводит окно наблюдения в режим редактирования стартовой обстановки.
  • Авто размер окна – устанавливает масштаб отображения обстановки по умолчанию.
  • Новая обстановка – открывает окно создания обстановки.

7.3. Команды меню «Окна»

  • Робот – открывает окно наблюдения за исполнителем Робот.
  • Робот — Пульт – открывает окно пульта исполнителя Робот.

Copyright ФГУ ФНЦ НИИСИ РАН © 2019

Тема 18.

Обработка вещественных выражений в электронных таблицах

18

.

02

Робот-сборщик монет (Стенки)

Вспоминай формулы по каждой теме

Решай новые задачи каждый день

Вдумчиво разбирай решения

ШКОЛКОВО.

Готовиться с нами — ЛЕГКО!

Подтемы раздела

обработка вещественных выражений в электронных таблицах

Решаем задачи

Квадрат разлинован на 15 × 15  клеток. Исполнитель Буквоед может перемещаться по клеткам, выполняя за одно
перемещение одну из двух команд: вправо или вниз. По команде вправо Буквоед перемещается в соседнюю правую клетку,
по команде вниз — в соседнюю нижнюю. При попытке пересечь границы (внутренние, обозначенные жирными
линиями, или границы квадрата) Буквоед разрушается. В каждой клетке квадрата указан её тип латинскими
буквами A  , B  , C  или D  . Посетив клетку, Буквоед платит за её посещение; это так же относится к
начальной и конечной точке маршрута. За посещение клетки A  взимается плата: 1  монета, за посещение
клетки B  10  монет, за посещение клетки C  100  монет, а за посещение клетки D  1000  монет.
Определите минимальную и максимальную денежную сумму, которую заплатит Буквоед, пройдя из левой
верхней клетки в правую нижнюю. В ответе укажите два числа — сначала минимальную сумму, затем
максимальную.

Вложения к задаче

Показать ответ и решение

С помощью найти и заменить заменяем все A на 1, B на 10, C на 100, D на 1000.

PIC

Добавляем пустой столбец (нажимаем правой кнопкой мыши на столбец A  и выбираем Вставить) и пустую строку перед
самой первой (нажимаем правой кнопкой мыши на строку 1  и выбираем Вставить).

PIC

Копируем таблицу и с помощью специальной вставки (Ctrl+ Alt+ V  ) вставляем только её формат.

В начало маршрута (в нашем случае B19  ) записываем значение левой верхней клетки данной нам таблицы. В клетку
C20  записываем формулу =МАКС(B20;C19)+C3.

PIC

Копируем её на всю таблицу.
Теперь изменим формулы там, где у нас находятся границы.
Если границы мешают нам пройти выше, то меняем формулы в клетках, находящихся под границами, то есть убираем из
них значение ячейки идущей выше границы.

PIC

Если граница мешает нам идти влево, то убираем из текущей формулы значение ячейки, идущей после
границы.

PIC

Выписываем значение из правой нижней ячейки.
Заменим все МАКС на МИН и также выпишем значение из правой нижней клетки.

PIC

Запишем в ответ сначала минимальный результат, затем через пробел — максимальный.

Квадрат разлинован на N  ×N  клеток (1 < N < 20)  . Исполнитель Буквоед может перемещаться по клеткам, выполняя
за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Буквоед перемещается в соседнюю правую
клетку, по команде вниз — в соседнюю нижнюю. При попытке пересечь границы (внутренние, обозначенные жирными
линиями, или границы квадрата) Буквоед разрушается. В каждой клетке квадрата указан её тип латинскими
буквами A  , B  , C  или D  . Посетив клетку, Буквоед платит за её посещение; это так же относится к
начальной и конечной точке маршрута. За посещение клетки A  взимается плата: 1  монета, за посещение
клетки B  10  монет, за посещение клетки C  100  монет, а за посещение клетки D  1000  монет.
Определите минимальную и максимальную денежную сумму, которую заплатит Буквоед, пройдя из левой
верхней клетки в правую нижнюю. В ответе укажите два числа — сначала минимальную сумму, затем
максимальную.

Вложения к задаче

Показать ответ и решение

С помощью найти и заменить заменяем все A на 1, B на 10, C на 100, D на 1000.

PIC

Добавляем пустой столбец (нажимаем правой кнопкой мыши на столбец A  и выбираем Вставить) и пустую строку перед
самой первой (нажимаем правой кнопкой мыши на строку 1  и выбираем Вставить).

PIC

Копируем таблицу и с помощью специальной вставки (Ctrl+ Alt+ V  ) вставляем только её формат.

В начало маршрута (в нашем случае B22  ) записываем значение левой верхней клетки данной нам таблицы. В клетку
C22  записываем формулу =C2+МИН(B22;C21).

PIC

Копируем её на всю таблицу.
Теперь изменим формулы там, где у нас находятся границы.
Если границы мешают нам пройти выше, то меняем формулы в клетках, находящихся под границами, то есть убираем из
них значение ячейки идущей выше границы.

PIC

Если граница мешает нам идти влево, то убираем из текущей формулы значение ячейки, идущей после
границы.

PIC

Выписываем значение из правой нижней ячейки.
Заменим все МИН на МАКС и также выпишем значение из правой нижней клетки.

PIC

Запишем в ответ сначала минимальный результат, затем через пробел — максимальный.

Задание выполняется с использованием прилагаемых файлов.

Квадрат разлинован на N  ×N  клеток (2 < N < 21)  . В каждой клетке записано целое положительное число —
количество монет.

Исполнитель Собиратель имеет две команды: вправо и вверх, которые, соответственно, перемещают его на одну клетку
вправо или на одну клетку вверх. Собиратель собирает все монеты, лежащие на клетках, через которые проходит. На
поле существуют стены, которые обозначены жирной линией. Собиратель не может проходить через стены.
Исполнитель начинает движение в левой нижней клетке и заканчивает в правой верхней. Какое максимальное и
минимальное количество монет может собрать Собиратель, пройдя от начальной клетки до конечной? В
ответе укажите сначала максимальный, затем минимальный результат, который может быть получен
исполнителем.

Вложения к задаче

Показать ответ и решение

Добавляем пустой столбец (нажимаем правой кнопкой мыши на столбец A  и выбираем Вставить).

PIC

Копируем таблицу и с помощью специальной вставки (Ctrl+ Alt+ V  ) вставляем только её формат.

В начало маршрута (ячейка B43  ) скопируем значение из ячейки B20  . В C43  запишем =C20+МАКС(B43;C44) и
заполним ей все оставшиеся ячейки таблицы.

PIC

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

PIC

Если граница мешает нам идти вправо, то убираем из текущей формулы значение ячейки, идущей после
границы.

PIC

Выписываем значение из правой верхней ячейки.
Заменим все МАКС на МИН и также выпишем значение из правой верхней клетки.

PIC

Запишем в ответ сначала максимальный результат, затем через пробел — минимальный.

Квадрат разлинован на N  ×N  клеток (1 < N < 17).  Исполнитель Робот может перемещаться по клеткам, выполняя за
одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю
правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот
разрушается. Между соседними клетками квадрата могут быть внутренние стены. Сквозь стену Робот пройти не
может. Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1  до 100.
Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута
Робота.

Откройте файл. Определите максимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней
клетки в правую нижнюю. В ответ запишите одно число — максимальную сумму, которую может собрать
Робот.

Исходные данные представляют собой электронную таблицу размером N × N,  каждая ячейка которой соответствует
клетке квадрата.

Вложения к задаче

Показать ответ и решение

Добавляем пустой столбец (нажимаем правой кнопкой мыши на столбец A  и выбираем Вставить) и пустую строку перед
самой первой (нажимаем правой кнопкой мыши на строку 1  и выбираем Вставить).

PIC

Копируем таблицу и с помощью специальной вставки (Ctrl+ Alt+ V  ) вставляем только её формат.

В начало маршрута (ячейка B20  ) скопируем значение из ячейки B2  . В C20  запишем формулу =МАКС(B20;C19)+C2 и
заполним ей все оставшиеся ячейки таблицы.

PIC

Теперь изменим формулы там, где у нас находятся границы. Если границы мешают нам пройти выше, то меняем
формулы в клетках, находящихся под границами, то есть убираем из них значение ячейки идущей выше
границы.

PIC

Если граница мешает нам идти влево, то убираем из текущей формулы значение ячейки, идущей после
границы.

PIC

В клетке O33  ответ.

Задание выполняется с использованием прилагаемых файлов

Робот стоит в правом нижнем углу прямоугольного поля, в каждой клетке которого записано натуральное
число. За один ход робот может переместиться на одну клетку влево или на одну клетку вверх. Выходить за
пределы поля робот не может. Между некоторыми клетками находятся стены, проходить сквозь стены робот не
может.

В начальный момент запас энергии робота равен числу, записанному в стартовой клетке. При каждом шаге робот
расходует энергию. При шаге влево расход энергии равен числу, записанному в клетке, в которую переходит робот, при
шаге вверх — удвоенному числу, записанному в клетке, в которую переходит робот.

Определите максимальный и минимальный запас энергии, который может быть у робота после перехода в
левую верхнюю клетку поля. В ответе запишите два числа: сначала максимально возможное значение, затем
минимальное.

Исходные данные записаны в электронной таблице. Стены отмечены утолщёнными линиями.

Вложения к задаче

Показать ответ и решение

Копируем таблицу и с помощью специальной вставки (Ctrl+ Alt+ V  ) вставляем только её формат.
В начало маршрута (ячейка O33  ) скопируем значение из ячейки O15  . В O32  запишем формулу = O33− O14 ∗ 2  и
вставим её в весь столбец O  .

PIC

В N 33  запишем формулу = O33 − N15  и вставим её во всю строку 33  .

PIC

В N 32  запишем =МАКС(N 33− N 14∗ 2;O32 − N 14)  и заполним ей все оставшиеся ячейки таблицы.

PIC

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

PIC

Если граница мешает нам идти влево, то убираем из текущей формулы значение ячейки, идущей после
границы.

PIC

Выписываем значение из ячейки A19  .
Заменям все МАКС на МИН.

PIC

Запишем результаты в ответ через пробел: сначала наибольший, затем наименьший.

Квадрат разлинован на N  ×N  клеток (1 < N < 17)  . Исполнитель Робот может перемещаться по клеткам, выполняя за
одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю
правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот
разрушается. Между соседними клетками квадрата могут быть внутренние стены. Сквозь стену Робот пройти не
может. Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1  до 100  .
Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута
Робота.

Откройте файл. Определите максимальную денежную сумму, которую может собрать Робот, начиная в верхнем левом
углу. В ответ запишите одно число — максимальную сумму, которую может собрать Робот.

Исходные данные представляют собой электронную таблицу размером N × N  , каждая ячейка которой соответствует
клетке квадрата.

Вложения к задаче

Показать ответ и решение

Добавляем пустой столбец (нажимаем правой кнопкой мыши на столбец A  и выбираем Вставить) и пустую строку перед
самой первой (нажимаем правой кнопкой мыши на строку 1  и выбираем Вставить).

PIC

Копируем таблицу и с помощью специальной вставки (Ctrl+ Alt+ V  ) вставляем только её формат.

В начало маршрута (в нашем случае B18  ) записываем значение левой верхней клетки данной нам таблицы. В клетку
C18  записываем формулу =C2+МАКС(B18;C17)

PIC

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

PIC

Если граница мешает нам идти вправо, то убираем из текущей формулы значение ячейки, идущей после
границы.

PIC

Выписываем значение из ячейки O31  в ответ.

Задание выполняется с использованием прилагаемых файлов

Квадрат разлинован на N × N  клеток (1 < N < 17)  . Исполнитель Робот может перемещаться по клеткам, выполняя
за одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю правую
клетку, по команде вниз — в соседнюю нижнюю. Изначально Робот стоит в левой верхней клетке. При попытке выхода за
границу квадрата Робот разрушается. Между соседними клетками квадрата могут быть внутренние стены. Сквозь стену
Робот пройти не может. Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от   1  до
100  . Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута
Робота.

Откройте файл. Определите максимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней
клетки в правую нижнюю. В ответ запишите одно число — максимальную сумму, которую может собрать
Робот.

Вложения к задаче

Показать ответ и решение

Добавляем пустой столбец (нажимаем правой кнопкой мыши на столбец A  и выбираем Вставить).

PIC

Копируем таблицу и с помощью специальной вставки (Ctrl+ Alt+ V  ) вставляем только её формат.

В начало маршрута (в нашем случае B18  ) записываем значение левой верхней клетки данной нам таблицы. В клетку
C18  записываем формулу =МАКС(C17;B18)+C1

PIC

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

PIC

Если граница мешает нам идти вправо, то убираем из текущей формулы значение ячейки, идущей после
границы.

PIC

Выписываем значение из ячейки P 32  в ответ.

Квадрат разлинован на N×N клеток (1  < N < 17  ). Исполнитель Робот может перемещаться по клеткам, выполняя за
одно перемещение одну из двух команд: вправо или вниз. По команде вправо Робот перемещается в соседнюю
правую клетку, по команде вниз — в соседнюю нижнюю. При попытке выхода за границу квадрата Робот
разрушается. Перед каждым запуском Робота в каждой клетке квадрата лежит монета достоинством от 1  до 100  .
Посетив клетку, Робот забирает монету с собой; это также относится к начальной и конечной клетке маршрута
Робота. Между соседними клетками квадрата могут быть внутренние стены. Сквозь стену Робот пройти не
может.

Откройте файл. Определите максимальную денежную сумму, которую может собрать Робот, пройдя из левой верхней
клетки в правую нижнюю. В ответ запишите только одно число – искомую сумму.

Вложения к задаче

Показать ответ и решение

Добавляем пустой столбец (нажимаем правой кнопкой мыши на столбец A  и выбираем Вставить).

PIC

Выделим всю таблицу и добавим внешние границы.

PIC

Копируем таблицу и с помощью специальной вставки (Ctrl+ Alt+ V  ) вставляем только её формат.

В начало маршрута (в нашем случае B12  ) записываем значение левой верхней клетки данной нам таблицы. В клетку
C12  записываем формулу =МАКС(C11;B12)+C1

PIC

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

PIC

Если граница мешает нам идти вправо, то убираем из текущей формулы значение ячейки, идущей после
границы.

PIC

Выписываем значение из ячейки K21  в ответ.

  • Ошибка выполнения рецепта для цели modules
  • Ошибка выполнения рецепта для цели install
  • Ошибка выполнения перехода finishedit для документа электронный бюджет
  • Ошибка выполнения ошибка код 24 при выполнении функции getuseruid
  • Ошибка выполнения ошибка код 1627 при выполнении функции signdata ошибка исполнения функции