Строка вне алгоритма кумир ошибка

Учебно-методическое пособие "Исполнитель Робот в программе КуМир " учебно-методическое пособие (информатика и икт) по теме Знакомство с

Учебно-методическое пособие «Исполнитель Робот в программе КуМир »
учебно-методическое пособие (информатика и икт) по теме

Григорьева Юлия Александровна

Знакомство с программой Кумир осваение азов программирования.

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

При изучении одного из наиболее трудных разделов информатики «алгоритмизация и программирование».

Цель разработки: изучить возможности программирования на примере конкретного исполнителя Робот с использованием среды КУМИР; дать практические навыки работы с исполнителем.

Скачать:

Вложение Размер
metod_razrabotka_robot1.doc 642.5 КБ
Презентация с заданиями и решениями 2.09 МБ

Предварительный просмотр:

Методическая разработка по информатике.

Тема: «Исполнитель Робот в программе КуМир на уроках информатики »

Автор: Григорьева Ю.А.,

учитель технологии «Информатика и ИКТ»

Цель разработки : изучить возможности программирования на примере конкретного исполнителя Робот с использованием среды КУМИР; дать практические навыки работы с исполнителем.

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

Учащиеся должны знать:

  • что такое исполнитель; СКИ Робота, среду исполнителя Робот;
  • что такое алгоритм ; в чем состоят основные свойства алгоритма;
  • способы записи алгоритмов: блок-схемы, учебный алгоритмический язык; основные алгоритмические конструкции: следование, ветвление, цикл; структуры
  • алгоритмов; ⇒ назначение вспомогательных алгоритмов; технологии построения сложных алгоритмов:

Учащиеся должны уметь:

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

Занятие 1 (2 часа) Урок 1.

Исполнитель Робот. Система команд исполнителя.

  1. Описание СКИ исполнителя, среды исполнителя.

2.Разбор типичных алгоритмов Робота.

Рассмотрим описание исполнителя.

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

СКИ Робота : простые команды: вверх, вниз, влево, вправо, закрасить.

Команды логические: (проверки условия)

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

слева свободно справа свободно.

Логические связки: И,НЕ, ИЛИ:

Пример:(Не слева свободно) или (не справа свободно)

Команда ветвления : команда цикла:

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

серия команд серия команд

(В КИМах 2009 года команды Робота отличались от привычных детям, что приводило к путанице : )

Команда ветвления : команда цикла:

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

серия команд серия команд

Общий вид окна программы Кумир. Графическая среда Робота:

В КИМах демонстрационного варианта 2010 года формат команд изменен на привычный

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

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

2.Командами Робот- Сменить стартовую обстановку сохранить новую обстановку.

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

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

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

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

Занятие 1 (2 часа) Урок 2.

Практическая работа « Составление линейных алгоритмов».

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

  1. Робот в произвольной точке поля. Передвинуть Робот на 4 клетки вправо, закрасив их.
  2. Создайте новую стартовую обстановку, нарисовав на поле квадрат со стороной 4 клетки. Сохраните обстановку как стартовую.
  3. Создайте новую стартовую обстановку, нарисовав на поле коридор с проходами в стенах. Сохраните обстановку как obst2.fil. Смените стартовую обстановку на вновь созданную.

Занятие 2 (2 часа) Урок 1.

Тема : Ветвление и последовательная детализация алгоритма.

Разбор задач КИМов с использованием исполнителя Робот.

если не снизу свободно

если не снизу свободно

если не снизу свободно

если не снизу свободно

если не снизу свободно

если не снизу свободно

Пр. раб. №14. Составление и отладка алгоритмов ветвления

Задания. См. Приложение.

Занятие 3. Циклические алгоритмы. Урок 1-2

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

Пр. раб. №15. Составление и отладка циклических алгоритмов

1.Составьте алгоритм, закрашивающий все внутренние клетки, прилегающие к стене.

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

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

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

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

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

3.Составить алгоритм, закрашивающий все клетки, находящиеся между двумя стенами.

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

если (не сверху свободно) и (не снизу свободно)

4.Составить алгоритм, закрашивающий все клетки вокруг прямоугольной стены.

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

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

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

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

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

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

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

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

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

Занятие 4 Урок 1

Цель: ввести понятие основного и вспомогательного алгоритма; объяснить правила использования вспомогательного алгоритма; разобрать примеры алгоритмов с использованием вспомогательного.

1.Ввод новых терминов (основного и вспомогательного алгоритма, вызова) и объяснение новых понятий.

2.Разбор примеров решения задач с применением вспомогательного алгоритма.

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

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

Команда выполнения вспомогательного алгоритма называется вызовом и записывается в теле основного алгоритма.

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

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

Разбор на доске:

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

Занятие 4 Урок 2

Практическая работа на ПК «Решение задачи с использованием вспомогательных алгоритмов» .

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

1.Задание полностью проходит за ПК. Учащиеся получают задания и выполняют их в программной среде Кумир. Результаты Работы сохраняются в виде файлов для последующей проверки.

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

Задача2 .Используя вспомогательные, составьте алгоритм для закрашивания клеток, образующих число 1212.

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

Занятие 5 Урок 1-2

«Составление алгоритма в среде исполнителя Робот».

Цель: проверить полученные знания по созданию и умению анализировать алгоритмы в программной среде Кумир.

Задания для контрольной работы делятся по уровням сложности и включает в себя 3 задачи с исполнителем Робот (1 и 2 задача –на ветвление и циклы, 3 задача с- на использование вспомогательного алгоритма.) Тексты заданий приводятся в приложении.

Исходные и конечные обстановки и созданные алгоритмы записываются в виде файла.

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

Основные понятия и команды в программе КУМИР

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

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

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

В разных языках программирования такие единицы называются по-разному, в КуМире такая единица называется «Исполнитель».

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

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

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

ОБЩИЙ ВИД ОПИСАНИЯ АЛГОРИТМА алг имя_алгоритма тип_алгоритма дано условие_применимости алгоритма надо цель_выполнения_алгоритма нач последовательность команд кон Описание алгоритма состоит из: Заголовка (часть до служебного слова нач ) Тела алгоритма (часть словами нач и кон )

ОБЩИЙ ВИД ОПИСАНИЯ АЛГОРИТМА

алг имя_алгоритма тип_алгоритма

  • даноусловие_применимости алгоритма
  • надоцель_выполнения_алгоритма

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

Описание алгоритма состоит из:

Заголовка (часть до служебного слова нач )

Тела алгоритма (часть словами нач и кон )

Блок-схема алгоритма алг имя_алгоритма нач тело алгоритма кон НАЧАЛО ТЕЛО АЛГОРИТМА КОНЕЦ

алг имя_алгоритма

тело алгоритма

ТИПЫ ВЕЛИЧИН ИСПОЛЬЗУЕМЫХ В ПРОГРАММЕ Типы величин Как пишутся в программе Целые Пример описания цел Вещественные 1 2 3 4 и т.д. вещ Литерные 0,5 2,3 1,345 лит а б в г В записи имен переменных могут быть использованы любые символы русского и латинского алфавита, а так же цифры. Имя не должно начинаться с цифры. На длину имен в системе КуМир строгих ограничений не накладывается, но для удобства редактирования и во избежание переполнения строк переменным и алгоритмам не стоит давать слишком длинные имена. Обычно имя подбирается так, чтобы можно было понять, для чего предназначен алгоритм. При редактировании программ также следует помнить о том, что русские и латинские буквы, сходные по написанию, различаются ЭВМ. Например, если при описании переменной с именем А пользователь набрал

