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

§ 2.35. Диалоговые программы

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

2.35.1. Ввод числовых и символьных данных.

Для организации диалога пользователя с программой в системе MATLAB имеются специальные команды. В частности, простейший способ ввода числовой и символьной информации (в командном окне выводится запрос пользователю, на который предоставляется возможность получить ответ), набираемой на клавиатуре обеспечивает функция input, допускающая следующий формат обращения:

x=input('Приглашение')

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

Второй вариант обращения к функции input имеет вид:

x=input('Приглашение','s')

В этом случае текст, набираемый пользователем, рассматривается как строка символов, которая и возвращается в качестве значения функции. В обоих случаях, если в текст запроса (приглашения) ввести символы \n, то курсор будет перемещен на следующую строку (таким образом можно сформулировать запрос, состоящий из нескольких строк).

2.35.2. Вывод результатов вычислений.

Для вывода значения выражения (частным случаем которого является имя любой переменной) достаточно лишь не набрать после него символ «точка с запятой» (;), подавляющий выдачу результата (т.е. имеет место автоматический вывод). В качестве альтернативы можно использовать функцию disp, которая отличается от автоматического вывода тем, что не выводит имя отображаемого значения (т.е. имя переменной, которой присваивается результат вычислений, или имя системной переменной ans):

disp(Выражение)

В частном случае аргументом функции disp может быть строка, заключенная в одинарные кавычки.

Для вывода в командное окно предупреждающих сообщений вместо функции disp рекомендуется применять функцию warning, имеющую следующий формат вызова:

warning('Предупреждающее_сообщение')

При использовании данной функции вывод предупреждений можно подавить командой

warning off

а после вновь восстановить командой

warning on

Предупреждающие сообщения, выдаваемые с использованием функции warning в командном окне, будут предваряться словом “Warning”.

Для вывода в командное окно сообщений об ошибках используют функцию error:

error('Сообщение_об_ошибке')

Сообщения об ошибках, выводимые с помощью функции error, в командном окне отображаются красным цветом. После вывода сообщения об ошибке с помощью функции error работа программы будет корректно завершена. Так, например, имеем:

>> warning('Предупреждение')

Warning: Предупреждение

>> error('Ошибка')

Ошибка

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