Алгоритм на языке КуМир записывается так:
алг тип_алгоритма имя_алгоритма (описание_параметров)
дано условие_применимости_алгоритма
надо цель_выполнения_алгоритма
нач
¦ последовательность команд
кон
и состоит из заголовка (часть до служебного слова нач) и тела
алгоритма (часть между словами нач и кон). Алгоритм-функция
отличается от алгоритма-процедуры формой записи заголовка
(перед именем алгоритма надо указать тип возвращаемого
значения) и использованием специального служебного слова знач.
Для алгоритмов-процедур тип_алгоритма должен быть опущен. Для алгоритмов-функций на месте тип_алгоритма должен быть указан один из простых типов алгоритмического языка (вещ, цел и т.д.), определяющий тип значений, которые принимает данная функция.
Пример алгоритма-процедуры:
алг гипотенуза (вещ a,b, рез вещ c)
дано a>=0 и b>=0 |длины катетов треугольника
надо |c = длинa гипотенузы этого треугольника
нач
c := sqrt( a**2 + b**2 )
кон
Пример алгоритма-функции:
алг вещ площадь (вещ a,b,c)
дано a>=0 и b>=0 и c>=0 |длины сторон треугольника
надо |значение функции равно площади этого треугольника
нач
вещ p |полупериметр
p := (a+b+c)/2
знач := sqrt(p*(p-a)*(p-b)*(p-c))
кон
Значение, которое должно стать результатом алгоритма-функции, надо присвоить особой величине с именем знач. Ее описанием служит заголовок алгоритма, но в остальном величина знач используется так же, как и любая другая промежуточная величина. Вызов алгоритма-функции производится путем указания его имени в выражении. Встретив это имя при вычислении выражения, КуМир выполняет алгоритм-функцию и затем подставляет в выражение вместо имени алгоритма значение величины знач.