Доступ к записи таблицы истории
Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразуют Notebook MuPAD в Live скрипты MATLAB.
history(n
)
history()
history(n)
возвращает n
запись th таблицы истории.
history()
возвращает индекс новой записи в таблице истории.
Команды, которые вводятся в интерактивном режиме на сеансе MuPAD®, выполнились в процедуре, или читайте из файла, а также получившегося MuPAD, выходные параметры хранятся во внутренней структуре данных, таблице истории. history()
возвращает индекс новой записи в таблице истории. На интерактивном уровне это - количество команд, которые были введены начиная с запуска сеанса или последнего перезапуска.
history(n)
возвращает n
запись th в таблице истории в форме списка с двумя элементами. Первый элемент этого списка является командой MuPAD, и второй элемент является результатом этой команды, возвращенной MuPAD. Порядок записей в таблице истории таков, что большие индексы соответствуют более свежим записям.
Команда last
получает доступ к записям результата из таблицы истории. Вызов last(n)
эквивалентно history ( history() - n + 1) [2]
на интерактивном уровне.
Переменная окружения HISTORY
определяет максимальное количество записей истории, которые хранятся на интерактивном уровне. Значением по умолчанию является 20
. Только новые записи сохранены в памяти. Таким образом допустимые аргументы для history
все целые числа между history() - HISTORY + 1
и history()
. Все другие целые числа приводят к сообщению об ошибке.
Результат возвращен history
не оценен снова (см. eval истории в качестве примера). Используйте функциональный eval
обеспечивать последующую оценку.
Команды и их результаты хранятся в таблице истории, даже если выход подавлен двоеточием. Смотрите Пример 1.
Составные операторы, такие как for
повторение
, и while
циклы, if
и case
команды ветвления и определения процедуры через proc
хранятся в таблице истории в целом на интерактивном уровне. Смотрите страницу справки last
для примеров.
Команды, появляющиеся на той же входной линии, ведут, чтобы разделить записи в таблице истории, если они разделяются двоеточием или точкой с запятой. В отличие от этого последовательность оператора рассматривается как одна команда (см. Пример 3).
Команды, которые читаются из файла через fread
или read
хранятся в таблице истории, и наконец fread
или read
команда хранится в таблице истории (потому что fread
или read
команда закончена в первую очередь после чтения файла). Однако, если опция Plain
используется, затем отдельная таблица истории в действительности в файле, и команды из файла не появляются в таблице истории контекста включения.
Обратите внимание на то, что каждый вызов history
изменяет таблицу истории и возможно стирает самую раннюю запись истории.
Каждая процедура имеет свою собственную локальную таблицу истории. Однако к записям этой таблицы нельзя получить доступ через history
(см. last
). Команда history
всегда обращается к таблице истории на интерактивном уровне.
Индекс новой записи в таблице истории увеличивается одной для каждой вводимой команды, также history()
. Обратите внимание на то, что каждая команда хранится в таблице истории, подавлен ли ее выход двоеточием или нет:
history(); sqrt(1764); history(): history()
3 42 6
history ( history() )
возвращает список с двумя элементами. Первый элемент является последней командой, и второй элемент является результатом, возвращенным MuPAD, который равен last(1)
или %
:
int(2*x*exp(x^2), x); history(history()), last(1)
Следующая команда возвращается рядом с последней командой и ее результатом:
history(history() - 1)
Перезапуск очищает таблицу истории:
reset(): history()
4
Выход команды history()
выше зависит от количества команд в вашем файле запуска MuPAD userinit.mu
.
Первый a
должен быть 0
:
a := 0: a
Теперь 1
присвоен a
:
a := 1: a
Команда history ( history() -2)
отсылает к команде a
после присвоения 0
к a
, возвращаемое значение history
не новое значение a
, потому что результат, возвращенный history
не оценен снова:
history(history() - 2)
Следующие команды создают две записи в таблице истории. Команда history ( history() -1)
возвращает только последнюю команду b:=a
, не обе команды:
a := 0: b := a: history(history() - 1)
Если команды вводятся как последовательность оператора (заключенный в ( )
), они создают одну запись. history ( history() )
выбирает последнюю команду, то есть, последовательность оператора:
(a := 0; b := a;): history(history())
[(a := 0; b := a), 0]
Последний вход
type(op(%, 1))
|
Положительное целое число |
history(n)
возвращает список с двумя элементами и history()
возвращает неотрицательное целое число.