ТИПЫ ВЕЛИЧИН ИСПОЛЬЗУЕМЫХ В ПРОГРАММЕ

Типы величин

Как пишутся в программе

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

Вещественные

1 2 3 4 и т.д.

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

Арифметические операции и стандартные функции для работы с числами Название операции Как пишутся в программе Сложение а+б Вычитание а-б Умножение а*б Деление а/б Возведение в степень а**б Присваивание а:=б

Арифметические операции и стандартные функции для работы с числами

Название операции

Как пишутся в программе

Возведение в степень

Присваивание

б Меньше или равно a Больше или равно a=б » width=»640″

ОПЕРАЦИИ СРАВНЕНИЯ ЧИСЕЛ

Название операции

Как пишутся в программе

Меньше или равно

Больше или равно

ВСТРОЕННЫЕ ФУНКЦИИ Обращение Функция Типы SIN (X) COS (X) TG (X) EXP (X) LN (X) ABS (X) SQRT (X) MOD (A, B) INT (X) ПИ Аргумента синус х косинус х тангенс х экспонента х (е х ) натур. логарифм х модуль х корень квадратный х остаток от деления (А на В) целая часть числа число

ВСТРОЕННЫЕ ФУНКЦИИ

SIN (X) COS (X) TG (X) EXP (X) LN (X) ABS (X) SQRT (X) MOD (A, B) INT (X) ПИ

синус х косинус х тангенс х экспонента х (е х ) натур. логарифм х модуль х корень квадратный х остаток от деления (А на В) целая часть числа число «пи» — 3,14159

вещ вещ вещ вещ вещ вещ вещ вещ, цел вещ вещ

вещ вещ вещ вещ вещ вещ вещ цел цел без аргум

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА Вначале алгоритма объявляются перемен-ные и константы , которым будут присваи-ваться значения необходимые для расчетов вещ а, р Сколько величин участвует в работе программы - столько и должно быть объявлено их вначале.

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА

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

вещ а, р

Сколько величин участвует в работе программы — столько и должно быть объявлено их вначале.

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА Например команда: Вывод “введите сторону квадрата” в процессе работы программы будет отображаться в нижнем окне: ВЫВОД диалога

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА

Например команда:

Вывод “введите сторону квадрата”

в процессе работы программы будет отображаться в нижнем окне:

ВЫВОД диалога

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА Например команда: ввод а после нажатия клавиши Enter будет отображена в правом окне, ВВОД данных то есть в буфере обмена (в памяти) программы.

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА

Например команда:

после нажатия клавиши Enter будет отображена в правом окне,

ВВОД данных

то есть в буфере обмена (в памяти) программы.

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА Например команда: р:=а*4 это ПРОЦЕСС, читается так: значению р присваивается переменная а умноженная на число 4 Выполнение операций

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА

Например команда:

это ПРОЦЕСС, читается так: значению р присваивается переменная а умноженная на число 4

Выполнение операций

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА Например команда: вывод “периметр =” , р в процессе работы программы будет отображаться в нижнем окне, ВЫВОД данных то есть будет выводиться результат работы программы.

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА

Например команда:

вывод “периметр =” , р

в процессе работы программы будет отображаться в нижнем окне,

ВЫВОД данных

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

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА ВЕТВЛЕНИЕ если условие то серия 1 иначе серия 2 все если условие то серия 1 все ЦИКЛИЧЕСКИЕ нц число повторений раз тело цикла кц Ветвление бывает полное и неполное. Цикл с предусловием (цикл пока) - цикл, выполнение которого повторяется, пока истинно условие цикла. Служебные слова НЦ (начало цикла) и КЦ (конец цикла)пишутся строго одно под другим и соединяются вертикальной чертой. Правее этой черты записывается повторяемая последовательность команд (тело цикла). Цикл с параметром (цикл для) - повторное выполнение тела цикла, пока целочисленный параметр пробегает множество всех значений от начального ( i1 ) до конечного ( in ): нц пока условие тело цикла кц

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА

если условие

  • тосерия 1
  • иначесерия 2

если условие

  • тосерия 1

нц число повторений раз

  • тело цикла

Ветвление бывает полное и неполное.

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

Цикл с параметром (цикл для) — повторное выполнение тела цикла, пока целочисленный параметр пробегает множество всех значений от начального ( i1 ) до конечного ( in ):

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

  • тело цикла

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА нс, Служебное слово ( новая строка ) указывает ЭВМ, что информация должна выводиться на новую строку.

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА

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

-82%

Работа с системой программирования КуМир (Комплект Учебных Миров). Программирование с использованием языка кумир Как сделать программу в кумире

Введите второе число, например 7 и нажмите « Enter » Рис.5 алгоритм выполнен!

Очистите поле алгоритма «Программа→Новая программа» — поле очищено.

Имя алгоритма может быть любым набором символов:

Имя бывает у величин, таблиц, алгоритмов и исполнителей. Имя – это последовательность

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

одно из слов не должно быть ключевым словом.

Примеры имен: m, погода на завтра, Ноябрь 7, Седьмое ноября, дом_57б.

Примеры неправильных имен:

Альфа-бета (”-” — недопустимый символ)

Альфа или омега (или — ключевое слово)

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

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

цел — принимает целые значения от -2147483647 до 2147483647

вещ — принимает вещественные значения между и

лог — принимает значения да или нет (внутреннее представление – да=1, нет=0)

сим — значением может быть любой литеральный символ (практически любой символ)

лит — значением может быть строка литеральных символов

Типы цел и вещ называются числовыми; типы сим и лит — текстовыми.

Язык КуМир содержит встроенные функции преобразования числовых типов в тексто-

вые и наоборот. При необходимости значения целого типа автоматически переводятся в вещественные, а символьные — в текстовые. Для преобразования вещественных

значений в целые используется встроенная функция int

На первых уроках будем рассматривать только первые два.

Описание величин: величины описываются рядом с ключевым словом нач

Нач цел j, k, n, вещ s

Название операции или функции

возведение в степень

степень числа e

минимум из чисел x и y

максимум из чисел x и y

остаток от деления x на y

частное от деления x на y

целая часть числа x

случайное число в диапазоне от 0 до x

(-1, 0 или 1) sign(x)

(e . 2 . 718181 ) exp(x)

(x, y — целые ) mod(x,y)

(x, y — целые) div(x,y)

  1. Составить простейший алгоритм на вычисление среднего арифметического 3 чисел. Данные вводятся с клавиатуры.

нач цел а,б,с, вещ д

ввод а;ввод б;ввод с

вывод «д с синус s 100%» loading=lazy>

  1. перевести дюймы в мм, если 1 дюйм = 2,54 мм
  2. перевести км/ч в м/с (умножить на 1000, разделить на 3600)
  3. перевести часы в секунды.
  4. Рассчитать скорость тела ( v = S / t )
  5. вычислить площадь и периметр прямоугольника со сторонами а, б
  6. вычислить объем прямоугольной призмы.
  7. вычислить площадь круга
  8. вычислить площадь треугольника по 3 сторонам (формула Герона)
  9. вычислить гипотенузу прямоугольного треугольника

Программирование с использованием языка КуМир

(из опыта работы)

КуМир (Комплект Учебных МИРов) – система программирования, предназначенная для поддержки начальных курсов информатики и программирования в средней и высшей школе .

