Интерфейс: Command Window, рабочая область, редактор
Где набирать команды, где живут переменные и почему серьёзный код пишут в файлах .m.
Скрипт .m — текстовый файл с последовательностью команд MATLAB, который запускается целиком и оставляет переменные в рабочей области.
Четыре окна, которые нужно знать
Среда MATLAB по умолчанию делится на несколько панелей. Command Window — командная строка, приглашение >>: сюда вводят выражения и сразу видят ответ. Workspace (рабочая область) — список всех переменных, которые сейчас существуют в памяти, с их размерами и типами. Editor — редактор, где пишут и сохраняют скрипты и функции. Current Folder показывает файлы текущей папки; MATLAB ищет ваши .m-файлы именно по пути (path).
Логика работы такая: эксперименты и быстрые проверки удобно делать в Command Window, а всё, что хочется сохранить и повторить, переносят в скрипт. Скрипт — это просто файл с теми же командами.
Рабочая область и точка с запятой
Каждое присваивание создаёт или обновляет переменную в Workspace. Если строка не заканчивается точкой с запятой, MATLAB печатает результат; точка с запятой подавляет печать. В скриптах почти всегда ставят ;, иначе экран зальёт промежуточными числами.
x = 5 % напечатает x = 5
y = x^2; % посчитает, но не напечатает
who % список имён в Workspace
Вывод:
x =
5
Your variables are:
x y
Скрипты и комментарии
Скрипт сохраняют как my_script.m и запускают кнопкой Run или командой my_script из Command Window. Комментарий начинается с %, блочный комментарий — %{ ... %}. Хорошая привычка — начинать скрипт с двух команд очистки: clear убирает переменные, clc чистит экран командного окна.
clear; clc; % чистый старт
radius = 3;
area = pi * radius^2; % площадь круга
fprintf('Площадь = %.2f\n', area);
Вывод:
Площадь = 28.27
Как работает под капотом
Все переменные одного скрипта и Command Window живут в общей базовой рабочей области (base workspace). Поэтому скрипт видит переменные, заданные раньше в командной строке, и наоборот. Это удобно для экспериментов, но опасно для больших программ: переменные легко перезаписать. Когда нужна изоляция, используют функции (отдельная тема курса) — у них своя локальная область видимости.
Частые ошибки
- Забыть точку с запятой в цикле — и получить тысячи строк вывода, которые тормозят среду.
- Запускать скрипт, лежащий вне текущего пути: MATLAB его «не видит». Проверяйте Current Folder.
- Называть свой файл как встроенную функцию (например,
sum.m) — он перекроет стандартнуюsum.
Путь поиска и текущая папка
Чтобы понять, почему MATLAB иногда «не видит» вашу функцию, нужно знать про путь поиска (search path). Когда вы пишете имя — скажем, plot или имя собственного скрипта — среда ищет соответствующий файл сначала в текущей папке (Current Folder), затем по списку каталогов в пути. Если файла нигде нет, появляется ошибка «Undefined function». Добавить свою папку в путь можно командой addpath или через меню. Это особенно важно в больших проектах, где код разложен по подпапкам: без правильного пути часть функций окажется недоступна.
Скрипты против Command Window на практике
На первых порах удобно набирать всё прямо в командной строке, но эта привычка быстро вредит. Командное окно не хранит историю воспроизводимо: стоит закрыть среду — и точная последовательность шагов потеряна. Скрипт же — это документ: его можно перезапустить, отправить коллеге, положить в систему контроля версий, прокомментировать. Правило профессионала простое: как только расчёт перестал быть одноразовой пробой, переносите его в .m-файл. Командную строку оставляйте для быстрых проверок («а чему равно вот это?») и осмотра переменных.
Полезный промежуточный инструмент — секции скрипта, разделённые двойным процентом %%. Такой файл можно выполнять по частям (кнопка Run Section), что объединяет удобство интерактивных проб с воспроизводимостью файла. Это любимый формат лабораторных отчётов и учебных тетрадей в MATLAB.
Итоги
- Command Window — для проб, Editor и скрипты
.m— для сохраняемого кода. - Workspace хранит переменные;
;подавляет вывод,%— комментарий. - Скрипты делят базовую рабочую область — следите за именами файлов и переменных.