Возможности пакета Mathcad, СУБД Microsoft Access

Содержание



Вопрос №1. Пакет Mathcad: Решение уравнений и систем уравнений с помощью блока решения (конструкция Given - Find)

Вопрос №2. Работа с гипертекстовой информацией в сети Интернет

Вопрос №3. СУБД Microsoft Access: создание запросов с параметрами и запросов действия Задача 1. Определить сумму и произведение положительных элементов массива А(20), с четными порядковыми номерами

Задача 2. Дан двумерный массив А из 13 строк и 7 столбцов. Найти сумму элементов, стоящих в строках с нечетным индексом

Литература




Вопрос №1. Пакет Mathcad: Решение уравнений и систем уравнений с помощью блока решения (конструкция Given - Find)



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

Затем записывается система уравнений. При записи уравнений знак равенства надо вводить не клавишей = (равно), а комбинацией клавиш Ctrl+=. Получаемый в результате жирный знак равенства символизирует не присваивание значения, а оператор отношения.

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

Результат расчета, это вектор решения системы. Вычислительный блок позволяет решать системы от 1 до 200 уравнений.

Mathcad допускает использование двухсторонних неравенств типа а < х < b. Операторы < и > выбираются с панели Boolean (Булевы операторы).

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

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

Помимо команды Linear (Линейный метод), реализующей метод касательной, в контекстном меню имеется подменю Nonlinear (Нелинейный метод), позволяющее выбрать один из трех нелинейных методов:

	Conjugate Gradient (Метод сопряженных градиентов);

	Levenberg-Marquart (Метод Левенберга);

	Quasi-Newton (Квази-Ньютоновский метод).

Щелкнув на кнопке Advanced Options (Дополнительные параметры), помимо выбора методов можно задать дополнительные параметры.

Параметры оценки производной конечными разностями (Derivative Estimation):

	Forward — правая двухточечная схема;

	Central — трехточечная симметричная схема.

Параметры оценки переменной (Variable Estimation):

	Tangent — касательная — прямая линия;

	Quadratic — касательная — парабола.

О Необходимость проверки линейности (Linear Variable Check):

	Yes — проверять;

	No — не проверять.

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

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

Градиентные методы, реализованные в функции Find, требуют многократного вычисления производных. Для достаточно гладких функций они обеспечивают быстрый и надежный поиск корня.

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

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

Mathcad позволяет решать системы уравнений не только в скалярной, но и в матричной форме, при этом начальные условия и ограничения задаются в виде векторов. С помощью функции Find возможно также решение систем уравнений в символьном виде.



Вопрос №2. Работа с гипертекстовой информацией в сети Интернет



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

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

О популярности сети Интернет можно судить по статистическим данным. Около 150 млн. человек имеют доступ к сети Интернет, среди которых крупные организации и обычные пользователи (частные лица).

Internet не принадлежит никому конкретно. Некоторые секторы Интернет финансируются либо государством, либо коммерческими группами. Долгое время основные каналы связи и административные структуры Интернет финансировались Национальным научным фондом США (NSF), но теперь финансирование прекращено и развитие сети происходит на коммерческой основе. Внедрением стандартов Интернет занимаются комитеты Сообщества Интернет (Internet Society), такие как World Wide Web Consortium, Internet Engineering Task Force и тд.

Internet навигатор или броузер (или браузер - еще не выработалось однозначное написание) - это специальная программа для просмотра Web-страниц. Ее основное назначение - принять введенный пользователем адрес (URL) искомой страницы, скопировать ее с сервера в Интернете на диск локального компьютера (в специально отведенную "буферную" область), а затем правильно отобразить все элементы страницы (текст, графику, звук и т. п.) в рабочем окне. Браузеры используются не только как средство навигации в Интернете, но и для просмотра любых HTML-документов, а также рисунков форматов GIF и JPEG в режиме "off-line", то есть без подключения к Интернету. Заметим, что сегодня на языке гипертекста все чаще выполняют различного рода документации, базы данных и пр., распространяемые на дисках CD-ROM. Кроме того, многие современные браузеры оснащаются функциями работы с электронной почтой и телеконференциями.

Наиболее популярны в настоящее время браузеры Microsoft Internet Explorer и Netscape Communicator (более ранние версии - Netscape Navigator). Из них явно лидирует Internet Explorer версий 4 и 5. Во многом это объясняется тем, что фирма Microsoft поставляет его в комплекте с операционной системы Windows, начиная с версии 95 OCR2. Кроме того, версия Windows 98, а еще в большей степени - Windows 2000/ME фактически построены на основе Web-технологий, так что и окна папок, и Рабочий стол представляют собой те же браузеры Internet Explorer и могут грамотно отображать Интернет-страницы!

Microsoft Internet Explorer 5.0 (справка)

	Программа основана на NCSA Mosaic. NCSA Mosaic(TM) была разработана в Национальном суперкомпьютерном центре Иллинойского университета (Urbana-Champaign).

	Распространяется в рамках лицензионного соглашения с компанией Spyglass Inc.

	Содержит модули безопасности, лицензированные у корпорации RSA Data Security.

	Часть программного обеспечения основана на разработках независимой группы JPEG.

	Содержит клиентскую программу SOCKS, лицензированную у фирмы Hummingbird Communications Ltd.

	Содержит модуль ASN.1, лицензированный у Open Systems Solutions, Inc.

	Программные компоненты мультимедиа, включая Indeo® video, Indeo® audio, и Web Design Effects, предоставлены корпорацией Intel.

	Версия Unix содержит лицензионные программы корпорации Mainsoft. (c) Mainsoft Corporation, 1998-1999. Все права защищены. Mainsoft - торговая марка корпорации Mainsoft.

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

Помимо Netscape и Explorer существует ряд других, гораздо менее популярных браузеров — Opera, Mosaic, Сибкон Коммуникатор (российский вариант Netscape Communicator) и др

Создавая Web-страничку, нужно помнить, что некоторые команды языка HTML могут по-разному восприниматься браузерами Netscape и Internet Explorer. Поэтому их использования надо по возможности избегать, по крайней мере, указывать где-либо на головной странице сайта, на какую версию браузера он ориентирован. Впрочем, начиная с последней, пятой, версии, Internet Explorer стал практически полностью совместимым с браузерами семейства Netscape.

Что такое Html – Hyper Text Markup Language - Язык Разметки Гипер Текстов. Это язык программирования с помощью которого можно создавать Гипертекст. Гипер текст, как я понимаю, это текст в котором кроме самого текста можно использовать картинки, таблички, и много чего еще, и кроме того еще объединять их вместе, т.е. связывать их ссылками.

В Html только одно понятие - это ТЕГ (от англ. tag). Под тегом принимают каждый элемент языка. Состоит тег из открывающей скобки вида <...> , и закрывающей </...>. Внутри <...> стоит название элемента языка, т.е. если там стоит "P", то все что будет между <p> и </p>, будет называться параграфом.

Пример:

<p> Это первый параграф </p>

<p> Это второй параграф </p>

Кроме того, в каком регистр элемента неважен, <strong>, <STRONG> и <StrOnG> - выполнят одинаковое предписание программе в которой Hyper Text будет просматриваться. Регистр важен только в названиях имен файлов и еще некоторых элементов. В некоторых тегах закрывающая скобка не важна и поэтому ее иногда опускают при создании документов.

Если используются вложенные теги, важно соблюдать последовательность открывающих и закрывающих скобок , т.е. выражение:

<i><b> Тут текст </i></b> - будет неправильным, а :

<i><b> Тут текст </b></i> - правильно.

Все документы на языке Html, как правило подчиняются следующей структуре:

<html>

<body>

<p>Простейший документ.

</body>

</html>

Элемент <html>...</html>

Этот элемент можно сказать главный, о чем говорит его название. Он может быть в текстовом документе только один. Все что внутри него, это и есть "программа" на языке Html. Т.е. документ должен начинаться с <html> и заканчиваться </html>.

Элемент <body>...</body>

Этот элемент уже представляет большую ценность, чем <html>, так как внутри него помещается тело документа и кроме того он может установить очень много параметров этого документа.

	bgcolor - устанавливает цвет фона документа.

	text - устанавливает цвет отображаемых символов.

	link - это цвет, которым будут отображаться ссылки на другие документы.

	vlink - цвет уже посещенных ссылок (Visited LINKs).

	alink - цвет для того, чтобы помечать ссылки во время нажатия на них мышкой (Active Link).

	background - параметр задает фоновое изображение.

Цвет в этих параметрах задается в следующем формате:

#RRGGBB

где R (red - красный), G (green - зеленый), B (blue - синий)- это составляющие компоненты цвета в шеснадцатеричной форме. Например, если вам надо получить зеленый цвет, для которого составляющие красного и синего нулевые, то вы должны записать #00FF00. И таким образом можно получить все 16 млн. цветов, которые научились воспроизводить современные мониторы.




Вопрос №3. СУБД Microsoft Access: создание запросов с параметрами и запросов действия



Запросы - важнейший инструмент любой системы управления базами данных (СУБД). Они служат для выборки определенных записей из базы, обновления таблиц и включения в них новых записей. Чаще всего запросы используют для фильтрации конкретных групп записей, удовлетворяющих определенному условию. Кроме того, они еще и позволяют комбинировать информацию хранящуюся в разных таблицах, обеспечивая унифицированный вид, связанным элементам данных.

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

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

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

Стоит отдельно отметить, что одним из важных свойств запроса является то, что при создании моментального снимка, возможно не только отбирать необходимую информацию из базы, но и производить ее обработку. Например, сортировку в порядке возрастания или убывания, фильтрацию по диапазону значений, объединение и изменение. При этом базовых таблиц все эти действия могут не касаться. Это обеспечивает сохранность информации в БД.

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

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

