Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Glava_2a70_2014.doc
Скачиваний:
5
Добавлен:
01.07.2025
Размер:
5 Мб
Скачать
☆

2.29.5. Глобализация переменных и функций.

Итак, из всего рассмотренного выше ясно, что переменные в файлах-программах являются глобальными, а в файлах-функциях – локальными. Заметим, что нередко применение глобальных переменных в программных модулях может повлечь за собой побочные эффекты. Применение локальных переменных, напротив, устраняет эту возможность и в полной мере отвечает требованиям структурного программирования.

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

Если для решения задачи требуется, чтобы в подфункции и в функции использовались общие переменные (например a, b и с), их также можно объявить как глобальные после заголовка основной функции и после заголовка подфункции с помощью команды global:

global(a,b,c)

Такая идея, по сути, в явном виде заимствована из языка программирования FORTRAN, в котором реализован более гибкий механизм блоков общей памяти (оператор COMMON), позволяющий взаимодействующим модулям называть общие переменные по разному, сохраняя их порядок и тип данных в общих блоках, и лишь имена блоков у них должны были называться одинаково.

2.29.6. Синтаксический контроль программ.

При вводе текста в редактор M-файлов различные фрагменты программы отображаются разными цветами – редактор тем самым выполняет синтаксический контроль листингов программ, оказывая содействие программисту в части профилактики большинства соответствующих ошибок.

Более того, распознавая различные элементы программы, MATLAB интуитивно выравнивает ее текст так, чтобы наглядно отобразить и выделить каждый из блоков программы (по сути, реализован своеобразный аналог правила «рельефа», рекомендованного к использованию для языка программирования FORTRAN). По умолчанию в редакторе M-файлов используются следующие цветовые выделения:

– синтаксические ошибки выделяются красным цветом;

– все переменные, операторы и константы выделяются черным цветом;

– ключевые слова языка программирования и управляющие структуры (например, объявление function) отмечаются синим цветом;

– комментарии, которые начинаются с символа %, выделяются зеленым цветом;

– символьные переменные строки символов, заключенные в апострофы, отмечаются фиолетовым цветом, а символьные строки, где не хватает апострофа – красно-коричневым.

Отметим, что редактор M-файлов, разумеется, не в состоянии отыскать все ошибки в программе. Ему не под силу, например, обнаружить семантические ошибки, когда пользователь вместо одного оператора или функции ошибочно применяет другой оператор или другую функцию.

§ 2.30. Управляющие структуры

2.30.1. Понятие об управляющих структурах.

Как известно, в любом языке программирования, и MATLAB здесь не является исключением, имеются специальные управляющие конструкции, позволяющие задать последовательность выполнения команд в программах. Таким конструкции называют операторами управления и задают с помощью зарезервированных ключевых слов.

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

Очевидно, что в таких ситуациях не обойтись без использования специальных операторов управления, таких как, в частности, операторы цикла for и while, условный оператор if, переключатель switch...case, конструкции try...catch, а также операторы break, continue и return. Указанные операторы можно использовать как в файл-программах, так и в файл-функциях.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]