Она разработана в Российской Академии наук в рамках плановых работ и распространяется свободно (на условиях лицензии GNU GPL v.2).

Скорее всего в ближайшие годы будет происходить постепенный переход на компьютеризированный вариант сдачи ЕГЭ по информатике. Компьютерная тестирующая система (КТС ЕГЭ) пока ориентирована на использование кроссплатформенных систем программирования Кумир и FreePascal.

В 1985 году наш академик АП Ершов придумал язык русский алгоритмический язык, похожий на язык программирования ALGOL. Но поскольку в то время ещё не было компьютерной поддержки этого языка (те, кто преподавали информатику в первые её годы вхождения в школу, помнят, что всё делалось в безмашинном варианте, вручную, на бумаге), потом появились компьютеры с дисковой операционной системой (DOS). Но хорошей программной поддержки русского алгоритмического языка не было создано. Первый КуМир работал очень медленно, его интерфейс был очень примитивен. Про Кумир забыли, так как стали появляться другие, более удобные и функциональные языки. Но, к сожалению, почти все они англоязычные . Для массовой школы их освоение сопряжено с использованием английских слов и сокращений, что требует дополнительного времени на освоение. Поэтому программирование как таковое из школы постепенно почти ушло. Учителя за редким исключением просто не включали программирование в свои уроки. А программа по информатике содержит линию программирования, значит этим надо заниматься.

Те, кто изучает язык Delphy, Pascal, Си, возврат к алгоритмическому языку воспринимают как откат назад, в прошлое, считая его примитивным. А время идёт, и наши программисты тоже работают. Тот Кумир, что был в 80-е годы, претерпел значительную доработку, и на сегодня версия 1.72 является одной из перспективных, полностью готовой для работы в школе в компьютерном варианте.

Первый сигнал о втором пришествии Кумира появился в апреле 2010 года после семинаров, которые проводили, и на Дне учителя информатики 2.04.2010 в рамках Девятого московского педагогического марафона. Чуть позже в газете «Информатика» появилась статья и, посвященная компьютерному варианту ЕГЭ.

Новость произвела эффект разорвавшейся бомбы среди учителей информатики. На педагогических сайтах развернулись бурные дискуссии (см. тему «Быть Кумиру?» и обсуждение на сайте pedsovet. org).
Большинство участников этих словесных баталий Кумир не приняли, было сказано много ругательных слов.

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

Но теперь встал вопрос о том, что Кумир становится одним из (двух) языков, разрешенных на компьютерном ЕГЭ по информатике, то есть «поднимается» на уровень 10-11 классов. Это заставило задуматься. Мера явно вынужденная: для компьютерного ЕГЭ требуется

    кроссплатформенность бесплатность простота установки относительная известность и популярность.

Таких сред не очень много, поэтому возврат к КуМиру вполне логичен. С этим придётся считаться и использовать в своей работе.

Надо сказать, что в методической литературе опубликовано достаточно много материалов с тем, чтобы такой массовый переход произошёл комфортно и безболезненно.

29 ноября 2010 года Московский институт открытого образования (МИОО) провёл апробацию компьютеризированной системы проведения ЕГЭ по информатике и ИКТ (КТС ЕГЭ). В газете «Информатика» (№№ 24/2010 и 2/2011) опубликованы статьи из серии «Освой КуМир за 6 часов». До этого, в 2009 году, напечатан цикл материалов и «Методика преподавания основ алгоритмизации на базе системы КуМир». На очередном Дне учителя информатики (01.04.2011) продвижение КуМира продолжилось (проведены семинар и круглый стол). Все это говорит о том, что с Кумиром придется считаться.

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

Как и любое явление, язык КуМир имеет достоинства и недостатки. О них много говорили на упомянутом курсе МИОО, даже была сделана Wiki-страничка «Плюсы и минусы Кумира».

Современные версии языка 1.7, 1.8 обладают рядом существенных недостатков:

    медлительность Кумира, работающего медленнее, чем любая из Паскаль-сред отсутствие «нормальной» (не черепашьей) графики совершенно неразвитые средства работы со строками (например, нет функции поиска) устарелая и полностью кривая работа с файлами (например, перед тем, как открыть файл на запись, нужно каждый раз проверять, существует ли он, и если нет, то создавать пустой файл отдельной командой) нельзя менять значения аргументов внутри вспомогательных алгоритмов (например, в реализации алгоритма Евклида как функции приходится заводить две лишние переменные); нельзя вызывать функцию как процедуру, игнорируя ее результат; неудобная и неполная справочная система; нет форматного вывода на консоль и в файл, как в Паскале (типа вывод x:4 ), это нужно, например, чтобы вывести на экран матрицу ровными столбиками.

Кушниренко обещал, что версия 2.0 будет существенно быстрее.

Общие выводы по Кумиру :

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

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

Программирование в ЕГЭ имеет вес 10 (первичный балл), что составляет 25% всей работы

В своей практике основы языка КуМир закладываю ещё в 7 классе при изучении исполнителей Чертёжник и Робот (по программе ЛЛ Босовой). В 9 классе работаю по такому плану.

Практическая работа на уроке

Знакомство со средой КуМир: непосредственное управление действиями Робота (интерфейс, команды, отказы)

Работа с Пультом, редактирование стартовой обстановки, запись линейных алгоритмов

Программное управление Роботом. Основная конструкция алгоритма: алг-нач-кон. Команда повторения: цикл К раз

Рисование контура (прямоугольник), 3 одинаковых букв. Запись текста программ в память компьютера

Команда повторения: цикл ПОКА. Блок-схема

Движение Робота до стены

Команда ветвления в полной форме. Блок-схема

Обход преграды в форме угла

Команда ветвления в краткой форме. Блок-схема

Закраска верхних боковых выходов горизонтального коридора

Переменная: имя, тип, значение. Команда присваивания

Подсчёт закрашенных клеток, выходов, шагов до преграды, возвращение в исходную клетку (цикл К раз)

Вложенные структуры. Блок-схема

Закрашивание ряда клеток через одну

Вычислительные алгоритмы, функции div и mod

Нахождение сумм, разностей, произведений заданных в алгоритме чисел. Закрашивание ряда клеток через одну

Команды ввода и вывода, функция sqrt. Аргументы, результаты, промежуточные величины.

Решение квадратного уравнения на компьютере

Нахождение максимума (минимума) двух и трёх чисел

Знакомство с исполнителем Чертёжник. Абсолютное и относительное смещение

Изображение прямоугольника с диагоналями, домика

Рисование улицы из трёх домиков. Рисование орнамента

Запись алгоритма и выполнение программы на компьютере

Сумма цифр десятичного числа

Запись алгоритма и выполнение программы на компьютере

Команда выбора из многих вариантов

Перевод Робота из одного угла прямоугольника в противоположный

Самостоятельная и групповая работа (индивидуальные дифференцированные задания)

Исполнение алгоритмов (протокол)

Самостоятельная и групповая работа (индивидуальные дифференцированные задания)

Создание алгоритмов и выполнение программ на компьютере

Повторение: основные алгоритмические конструкции

Перевод Робота к ближайшей стене

Составить алгоритм, исполнить программу

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

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

Большую помощь в работе по данной теме оказывает пособие «Информатика 7-9 классы» АГ Кушниренко, ГВ Лебедева, ЯН Зайдельмана, 2002, Дрофа.

