Skip to content

Instantly share code, notes, and snippets.

@a1ip
Last active August 29, 2015 14:25
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save a1ip/7bf17a58018deab04869 to your computer and use it in GitHub Desktop.
Save a1ip/7bf17a58018deab04869 to your computer and use it in GitHub Desktop.
Исходный код задач для среды Кумир с онлайн занятия по Кумиру http://foxford.ru/groups/14176
Использовать Водолей
алг
нач
наполни В
перелей из В в С
перелей из В в А
наполни В
вылей С
перелей из В в С
перелей из В в А
кон
Использовать Кузнечик
алг
нач
вперед 3
назад 2
перекрасить
вперед 3
вперед 3
назад 2
перекрасить
вперед 3
вперед 3
назад 2
перекрасить
кон
Использовать Черепаха
алг
нач
нц
вперед(50)
вправо(72)
кц
кон
Использовать Черепаха
алг
нач
нц 5 раз
вперед(50)
вправо(72)
кц
кон
Использовать Черепаха
алг снежинка (цел лучей)
нач
нц лучей раз
вперед(100)
назад(100)
вправо(360/лучей)
кц
кон
Использовать Черепаха
алг много снежинок
нач
снежинка(3)
поднять хвост
вперед(150)
вправо(30)
опустить хвост
снежинка(7)
кон
алг снежинка (цел лучей)
нач
нц лучей раз
вперед(100)
назад(100)
вправо(360/лучей)
кц
кон
Использовать Черепаха
алг вперед_криво(вещ длина)
нач
вперед(длина/3)
влево 60
вперед(длина/3)
вправо 120
вперед(длина/3)
влево 60
вперед(длина/3)
кон
Использовать Черепаха
алг вперед_криво2(вещ длина)
нач
вперед_криво1(длина/3)
влево 60
вперед_криво1(длина/3)
вправо 120
вперед_криво1(длина/3)
влево 60
вперед_криво1(длина/3)
кон
Использовать Черепаха
алг вперед_криво1(вещ длина)
нач
вперед(длина/3)
влево 60
вперед(длина/3)
вправо 120
вперед(длина/3)
влево 60
вперед(длина/3)
кон
Использовать Черепаха
алг снежинка Коха
нач
нц 3 раз
вперед_криво(150, 3)
вправо(120)
кц
кон
алг вперед_криво(вещ длина, цел глубина)
нач
если глубина = 0 то
вперед(длина)
иначе
вперед_криво(длина/3, глубина - 1)
влево(60)
вперед_криво(длина/3, глубина - 1)
влево(120)
вперед_криво(длина/3, глубина - 1)
влево(60)
всё
кон
Использовать Черепаха
алг кривая_дракона(цел глубина)
нач
вперед_драконово(50, глубина, 1)
кон
алг вперед_драконово(вещ длина, цел глубина, цел знак)
нач
если глубина = 0 то
вперед(длина)
иначе
влево(45*знак)
вперед_драконово(длина*sin(45), глубина - 1, 1)
влево(90*знак)
вперед_драконово(длина*sin(45), глубина - 1, -1)
влево(45*знак)
всё
кон
Использовать Робот
алг вправодоупора
нач
нц пока справа свободно
вправо
закрасить
кц
кон
Использовать Робот
алг еслисвободно
нач
нц пока справа свободно
вправо
если сверху свободно
то закрасить
всё
кц
кон
Использовать Робот
алг еслисправаиснизусвободно
нач
нц пока справа свободно
вправо
если сверху свободно и снизу свободно
то закрасить
всё
кц
кон
Использовать Робот
алг еслииили
нач
нц пока справа свободно
вправо
если сверху стена и снизу свободно или снизу стена и сверху свободно
то закрасить
всё
кц
кон
Использовать Робот
алг вложенныеусловия
нач
нц пока справа свободно
вправо
если сверху свободно и снизу свободно
то закрасить
иначе
если сверху свободно
то
вверх
закрасить
вниз
иначе
если снизу свободно
то
вниз
закрасить
вверх
всё
всё
всё
кц
кон
Использовать Робот
цел направление = 2 | комментарий 0 - вверх, 1 - вправо, 2 - вниз, 3 - влево
алг обход лабиринта
нач
нц пока не клетка закрашена
если стена_справа
то
если стена_впереди
то налево
иначе
направо
вперед
всё
всё
кц
кон
алг лог стена_справа
нач
направо
знач := стена_впереди
налево
кон
алг лог стена_впереди
нач
выбор
при направление = 0: знач := сверху стена
при направление = 1: знач := справа стена
при направление = 2: знач := снизу стена
при направление = 3: знач := слева стена
всё
кон
алг налево
нач
направление := mod(направление + 3, 4)
кон
алг направо
нач
направление := mod(направление + 1, 4)
кон
алг вперед
нач
выбор
при направление = 0: вверх
при направление = 1: вправо
при направление = 2: вниз
при направление = 3: влево
всё
кон
цел N = 10
целтаб A[1:N]
алг цел Максимальный нечётный
дано | целочисленный массив A[1:N].
| все значения на отрезке [-1000,1000]
надо | найти и записать в переменную aMax
| максимальный нечётный элемент.
нач
цел i, j, aMax
aMax := -1001
нц для i от 1 до N
если mod(A[i], 2) = 1 и A[i] > aMax
то
aMax := A[i]
всё
кц
знач:=aMax
кон
алг вещ степень числа(вещ a, цел n)
нач
знач := 0
кон
алг цел @тестирование
нач
если степень числа(2, 3) <> 8
то __Ошибка__
всё
кон
алг __Ошибка__
нач
вывод 'Ошибочное значение степени', нс
кон
алг вещ степень числа(вещ a, цел n)
нач
вещ c
цел i
с := 1
нц для i от 1 до n
c := c*a
кц
знач := c
кон
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment