![]() |
![]() |
Работа с периферийными устройствами
Если пользователь
использует систему Mathematica для выполнения чисто математических расчетов,
то он может ничего не знать о подавляющем большинстве описанных в этом уроке
функций. Их основное назначение — незаметная поддержка работы с периферийными
устройствами ввода/вывода. Однако все функции этого урока открыты для опытных
пользователей, стремящихся использовать систему в составе программных комплексов.
Здесь рассматривается только часть функций для работы с периферийными устройствами
— даны те из них, которые используются достаточно часто. Многие функции этой
группы перечислены в приложении.
Ввод/вывод в системе Mathematica организован с помощью интерфейсного процессора
(FrontEnd)
настолько естественно, что у большинства пользователей едва ли появится искушение
изменять формы ввода/вывода по сравнению с установленными по умолчанию. Тем
не менее, это возможно с помощью обширного набора команд, имеющихся в меню системы.
Более того,
система предоставляет пользователю обширные возможности по организации ввода/вывода
и различных форм диалога с помощью соответствующих функций, команд, директив
и опций. Эти средства входят в язык программирования систем Mathematica и нередко
используются для подготовки серьезных документов (например, обучающих и тестирующих
программ), а также для создания пакетов расширения.
Прежде всего
отметим функции ввода/вывода, позволяющие организовать диалог с
системой
в стиле, подобном тому, что используется при программировании на Бейсике. Основные
функции для этого следующие:
Этих функций
достаточно для организации простейшего диалога с программой.
На рис. 7.1
показан простейший пример организации диалога в стиле, принятом в языке Бейсик.
В данном случае вычисляется длина окружности с запросом радиуса R.
Рис. 7.1. Пример организации диалога
При вычислении документа, приведенного на рис. 7.1, вначале исполняется функция Input. Это ведет к появлению диалогового окна в центре экрана — на рис. 7.1 оно несколько смещено вниз, чтобы не загораживать содержимое ячейки документа. В окне виден запрос, который указан в кавычках как параметр функции Input. После ввода нужного значения (в нашем примере это радиус окружности) и нажатия клавиши Enter или щелчка на кнопке ОК диалогового окна функция Input возвращает введенное значение, и оно присваивается переменной Р.. После этого функция Print выводит на экран вычисленное значение длины окружности с кратким комментарием (рис. 7.2).
Рис. 7.2. Документ рис. 7.1 по окончании диалога
Разумеется, для данного примера нет никакого смысла организовывать диалог в такой форме, поскольку однократное вычисление длины окружности проще задать прямо в тексте документа без запроса радиуса — просто указав R = 10. Однако при составлении сложных программ, например ориентированных на многократные вычисления с различными данными по скрытым формулам, такая возможность организации диалога очень полезна. Ее можно использовать и при составлении обучающих программ на базе системы Mathematica.
К сожалению, комментарий, отображаемый в окне функции ввода Input, возможен только на английском языке — при вводе символов кириллицы вместо обычных надписей выводятся коды (в то же время функция Print исправно выводит комментарии на русском языке). Это связано с выбором для данного окна шрифта, не содержащего символов кириллицы.
![]() |
![]() |