Из 14 шаблонов возможных на ЕГЭ заданий (в кодификаторе элементов содержания и требований к уровню подготовки выпускников общеобразовательных учреждений в 2013 году) уже 3 задачи решаются в 9 классе: Нахождение максимума (минимума) двух, трёх, четырёх чисел без использования массивов и циклов, Нахождение корней квадратного уравнения, Нахождение наибольшего общего делителя двух натуральных чисел. Работу над остальными задачами необходимо решать в индивидуальном плане с теми учащимися 10-11 классов, которые будут сдавать ЕГЭ по информатике и ИКТ.

    http://kpolyakov. *****/2011/04/blog-post_5678.html Сайт разработчиков Кумира (lpm. *****) Кумир на сайте НИИСИ РАН (www. *****/kumir) , Методика преподавания основ алгоритмизации на базе системы Кумир (*****). Кушниренко (publ. *****). Учебники по КуМиру (www. *****). , . Информатика 7-9 классы (2003 г.). (www. *****).

· Преподавание программирования в среде КуМир.

· Решение задач в системе Кумир (test. kumir. su).

· Курс алгоритмизации с использованием исполнителей системы Кумир и автоматического тестирования (*****)

    Курс «Алгоритмизация и программирование: от первых шагов до подготовки к ЕГЭ» (*****) Система программирования «КуМир». Издательство «Лицей»(www.). Методика преподавания основ алгоритмизации на базе системы «КуМир». Лекции, АГ Кушниренко, АГ Леонов, Учебно-методическая газета «Информатика» №№ 17, 18, 20-24 за 2009 год, Издательский дом «Первое сентября»; Информатика 7-9 классы. АГ Кушниренко, ГВ Лебедев, ЯН Зайдельман, Дрофа, М, 2002; Язык и система КуМир, Встроенная справка программы Комплект учебных миров; Информатика. Учебно-методическая газета для учителей №24 (2010 г.) и №2 (2011 г.), Издательский дом «Первое сентября»;

Начинать показ со страницы:

Транскрипт

1 Работа с системой программирования КуМир (Комплект Учебных Миров) 1. Установка КуМир 2. Знакомство с исполнителем Робот 3. Основные команды исполнителя Робот 4. Циклы, условия, примеры решения задач. 5. Задачи для самостоятельной работы 1. Установка КуМир Чтобы установить систему программирования КуМир, необходимо сначала перейти на официальный сайт разработчиков этой системы и скачать установочный дистрибутив. Сайт находится по адресу: И выглядит следующим образом: Если нажать на надпись, выделенную красным прямоугольником, то начнется закачка установщика текущей версии программы. Так будет выглядеть скачанный файл: Запускаем установку: 1. Нажимаем «Далее» 2. Нажимаем «Принимаю»

3 Находим ярлык программы на рабочем столе или в меню «Пуск» и пробуем запустить среду КуМир: 2. Знакомство с исполнителем Робот Робот один из исполнителей алгоритмов, доступный в системе программирования КуМир. Чтобы открыть окно робота, нужно нажать на кнопку на панели инструментов, указанную ниже на скриншоте: Должно открыться следующее окно: Как вы видите, робот «живет» на прямоугольном поле, разделѐнном на ячейки. Сам робот это маленький ромбик в центре этого поля. Это поле по-другому называется стартовой обстановкой робота и сейчас мы научимся, как еѐ менять.

4 Итак, заходим в меню «Инструменты» — «Редактировать стартовую обстановку робота». Должно открыться следующее окно: Как видно из раздела «помощь», чтобы добавить препятствия на поле робота, нужно щелкнуть по границе между ячейками, а чтобы переместить робота, необходимо щелкнуть на нѐм левой кнопкой мыши и перетащить в другое место. Попробуем изменить обстановку следующим образом:

5 Теперь осталось сохранить эту обстановку. Выбираем пункт меню «Обстановка» — «Сохранить как стартовую» И выбираем произвольную папку для сохранения и имя файла, жмѐм «сохранить»: Теперь, если ещѐ раз открыть текущую обстановку робота, то мы увидим, что произошли изменения: Обратите внимание, что если открыто синее поле, то вы изменяете стартовую обстановку робота. Если же поле зелѐное, то это текущее поле для работы с роботом. Не путайте их!

6 3. Основные команды исполнителя Робот Примечание: чтобы научиться хорошо работать с роботом, набирайте и выполняйте все алгоритмы, приведённые в данном пособии. Как мы определились ранее, робот это исполнитель алгоритмов. И как у каждого исполнителя, у него есть своя система команд. То есть набор команд, которые робот понимает. Вот основные команды робота: вверх вниз влево вправо закрасить перемещает робота на одну клетку вверх перемещает робота на одну клетку вниз перемещает робота на одну клетку влево перемещает робота на одну клетку вправо закрашивает ячейку, в которой стоит робот Как вы уже поняли, первые 4 команды нужны для перемещения робота по полю. Итак, попробуем эти команды в действии. В КуМире напишем следующий текст (точки в стоках 4, 5, 6 ставятся автоматически): Команда «Использовать Робот» позволяет указать системе КуМир, что мы будем работать с исполнителем робот. Если мы не напишем эту команду, КуМир не сможет распознать команды, которые мы будем вводить. Запись алг нач кон также обязательна и обозначает: алгоритм, начало, конец. Все команды нашего алгоритма для робота мы будем писать между ключевыми словами нач и кон.

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

8 Чтобы понять, как «ходит» робот, можно попробовать пошаговое выполнение: для этого нажимайте клавишу F8 или выберите пункт меню «Выполнение» — «ШАГ». Робот сделал 2 команды «вправо» и остановился на команде «вниз». Если ещѐ раз нажать F8 (один шаг алгоритма), то робот шагнѐт вниз и остановится на следующей команде. Таким образом, много раз нажимая F8 мы можем выполнить все шаги алгоритма. Обратите внимание, что выполнение алгоритма всегда начинается из той точки, в которой изначально стоял робот. Попробуем выполнить следующий алгоритм: Робот стоял в левом верхнем углу прямоугольника. После непрерывного выполнения алгоритма он закрасит 3 клетки и окажется в клетке, указанной на скриншоте.

9 Что же произойдет, если мы попытаемся шагнуть «вверх» из начального положения, то есть пойти «в стенку»? Как видно на скриншоте выше, робот разбился, потому что он не умеет проходить сквозь стенки. Алгоритмы, в которых робот разбивается (неважно о какую стену), считаются ошибочными. 4. Циклы, условия, примеры решения задач В среде КуМир есть возможность менять размеры стартовой обстановки. Мы можем уменьшать количество клеток на поле робота, а также увеличивать их. Также можно представить бесконечное поле для робота и решать на нѐм задачи. Допустим, имеется стартовая обстановка, как показано ниже на скриншоте: Задача 1: Робот расположен на поле напротив вертикальной стены, слева от неѐ, размер поля и расстояние до стены неизвестны. Необходимо дойти роботом до стены. Очевидно, что невозможно решить эту задачу просто написав последовательно много команд «вправо», потому что робот либо разобьется о стену, либо не дойдет до неѐ. Угадать это невозможно, так как расстояние до стены неизвестно.

