алг Документацияалгоритмический язык · C#

Шпаргалка: алгоритмический язык

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

Структура программы

Элемент Запись
Заголовок алгоритма алг имя
Начало тела нач
Конец тела кон
Комментарий | текст до конца строки
Вызов алгоритма имя(аргументы)
kumir
алг привет
нач
    вывод "Привет, мир!"
кон

Типы и переменные

Тип Запись Примеры
Целое цел 5, -12, 0
Вещественное вещ 3.14, -0.5
Логическое лог да, нет
Строка лит "привет"
Таблица таб таб цел A[1:10]
Операция Синтаксис
Объявление цел i, j
Присваивание x := 10
Ввод ввод x
Вывод вывод "x = ", x
Вывод с новой строки вывод нс, "текст"

Операции

Операция Запись
Сложение, вычитание +, -
Умножение, деление *, /
Остаток, целое деление mod, div
Сравнение =, <>, <, >, <=, >=
Логические и, или, не
Степень x ** 2

Ветвление

kumir
если x > 0 то
    вывод "положительное"
иначе
    вывод "не положительное"
все
kumir
если a > b то
    max := a
иначе
    max := b
все
Конструкция Запись
Полное условие если … то … иначе … все
Неполное условие если … то … все
Выбор выбор … при … иначе … все

Циклы

Цикл Синтаксис
С предусловием нц пока i <= n … кц
С параметром нц для i от 1 до n … кц
С шагом нц для i от n до 1 шаг -1 … кц
Выход из цикла выход
Следующая итерация продолжить
kumir
нц для i от 1 до 10
    вывод i, " "
кц
kumir
i := 1
нц пока i <= 5
    вывод i * i
    i := i + 1
кц

Массивы (таблицы)

Операция Запись
Объявление таб цел A[1:10]
Доступ к элементу A[i]
Заполнение A[i] := i * 2
Сумма элементов цикл с накоплением
Длина A[1:10] — верхняя граница 10
kumir
таб цел A[1:5]
нц для i от 1 до 5
    A[i] := i * i
кц

сумма := 0
нц для i от 1 до 5
    сумма := сумма + A[i]
кц
вывод "Сумма: ", сумма

Подпрограммы

Элемент Запись
Алгоритм-функция алг цел квадрат(цел x)
Возврат значения знач := x * x
Аргументы арг x
Результат рез знач
Вызов y := квадрат(5)
kumir
алг цел квадрат(цел x)
нач
    знач := x * x
кон

алг главный
нач
    вывод квадрат(7)
кон

Типичные ошибки

Проверить синтаксис на практике можно в компиляторе C# — алгоритмы легко переписать на C# и сравнить результат.