Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
Топ:
Процедура выполнения команд. Рабочий цикл процессора: Функционирование процессора в основном состоит из повторяющихся рабочих циклов, каждый из которых соответствует...
Основы обеспечения единства измерений: Обеспечение единства измерений - деятельность метрологических служб, направленная на достижение...
Методика измерений сопротивления растеканию тока анодного заземления: Анодный заземлитель (анод) – проводник, погруженный в электролитическую среду (грунт, раствор электролита) и подключенный к положительному...
Интересное:
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Берегоукрепление оползневых склонов: На прибрежных склонах основной причиной развития оползневых процессов является подмыв водами рек естественных склонов...
Лечение прогрессирующих форм рака: Одним из наиболее важных достижений экспериментальной химиотерапии опухолей, начатой в 60-х и реализованной в 70-х годах, является...
Дисциплины:
2017-11-16 | 295 |
5.00
из
|
Заказать работу |
|
|
Рис. 4.5 - Метод Ньютона I (BASIC): цикл с выходом из середины
На рис. 4.5 приведена BASIC-программа поиска корня алгебраического уравнения методом Ньютона (касательных). Почему мы начали с языка BASIC, ведь этюд посвящен языку программирования Mathcad? Дело в том, что язык BASIC кроме традиционной тройки циклов (цикл с предпроверкой, цикл с постпроверкой, цикл с параметром) имеет и универсальный цикл с выходом из середины: Do [...] If... Then [...] Exit Do [...] Loop. Эта конструкция наряду с другими преимуществами, о которых будет сказано ниже, позволяет реализовывать алгоритмы в их естественной последовательности. Так, в программе на рис. 6.8 объявляются функции пользователя (анализируемое уравнение y и его производная dy), запрашивается значение начального приближения к корню x и задается значение погрешности TOL. После этого организуется цикл, но не традиционный, а с выходом из середины. В цикле, следуя естественному порядку алгоритма Ньютона, рассчитывается новое приближение к корню (x1), и если оно отстает от предыдущего не более чем на величину заданной погрешности, то (Then) задача считается решенной (Exit Do). Если нет, то ведется подготовка к новому приближению (x = x1), а цикл повторяется (Loop).
При реализации на языке Mathcad этот несложный алгоритм обрастает «архитектурными излишествами», так как его приходится реализовывать функцией и «запихивать» в прокрустово ложе цикла while – см. рис. 4.6.
|
Цикл с предпроверкой (цикл while) требует, чтобы булево выражение заголовка было определено еще до входа в цикл. А этого нет при поиске корня методом Ньютона. Приходится до входа (и для входа) в цикл писать x1 ←x + 2 × TOL. Подобным образом лгут детям (а машина тоже в каком-то смысле дитя), заставляя их что-то делать. Строку x1 ←x + 2 × TOL можно уподобить стартеру двигателя внутреннего сгорания, работающего, кстати, как и программа на рис. 4.6, циклически. Вот какими аллегориями (дитя, двигатель) обросла наша простенькая программа из-за того, что в языке Mathcad нет цикла с выходом из середины. На рис. 4.6 можно отметить и другую ненатуральность программы – постановку телеги впереди лошади: в цикле сначала приходится готовиться к новому приближению (x1 ←x), хотя еще не ясно, понадобится оно или нет, а только потом проводить его.
Операторы break, continue и return, введенные в Mathcad, призваны вернуть программе на рис. 4.6 ее естественность, но...
Рис. 4.7 - Метод Ньютона III: имитация цикла с выходом из середины
Оператор continue отличается от оператора break тем, что передает управление не в хвост, а в гриву (начало) цикла.
Остается рассказать о последней кнопке на панели программирования Mathcad 8 Pro. Нажатие на нее приводит к появлению на дисплее заготовки инфиксного оператора обработки ошибок с двумя операндами:
Суть оператора проста: если при выполнении правого операнда возникнет ошибка, то выполняется левый операнд. Этот оператор позволяет реализовывать в Mathcad-программах метод проб и ошибок.
Здесь графически решается неравенство: функция f(x) возвращает нуль не только тогда, когда логарифм меньше единицы, но и тогда, когда делается попытка взятия логарифма от неположительного числа. Можно, конечно, решить квадратное уравнение и обойти ошибку функцией или оператором if.
|
Контрольные вопросы:
1. Знать основные компоненты Математического пакета Mathcad
2. Дать описание всем инструментам, находящимся на панели «Программирование», уметь их практически использовать.
Задание:
1. Задание на закрепление пройденного: сделать программу на рис. 4.3 рекуррентной, а на рис. 4.4 – рекурсивной.
2. Задания 1 выполнить в среде математического пакета Mathcad.
ЛАБОРАТОРНАЯ РАБОТА №5
Тема: Программа сканирования и распознования текстов FineReader.
Цель работы: Ознакомление с принципом работы програм сканирования текста, а также приобретение навыков работы с программой FineReader.
Введение
Все мы вводим тексты в компьютер. Это могут быть газетные вырезки, журнальные статьи, прошлогодние договоры, деловые письма, факсы, прайс - листы, биржевые сводки, анкеты... Подсчитано, что более 90% современных документов поступает к нам на бумаге. Десятилетия люди знали только один способ ввода печатных документов в компьютер - с клавиатуры. Помните часы, которые Вы просиживали за компьютером, перепечатывая текст длиной в вечность? А как бы нам всем хотелось, чтобы компьютер научился читать сам прямо с бумажного листа!
Программа оптического распознавания текстов (по-английски OCR – Optical Character Recognition) FineReader позволит Вашему компьютеру и сканеру самостоятельно читать печатные тексты.
|
|
Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...
Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...
Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!