10 Но из условия задачи можно понять, что нам нужно идти роботом вправо до тех пор, пока не встретится стена. То есть нам нужно много раз выполнить команду вправо, но остановиться тогда, когда на пути встретится стена. В этом нам поможет цикл типа «пока». Обратите внимание, что у нас в алгоритме появилась новая алгоритмическая структура цикл. Разберем, как она работает. нц пока начало цикла «пока» справа свободно условие, проверяющее, свободна ли клетка справа. Если стены между текущей клеткой и соседней справа нет, то условие верно (возвращает значение «да»), иначе — условие неверно (возвращает «нет»). кц конец цикла Цикл выполняется следующим образом: 1. Проверяется условие «справа свободно» (т.е. есть справа стена или еѐ нет) 2. Если условие верно, делаем команды, написанные между нц и кц. Если нет переходим на команду, записанную после кц 3. Возвращаемся на проверку условия В начальном положении у робота свободна клетка справа, поэтому условие верно (надпись «да») и робот выполняет команду «вправо». Очевидно, что робот остановится в клетке, которая прилегает к стене (условие станет неверным), то есть дойдет до неѐ. Аналогично, можно решить задачи движения до стены сверху, стены слева и стены снизу на бесконечном поле. Для этого стоит лишь поменять команду условия.

11 Роботу доступны следующие проверки: слева свободно справа свободно снизу свободно сверху свободно эти команды также, как и команды движения, относятся к системе команд робота. Обратите внимание, что команды «вверху свободно», «низ свободно» или любые другие, отличающиеся от приведѐнных выше, будут неверными. Как и с командами движения, правильность написания условий можно отследить по выделению шрифта синим цветом. Задача 2: Обойти роботом прямоугольник изнутри и закрасить все клетки, прилегающие к стенкам (начальное положение робота: верхний левый угол). Начальное положение Алгоритм «дойти до нижней стены» Алгоритм «дойти до нижней стены и закрасить» Подумайте, почему не закрасилась последняя клетка?

12 Алгоритм «дойти до нижней стены и закрасить, дойти до правой стены и закрасить» Аналогично добавим циклы для двух других стенок. Задача решена. Задача 3: Дана стартовая обстановка, представленная на скриншоте ниже. Пройти роботом по коридору, закрашивая только те клетки, у которых присутствует нижняя стенка. Мы знаем, как реализовать алгоритм движения до правой стены. Напишем и выполним его:

13 Теперь подумаем, как закрасить клетки, у которых есть нижняя стенка. Если мы просто добавим в цикл команду «закрасить», то робот закрасит нам все клетки: А нам нужно закрашивать только с тем условием, что снизу есть стена. Посмотрим, как добавить такое условие в алгоритм: Команда если-то-все называется условной (условным оператором) и позволяет по условию выполнять либо одно действие, либо другое. Посмотрим внимательно на условие «не снизу свободно»? Что же оно означает? Команда «снизу свободно» проверяет свободно ли снизу и если свободно возвращает «да», иначе «нет». НЕ это отрицание этой команды. То есть «не снизу свободно» проверяет есть ли снизу стена. И если стена есть (снизу несвободно), то возвращает «да», иначе «нет». В итоге, команда «закрасить» выполняется только тогда, когда снизу стена. Это нам и было нужно. Задача 3.1: Задание то же, что и в предыдущей задаче, но нужно закрасить только те клетки, у которых есть и нижняя и верхняя стенки. Для этого напишем сложное условие (из двух простых, соединѐнных союзом и).

14 Выполнение алгоритма: Робот закрасил только те клетки, где выполняются оба условия «не снизу свободно» и «не сверху свободно», то есть клетки, у которых есть стена сверху и снизу. Задача 3.2: Стартовая обстановка та же, но необходимо закрасить клетки, у которых есть хотя бы одна стена сверху или снизу (или обе вместе). Для этого между условиями используем команду «или»: Обратите внимание, что робот не закрасил только те клетки у которых нет ни нижней, ни верхней стены. Операции не, и, или называются логическими операциями и позволяют из простых условий составлять сложные. Эти сложные условия вы можете записать как в цикл «нц пока», так и в условный оператор «если-то-все».

15 5. Задачи для самостоятельной работы: Примечание 1: Во всех задачах нужно закрасить клетки поля так, как указано в столбце «задание». Начальное положение робота имеет значение и указано на скриншотах со стартовой обстановкой. Примечание 2: После того, как вы написали алгоритм, решающий задачу, попробуйте немного изменить стартовую остановку, не меняя сути задачи (например, уменьшить или увеличить коридор для примера-задачи 3) и снова попробовать выполнить ваш алгоритм. Если и в этом случае все работает верно, то задача решена. Пробуйте ради интереса находить такие стартовые обстановки, в которых ваш алгоритм не будет работать (иначе за вас их найдет учитель;) Стартовая обстановка Задание Расстояние между вертикальными стенками не менее 2 клеток. Конечное положение робота неважно Робот находится в середине горизонтальной стены. Конечное положение робота неважно Конечное положение робота неважно

16 Конечное положение робота неважно Конечное положение робота неважно Конечное положение робота неважно Закрасить указанные ячейки и перевести робота в конечное положение. Другие стартовые обстановки можно взять из демо-версий ГИА по информатике (или придумать самим)

Практикум по КуМир В данном практикуме будут рассмотрены только возможности исполнителя Робот, которые можно использовать для написания программы при выполнении задания ГИА. После запуска среды КуМир на

20.1 Запись короткого алгоритма в среде формального исполнителя Примечание Алгоритм должен решать задачу для произвольного размера поля и любого допустимого расположения стен внутри прямоугольного поля.

Задачи для исполнителя РОБОТ 1.Линейные алгоритмы 1.1. Перевести Робота из начального положения () в точку A за минимальное число шагов любым из возможных способов. 1.2. Перевести Робота из начального

19 Информатика. 9 класс. Вариант ИН933 1 Критерии оценивания заданий с развёрнутым ответом В электронную таблицу занесли данные о сдаче выпускных экзаменов учащимися одного из городов. Ниже приведены первые

Задание 20.1. Составление алгоритма для формального исполнителя (высокий уровень, время выполнения — 45 мин) Исполнитель Робот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки.

Итоговая контрольная работа по Информатике и ИКТ 9 класс Демоверсия Инструкция по выполнению работы На выполнение итоговой контрольной работы по информатике отводится 45 минут. Работа состоит из 3 частей,

МУНИЦИПАЛЬНОЕ БЮДЖЕТНОЕ ОБЩЕОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ СРЕДНЯЯ ОБЩЕОБРАЗОВАТЕЛЬНАЯ ШКОЛА 6 С УГЛУБЛЕННЫМ ИЗУЧЕНИЕМ ОТДЕЛЬНЫХ ПРЕДМЕТОВ Задание 1 Выполнение алгоритмов для исполнителя ЕГЭ по информатике

С2_1. Исполнитель обот Исполнитель обот умеет перемещаться по лабиринту, начерченному на плоскости, разбитой на клетки. Ниже приведено описание обота. У обота есть четыре команды перемещения: вверх вниз

Задание 14. Выполнение алгоритмов для исполнителя Робот При решении задач данного вида необходимо знать: 1. В школьном алгоритмическом языке нц обозначает «начало цикла», а кц «конец цикла»; все команды

19 Информатика. 9 класс. Вариант ИНФ951 1 Критерии оценивания заданий с развёрнутым ответом В издательстве детских книг данные об изданных книгах хранятся в электронной таблице. Ниже приведены первые пять