Язык SQL (Structured Query Language - структурированный язык запросов) - это стандартный набор слов английского языка, применяемый для описания запроса к базе данных. Access автоматически транслирует все запросы в последовательность символов своего собственного диалекта языка SQL, именуемого Jet SQL.

В Access различают четыре основных типа запросов, позволяющих решать различные задачи:

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

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

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

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

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

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

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

Для текстового поля задается строка, содержимое которой будет сравниваться со значениями соответствующего поля таблицы. Совпадение значений приведет к добавлению текущей записи в итоговую таблицу. При составлении строки знак * означает любую последовательность символов, а ? один любой символ. Например, условие "ГОМЕЛЬ" в поле Город, выдаст список записей, содержащих название этого города. Условие "Нов*" соответствует значениям начинающимся с Нов, "*а*" выдаст все записи с буквой а в названии, "?????" отыщет все комбинации из пяти символов, а "??*" соответствует значениям состоящим не менее чем из двух символов.

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

Для этой цели служит специальная команда языка SQL, которая выглядит так:

Like [ Текст сообщения пользователю ]

В квадратных скобках записывается текст, выводимый в окне ввода параметра, появляющегося на экране, сразу после начала работы соответствующего запроса. Поле ввода принимает набранное на клавиатуре значение и передает его в качестве условия отбора. Далее СУБД просматривает все записи базы данных в поисках совпадения значений и выводит результаты поиска в итоговой таблице.

По умолчанию Access определяет тип вводимых данных как Текстовый. Если же параметр задает условие отбора из столбца с данными типа Числовой или Дата/Время, то необходимо вручную назначить тип данных.

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

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

Доход : [Продано]*[Цена]/6

До двоеточия следует название вычисляемого поля, выводимое в заголовке столбца результирующей таблицы. В узкое поле бланка запроса неудобно записывать длинные формулы, но если воспользоваться комбинацией клавиш Shiht+F2, то откроется вспомогательное окно Область ввода. В нем есть возможность ввести сколь угодно длинную формулу, а затем добавить ее в поле запроса, простым нажатием на кнопку ОК.

Если есть необходимость занести вычисленные данные в отдельную таблицу, достаточно воспользоваться Запрос на изменение (действия).




Задача 1. Определить сумму и произведение положительных элементов массива А(20), с четными порядковыми номерами



                                                      Начало



                                          Ввод членов массива А

                                    Ввод производим в цикле

                                   For I=0 To I=20 Step 1

                                       Input A(I); Next

Выборка и суммирование

положительных четных элементов массива

                                            For I=0 to 20 Step 2



Да

Summ:=Summ + A(I)                   If A(i)>=0







Выборка и произведени

положительных четных элементов массива

                                            For I=0 to 20 Step 2



                               Да

Pr:=Pr * A(I)                               If A(i)>=0







                                    Вывод значений Summ и Pr



                                                    Конец


Задача 2. Дан двумерный массив А из 13 строк и 7 столбцов. Найти сумму элементов, стоящих в строках с нечетным индексом



                                                      Начало

                                                Ввод членов массива А

                                         Ввод производим в цикле

                                    For I=0 To I=13 Step 1

                               For K=0 To K=7 Step 1

                                          Input A (I, K)

                                              Next I; Next K



Выборка строк с четными For I=0 to 13 Step2

индексами массива

                                            For K=0 to 7 Step 1 



Суммирование членов     Summ:=Summ + A (I, K)

массива







                                    Вывод значений Summ



                                                     Конец




Литература



	Саймино Д. Сети интранет: внутреннее движение. М.: ООО “Бук Медиа Паблишер”, 1997.-352с.

	Александр Сергеев, Николай Лосев. Технологии связи и Internet (популярный обзор технологических решений) Журнал "Мир Internet" http://www.iworld.ru/#10 (49) октябрь 2000.

	Экономическая информатика. Учебник для вузов / Под ред. проф. В.В.Евдокимова. - СПб.: Питер, 1997. - 592с.

	Якубайтис Э.А. Информационные сети и системы. Справочная книга. – М.: Финансы и статистика, 1996. – 386 с.

	Усенков Д. Интернет и World Wide Web. — Наука и жизнь, 2001. №4.

	Теория и практика обеспечения информационной безопасности, под редакцией Зегжды П.Д., Изд. "Яхтсмен", 1996.

	Гайкович В., Першин А.. Безопасность электронных банковских систем., Изд. "Единая Европа", 1994.

	Ростовцев А. Г. Элементы Криптологии, Изд. СПбГТУ

	Клименко С., Уразметов В., Internet. Среда обитания информационного общества, Российский Центр Физико-Технической Информатики, 1995.