Maxima Manual: Основные сведения о выражениях

Next: Комплексные выражения, Previous: Выражения, Up: Выражения [Contents][Index]

### 6.1 Основные сведения о выражениях

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

    integrate            next           from                 diff
    in                   at             limit                sum
    for                  and            elseif               then
    else                 do             or                   if
    unless               product        while                thru
    step

Большинство сущностей в Maxima являются выражениями. Последовательность выражений может превратиться в одно выражение, если элементы последовательности разделены запятыми и последовательность взята в скобки. Это аналогично подобным выражениям последовательного вычисления (comma expressions) в языке программирования C.

    (%i1) x: 3$
    (%i2) (x: x+1, x: x^2);
    (%o2)                          16
    (%i3) (if (x > 17) then 2 else 4);
    (%o3)                           4
    (%i4) (if (x > 17) then x: 2 else y: 4, y+x);
    (%o4)                          20

Даже циклы в Maxima являются выражениями, хотя то значение, которое они возвращают, не слишком полезное `done`.

    (%i1) y: (x: 1, for i from 1 thru 10 do (x: x*i))$
    (%i2) y;
    (%o2)                         done

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

    (%i3) y: (x: 1, for i from 1 thru 10 do (x: x*i), x)$
    (%i4) y;
    (%o4)                        3628800

Next: Комплексные выражения, Previous: Выражения, Up: Выражения [Contents][Index]