Информатика. 9 класс. Демонстрационный вариант 5 (9 минут) 1 Диагностическая тематическая работа 5 по подготовке к ОГЭ по ИНФОРМАТИКЕ и ИКТ по теме «Логика и алгоритмы» Инструия по выполнению работы На

Информатика. 9 класс. Вариант ИН933 1 Критерии оценивания заданий с развёрнутым ответом 19 В электронную таблицу занесли результаты тестирования учащихся по математике и физике. На рисунке приведены первые

Информатика. 9 класс. Вариант 1 1 Критерии оценивания заданий с развёрнутым ответом 19 В электронную таблицу занесли результаты диагностической работы учащихся 8 класса по математике. На рисунке приведены

Информатика. 9 класс. Демонстрационный вариант 5 (9 минут) 1 Информатика. 9 класс. Демонстрационный вариант 5 (9 минут) 2 Диагностическая тематическая работа 5 по подготовке к ГИА-9 по ИНФОРМАТИКЕ и ИКТ

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

Информатика. 9 класс. Вариант ИН90601 1 Критерии оценивания заданий с развёрнутым ответом 19 В электронную таблицу занесли данные наблюдения за погодой в течение одного года. Ниже приведены первые пять

Переводной экзамен «Информатика» 8 класс (базовый уровень) Инструкция по выполнению работы На выполнение контрольной работы по информатике отводится 90 минут (два академических часа). Работа состоит из

ТЕМА «ОСНОВЫ АЛГОРИТМИЗАЦИИ» В КОНТРОЛЬНО-ИЗМЕРИТЕЛЬНЫХ МАТЕРИАЛАХ ИТОГОВОЙ АТТЕСТАЦИИ 9 КЛАСС (методические рекомендации по решению задач повышенного и высокого уровней сложности) Малышев Михаил Владимирович,

Решения заданий I (школьного) этапа Всероссийской олимпиады школьников по информатике и ИКТ для учащихся 5-6 классов г. Мурманск 2016-2017 учебный год Цель проведения олимпиады: выявление наиболее талантливых

ИТОГОВОЕ ТЕСТИРОВАНИЕ Часть А (задание с выбором ответа) Часть 1 (При выполнении заданий этой части (1 6) обведите номер выбранного ответа кружком. Если Вы выбрали не тот номер, зачеркните его и обведите

Итоговая контрольная работа по ИНФОРМАТИКЕ 9 класс, 2015 2016 учебный год Демоверсия ФИ класс дата Инструкция по выполнению работы Работа состоит из двух частей, включающих в себя 13 заданий. Часть 1 содержит

Информатика. 9 класс. Вариант 1 Критерии оценивания заданий с развёрнутым ответом 19 В электронную таблицу занесли результаты наблюдения за погодой в городе Зарайске в течение года. На рисунке приведены

Информатика. 9 класс. Вариант Критерии оценивания заданий с развёрнутым ответом 9 В электронную таблицу занесли результаты тестирования учащихся по русскому языку и математике. На рисунке приведены первые

Вариант 14-02 Часть А А1. Дано N = 1528, M = 6C16. Какое из чисел K, записанных в двоичной системе, отвечает условию N
9. Известно, что где-то правее Робота есть стена. Составьте алгоритм, под управлением которого Робот закрасит ряд клеток до стены и вернется в исходное положение.

10. Известно, что где-то правее Робота есть закрашенная клетка.

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

11. Известно, что Робот находится рядом с левым входом в горизонтальный коридор.

12. Известно, что Робот находится где-то в горизонтальном коридоре. Ни одна из клеток коридора не закрашена.

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

13. В ряду из десяти клеток правее Робота некоторые клетки закрашены.

Составьте алгоритм, который закрашивает клетки:

а) ниже каждой закрашенной клетки;

б) выше и ниже каждой закрашенной клетки.

14. Что можно сказать о правильности следующего фрагмента алгоритма?

нц пока клетка закрашена

ЕСЛИ справа свободно ТО

к
ц

15. Напишите программу, с помощью которой Робот сможет попасть в клетку Б во всех трех лабиринтах.

16. Напишите программу, следуя которой Робот сможет пройти по коридору от левого нижнего угла поля к правому верхнему. Коридор имеет ширину одна клетка и тянется в направлении слева-снизу вправо-вверх. Пример возможного коридора изображен на рисунке.

З

адачи ГИА

  1. Коридор1. Робот находится где-то в вертикальном коридоре. Ни одна из клеток коридора не закрашена. Составить алгоритм, под управлением которого Робот закрасит все клетки этого коридора и вернется в исходное положение.

Дано
оридор2. Робот находится в верхней клетке узкого вертикального коридора. Ширина коридора – одна клетка, длина коридора может быть произвольной.

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

  1. На бесконечном поле имеется длинная горизонтальная стена. Длина стены неизвестна. Робот находится в одной из клеток непосредственно сверху от стены. Начальное положение Робота также неизвестно. Одно из возможных положений:

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

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


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

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

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

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

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

B
1102_ГИА2011

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

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

В
1103_ГИА_2011

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

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

Исполнитель Робот Система команд исполнителя Робот Команды перемещения: вверх, вниз, влево, вправо Робот перемещается на одну клетку вверх, вниз, влево, вправо. Команда закрасить – закрашивает клетку, в которой стоит Робот. Проверка истинности условия: сверху свободно, снизу свободно, слева свободно, справа свободно Робот проверяет истинность условия отсутствия стены у той клетки, где находится Робот. Можно использовать запись составных условий, образованных логическими операциями И, ИЛИ, НЕ.

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

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

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

Исполнитель Робот Пример 1. Составим алгоритм с именем «Ход конем», что бы Роботу попасть из точки А в точку Б (Рис.3). Алгоритм имеет вид (Рис. 4.). После его исполнения Робот переместиться в нужную точку (Рис.5). Алгоритм, записанный на языке исполнителя называется программой. Рис.3Рис.4 Рис.5

Содержание

  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] Для коротенькой программы переразбор происходит мгновенно. Для очень длинной программы на не очень новом компьютере переразбор может занять несколько секунд. Зеленый сигнал светофора показывает, что переразбор закончен. Для коротких программ на светофор можно не обращать внимания.

Источник

Содержание

  1. Описания простых величин
  2. Описания таблиц
  3. Область действия описаний
  4. Знакомство с языком и системой КуМир путем решения задач С2
  5. Типы величин
  6. Понятие «слово»
  7. Ключевые слова
  8. Особенности имен в языке КуМир
  9. Вопросы для самопроверки

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

Рассмотрим способы описания простых и табличных величин.

Описания простых величин

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

  • цел длина, ширина
  • лит примечание

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

Описания таблиц

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

  • вещтаб рост[1: 10]
  • цел таб классы [1:4, 1:11]

В первой строке описывается таблица рост , состоящая из 10 элементов вещественного типа. Индексы элементов этой таблицы принимают значения от 1 до 10.

Во второй строке описывается двумерная (4 строки и 11 столбцов) таблица классы , в которой 44 элемента.

Область действия описаний

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

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

Если величина описана в теле алгоритма, то ее можно использовать после места описания только в теле этого алгоритма.

  • цел длина, ширина
  • алг
  • нач
  • Команды алгоритма
  • вещ диагональ
  • | Область действия описания величины диагональ
  • кон

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

Copyright © 2014-2021, Урок информатики
Все права защищены

Источник

Знакомство с языком и системой КуМир путем решения задач С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] Для коротенькой программы переразбор происходит мгновенно. Для очень длинной программы на не очень новом компьютере переразбор может занять несколько секунд. Зеленый сигнал светофора показывает, что переразбор закончен. Для коротких программ на светофор можно не обращать внимания.

Источник

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

Постоянной называется величина, значение которой указывается в тексте программы (например, 10 ; 3.14 ; и т. д.) и не меняется в процессе исполнения алгоритма.

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

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

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

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

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

Имя, тип и вид величины являются статическими характеристиками, которые можно определить по тексту алгоритма.

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

Типы величин

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

  • цел – целый тип, диапазон допустимых значений лежит в пределах от -(МАКСЦЕЛ+1) до МАКСЦЕЛ, где МАКСЦЕЛ = 2147483647 ;
  • вещ – вещественный тип, диапазон допустимых значений лежит в пределах от -МАКСВЕЩ до МАКСВЕЩ, где МАКСВЕЩ – это число, немного меньшее, чем 1.797693×10 308 ;

Величины МАКСЦЕЛ и МАКСВЕЩ определяются способом представления чисел в памяти компьютеров и в большинстве современных языков программирования имеют примерно одинаковые значения.

Вещественные значения можно преобразовать к целым с помощью встроенной функции int , например:

  • вещ а = 10.8; цел в
  • в := int(а)
  • вывод в
  • сим – символьный тип, значением может быть любой литеральный символ;
  • лит – значением может быть строка литеральных символов.

Встроенные функции языка Кумир позволяют преобразовать числовые типы в текстовые и наоборот.

  • лог – может принимать значения да или нет .

В языке программирования Кумир используются простые и табличные величины.

Copyright © 2014-2021, Урок информатики
Все права защищены

Источник

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

Понятие «слово»

Слово в языке КуМир представляет собой последовательность разрешенных (словарных) символов . К словарным символам относятся:

  • буквы (кириллические и латинские, прописные и строчные);
  • цифры;
  • два специальных знака: @ _.

Примеры допустимых слов: длина, сумма1, 3кг, MacOS, admin@mail_ru

Примеры недопустимых слов: альфа-123, а%в, С++

Ключевые слова

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

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

Особенности имен в языке КуМир

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

Имена в Кумире могут быть присвоены величинам, таблицам, алгоритмам и исполнителям.

Примеры допустимых имен: m, периметр, площадь квадрата, Сумма10, Класс_10

Примеры недопустимых имен: 1S, а&в

Исключение: ключевое слово не можно использовать в Кумир-программе не более одного раза в отрицаниях логических величин, таблиц и алгоритмов функций между словами многословного имени. Например,

  • лог А, пятый урок история = да
  • А := не пятый урок история
  • А := пятый не урок история
  • А := пятый урок не история

Вопросы для самопроверки

  1. Какие символы относятся к словарным символам в языке Кумир?
  2. Что представляет собой слово в Кумире?
  3. Какие слова называются ключевыми?
  4. Какими особенностями обладает имя в языке Кумир?

Copyright © 2014-2021, Урок информатики
Все права защищены

Источник

Тема урока :  Основные понятия и команды в программе КУМИР Подготовил преподаватель Бурдин А.Б.

Тема урока : Основные понятия и команды в программе КУМИР

Подготовил преподаватель Бурдин А.Б.

Основная структурная единица языка КуМир — алгоритм. Программа на языке КуМир в простейшем случае состоит из нескольких алгоритмов, следующих один за другим. Алгоритмы в программе должны располагаться вплотную друг к другу, между ними могут быть только пустые строки и строки с комментариями. Разработчики языка

Основная структурная единица языка КуМир — алгоритм.

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

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

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

В разных языках программирования такие единицы называются по-разному, в КуМире такая единица называется «Исполнитель».

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

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

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

ОБЩИЙ ВИД ОПИСАНИЯ АЛГОРИТМА  алг  имя_алгоритма тип_алгоритма  дано  условие_применимости алгоритма  надо  цель_выполнения_алгоритма нач последовательность команд кон Описание алгоритма состоит из: Заголовка (часть до служебного слова нач ) Тела алгоритма (часть словами нач и кон )

ОБЩИЙ ВИД ОПИСАНИЯ АЛГОРИТМА

алг имя_алгоритма тип_алгоритма

  • дано условие_применимости алгоритма
  • надо цель_выполнения_алгоритма

нач

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

кон

Описание алгоритма состоит из:

Заголовка (часть до служебного слова нач )

Тела алгоритма (часть словами нач и кон )

Блок-схема алгоритма алг  имя_алгоритма нач тело алгоритма кон НАЧАЛО ТЕЛО АЛГОРИТМА КОНЕЦ

Блок-схема алгоритма

алг имя_алгоритма

нач

тело алгоритма

кон

НАЧАЛО

ТЕЛО АЛГОРИТМА

КОНЕЦ

ТИПЫ ВЕЛИЧИН  ИСПОЛЬЗУЕМЫХ В ПРОГРАММЕ Типы величин Как пишутся в программе Целые Пример описания цел Вещественные 1 2 3 4 и т.д. вещ Литерные 0,5 2,3 1,345 лит а б в г В записи имен переменных могут быть использованы любые символы русского и латинского алфавита, а так же цифры. Имя не должно начинаться с цифры. На длину имен в системе КуМир строгих ограничений не накладывается, но для удобства редактирования и во избежание переполнения строк переменным и алгоритмам не стоит давать слишком длинные имена. Обычно имя подбирается так, чтобы  можно было понять, для чего предназначен алгоритм. При редактировании программ также следует помнить о том, что русские и латинские буквы, сходные по написанию, различаются ЭВМ. Например, если при описании переменной с именем А пользователь набрал

ТИПЫ ВЕЛИЧИН ИСПОЛЬЗУЕМЫХ В ПРОГРАММЕ

Типы величин

Как пишутся в программе

Целые

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

цел

Вещественные

1 2 3 4 и т.д.

вещ

Литерные

0,5 2,3 1,345

лит

а б в г

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

Арифметические операции и стандартные функции для работы с числами Название операции Как пишутся в программе Сложение а+б Вычитание а-б Умножение а*б Деление а/б Возведение в степень а**б Присваивание а:=б

Арифметические операции и стандартные функции для работы с числами

Название операции

Как пишутся в программе

Сложение

а+б

Вычитание

а-б

Умножение

а*б

Деление

а/б

Возведение в степень

а**б

Присваивание

а:=б

б Меньше или равно a Больше или равно a=б » width=»640″

ОПЕРАЦИИ СРАВНЕНИЯ ЧИСЕЛ

Название операции

Как пишутся в программе

Равно

а=б

Не равно

аб

Меньше

а

Больше

аб

Меньше или равно

a

Больше или равно

a=б


ВСТРОЕННЫЕ ФУНКЦИИ   Обращение     Функция    Типы   SIN (X)    COS (X)    TG (X)    EXP (X)    LN (X)    ABS (X)    SQRT (X)    MOD (A, B)       INT (X)    ПИ   Аргумента      синус х   косинус х   тангенс х   экспонента х (е х )   натур. логарифм х   модуль х   корень квадратный х   остаток от деления (А на В)      целая часть числа   число

ВСТРОЕННЫЕ ФУНКЦИИ

  Обращение  

  Функция   

Типы

  SIN (X)   COS (X)   TG (X)   EXP (X)   LN (X)   ABS (X)   SQRT (X)   MOD (A, B)      INT (X)   ПИ

  Аргумента   

  синус х  косинус х  тангенс х  экспонента х (е х )  натур. логарифм х  модуль х  корень квадратный х  остаток от деления (А на В)     целая часть числа  число «пи» — 3,14159  

  Функции   

вещ вещ вещ вещ вещ вещ вещ вещ, цел вещ вещ

вещ вещ вещ вещ вещ вещ вещ цел цел без аргум

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА Вначале алгоритма объявляются перемен-ные и константы , которым будут присваи-ваться значения необходимые для расчетов  вещ а, р Сколько величин участвует в работе программы - столько и должно быть объявлено их вначале.

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА

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

вещ а, р

Сколько величин участвует в работе программы — столько и должно быть объявлено их вначале.

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА Например команда: Вывод “введите сторону квадрата” в процессе работы программы будет отображаться в нижнем окне: ВЫВОД диалога

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА

Например команда:

Вывод “введите сторону квадрата”

в процессе работы программы будет отображаться в нижнем окне:

ВЫВОД диалога

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА Например команда:  ввод а после нажатия клавиши Enter  будет отображена в правом окне, ВВОД данных то есть в буфере обмена (в памяти) программы.

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА

Например команда:

ввод а

после нажатия клавиши Enter будет отображена в правом окне,

ВВОД данных

то есть в буфере обмена (в памяти) программы.

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА Например команда:  р:=а*4 это ПРОЦЕСС, читается так: значению р  присваивается переменная а умноженная на число 4 Выполнение операций

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА

Например команда:

р:=а*4

это ПРОЦЕСС, читается так: значению р присваивается переменная а умноженная на число 4

Выполнение операций

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА Например команда: вывод “периметр =” , р  в процессе работы программы будет отображаться в нижнем окне, ВЫВОД данных то есть будет выводиться результат работы программы.

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА

Например команда:

вывод “периметр =” , р

в процессе работы программы будет отображаться в нижнем окне,

ВЫВОД данных

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

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА ВЕТВЛЕНИЕ если условие  то серия 1  иначе серия 2 все если условие  то серия 1 все ЦИКЛИЧЕСКИЕ нц число повторений раз  тело цикла кц Ветвление бывает полное и неполное. Цикл с предусловием (цикл пока) - цикл, выполнение которого повторяется, пока истинно условие цикла. Служебные слова НЦ (начало цикла) и КЦ (конец цикла)пишутся строго одно под другим и соединяются вертикальной чертой. Правее этой черты записывается повторяемая последовательность команд (тело цикла). Цикл с параметром (цикл для) - повторное выполнение тела цикла, пока целочисленный параметр пробегает множество всех значений от начального ( i1 ) до конечного ( in ): нц пока условие  тело цикла кц

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА

ВЕТВЛЕНИЕ

если условие

  • то серия 1
  • иначе серия 2

все

если условие

  • то серия 1

все

ЦИКЛИЧЕСКИЕ

нц число повторений раз

  • тело цикла

кц

Ветвление бывает полное и неполное.

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

Цикл с параметром (цикл для) — повторное выполнение тела цикла, пока целочисленный параметр пробегает множество всех значений от начального ( i1 ) до конечного ( in ):

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

  • тело цикла

кц

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА  нс, Служебное слово ( новая строка ) указывает ЭВМ, что информация должна выводиться на новую строку.

КОМАНДЫ АЛГОРИТМИЧЕСКОГО ЯЗЫКА

нс,

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

Считается, что ученик ознакомился с пультом самостоятельно и никаких трудностей у них при этом не возникло.

Основными недостатками при работе с пультом в черепашке было:

  • При ошибочно введенной команде нельзя ничего отменить и приходилось начинать заново.
  • При сдаче программы приходилось перепечатывать команды или же переписывать.
  • Нельзя было быстро повторить определенный блок/последовательность программ несколько раз.

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

Так выглядит рабочая область Кумира: исполнитель Черепаха при закрытии окна с пультом и справки.

2.png

На изображении выше можно отметить две рабочие области

1 – рабочее поле, куда можно печатать команды. Базовые команды записываются так же, как и на пульте. Напечатать в рабочее поле можно всё, что угодно. При некорректном вводе ошибки будут в области 2.

2 – поле, куда программа будет выдавать все возможные ошибки. Пока в этом поле есть какие-то комментарии и/или строки подсвечены красным, запустить  программу не получится.

Что надо сделать, чтобы напечатанные команды работали:

Напечатать такие 4 строчки (без команды вперед(20))

Строка использовать Черепаха означает, что все команды Кумир теперь будет выполнять исполнителем Черепаха. Важно! Слово Черепаха должно быть подсвечено зеленым. Если этого не произошло, то это может значит две вещи. Либо у вас в Кумире нет такого исполнителя(это можно проверить в F1. Там указан весь список исполнителей), либо вы опечатались.

Конструкция: Алг-нач-кон

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

Важно! Все набранные команды должны посветиться синим цветом. Если этого не произошло, то скорее всего в поле №2 будет написана ошибка – «нет такого алгоритма».

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

  1. опустить хвост
  2. поднять хвост
  3. вперед()
  4. влево()
  5. вправо()
  6. назад()

Теперь, чтобы запустить напечатанные команды, надо нажать на кнопку

Найдите максимально похожу на это изображение кнопку на верхней панели. Так же можно пользоваться горячими кнопками, которые будут подписаны при наведении на иконку. В моей версии программы — Shift + F5

Ещё одна полезная функция в программе  — это пошаговый запуск написанных команд (кнопка над желтой стрелкой (любая из двух) Или же на клавиатуре F7 или F8)

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

Красная стрелка указывает на иконку сохранения. Программа сохранит все ваши команды из поля №1 в файл с расширением .kum. Вы всегда сможете открыть такой файл в Кумире.

Пример№1 Простой

использовать Черепаха

алг 

нач 

. опустить хвост

. вперед(50)

. влево(90)

. вперед(70)

. вправо(135)

. вперед(100)

. влево(135)

. вперед(20)

. вправо(135)

. вперед(50)

. 

. вправо(90)

. 

. вперед(50)

. вправо(135)

. вперед(20)

. влево(135)

. вперед(100)

. влево(135)

. влево(90)

. вперед(70)

. влево(90)

. вперед(50)

. вправо(90)

. вперед(20)

кон

Пример№2 Сложный

Иллюстрирует, зачем нужна служебная конструкция агл-нач-кон. И конструкцию нц-x-раз – кц, которую мы пройдем на следующий уроках.

использовать Черепаха

алг Квадрат

нач 

. опустить хвост

. влево(90)

. Круг

. влево(90)

. вперед(20)

. Круг

. влево(90)

. вперед(20)

. Круг

. вперед(20)

. влево(90)

. вперед(20)

. Круг

кон

алг Круг

нач

. нц 360 раз

. . вперед(3)

. . вправо(1)

. кц

кон

Пример №3 Это код Ёлочки с одной ошибкой.

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

использовать Черепаха

алг 

нач 

. опустить хвост

. вперед(50)

. влево(90)

. вперед(70)

. вправо(135)

. вперед(100)

. влево(135)

. вперед(20)

. влево(135)

. вперед(50)

. 

. вправо(90)

. 

. вперед(50)

. вправо(135)

. вперед(20)

. влево(135)

. вперед(100)

. влево(135)

. влево(90)

. вперед(70)

. влево(90)

. вперед(50)

. вправо(90)

. вперед(20)

кон

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