Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР-14. Метод половинного деления (FORTRAN,Excel...doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.22 Mб
Скачать

Реализация типового варианта

  1. Расчет в среде MathCad.

    1. Введите текстовую информацию о работе и постановку задачи:

    1. Изолируйте интервалы, содержащие корни уравнения:

    1. Создайте многострочную функцию вычисления корня методом половинного деления:

    1. Определите корень уравнения с помощью пользовательской и стандартной функции:

  1. Расчет в среде Microsoft Excel.

    1. Запустите на выполнение среду программирования Microsoft Excel. По умолчанию создается новый документ. Сохраните документ на рабочий диск под уникальным именем:

    1. Введите необходимую текстовую информацию для идентификации работы:

    1. Внесите информацию о постановке задачи:

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

    1. Введите и распространите формулу значений функции :

    1. Выделим интервалы аргумента, на которых функция меняет знак – это интервалы изоляции корней уравнения:

    1. Постройте график исследуемой функции на основе таблицы, чтобы убедиться, что на выделенных интервалах кривая графика пересекает ось абсцисс:

    1. Выберите один из интервалов изоляции корня уравнения. Постройте заголовок таблицы нахождения корня. Внесите начальные значения границ интервала a и b, формулу определения середины интервала c:

    1. Введите формулу вычисления f(a):

    1. Введите формулу вычисления f(b):

    1. Введите формулу вычисления f(c):

    1. Введите формулу условия прекращения итераций :

    1. Для вставки условного оператора в ячейку A39 для определения нового значения левого интервала изоляции корня a воспользуйтесь мастером стандартных функций:

    1. В диалоговой панели мастера выберите категорию функции, имя функции, ознакомьтесь с описаним функции и нажмите ОК:

    1. Мастер предлагает ввести аргументы функции. Воспользуйтесь мастерами вставки аргументов в правой части окон редактирования:

    1. В результате функция будет вставлена и вычислена:

    1. Аналогично вставьте формулу для вычисления нового значения правой границы b:

    1. Распространите формулы на нижнюю часть таблицы:

    1. Расчеты можно проводить до строки, в которой условие в столбце G выполнится:

    1. Выведем окончательное значение корня уравнения:

    1. Сравните результаты, полученные в других средах программирования.

  1. Расчет в среде программирования Fortran.

    1. Запустите на выполнение среду программирования Developer Studio.

    2. Создайте проект Lab14_V1 приложения Windows, выполняющего задание.

    1. В открывшемся следующем окне мастера выберите переключатель A simple Dialog based Application. Подтвердите выбранные опции, нажав Finish.

    1. Ознакомьтесь с окончательной информацией о создаваемом проекте и нажмите на кнопку OK.

    1. Мастер сгенерирует проект диалогового приложения, которое можно откомпилировать и запустить на выполнение. Создан ряд файлов, название которых основано на имени проекта.

    1. Кроме того есть папка ресурсов проекта ResourceView, перейдя на которую можно отредактировать графические и строковые ресурсы проекта.

    1. Двойной щелчок левой кнопки мыши по идентификатору диалоговой панели IDD_LAB14_V1_DIALOG приводит к открытию редактора диалога. Шаблон диалоговой панели по умолчанию содержит две командные кнопки Apply и Exit , метку с надписью посередине, строку заголовка с именем «Dialog Title» и с кнопкой завершения работы .

    1. Представим возможный финальный вид диалоговой панели, которая принимает от пользователя исходные данные и выводит результаты.

    1. С помощью палитры компонентов Dialog добавьте на форму компоненты в соответствии с таблицей:

Компонент

Инструмент

Назначение

Идентификатор

Group Box 1

Контейнер ввода исходных данных

Group Box 2

Контейнер вывода результатов расчета

Edit Box 1

Окно ввода левой границы интервала a

IDC_EDIT_A

Edit Box 2

Окно ввода правой границы интервала b

IDC_EDIT_B

Edit Box 3

Окно ввода точности расчета

IDC_EDIT_EPS

Edit Box 4

Окно вывода корня уравнения

IDC_EDIT_KOR

Edit Box 5

Окно вывода количества итераций

IDC_EDIT_ITER

Static Text 1- Static Text 5

Соответствующие поясняющие метки

    1. В результате форма может выглядеть так:

    1. Измените заголовки меток, формы и контейнеров группировки, а идентификаторы окон редактирования (см. таблицу п. 3.9), используя панель свойств Properties. Идентификаторы командных кнопок, меток и самой панели оставьте без изменений.

    1. Внесите изменения в исходный текст программы в соответствии с заданием варианта.

  • Введите в модуль Lab14_V1Globals (файл Lab14_V1Globals.f90 проекта) в качестве глобальных данных соответствующие переменные для исходных данных и результатов расчета. Связь между этими переменными и соответствующими окнами редактирования на диалоговой панели приложения будет осуществляться через одноименные строковые переменные с приставкой text_.

  • Отредактируйте файл Lab14_V1.f90. В теле главной функции приложения WinMain сразу за разделом объявлений передайте начальные данные от глобальных переменных исходных данных их соответствующим строкам.

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

  • Отредактируйте подпрограмму Lab14_V1Apply – обработчик сообщений кнопки «Финиш» (бывшая кнопка «Apply»). В начале этой процедуры объявите необходимые переменные. Часть объявлений уже создана мастером.

  • Далее в операторе обработки нажатия левой кнопки мыши (сообщение dlg_clicked) вместо комментария «TO DO» считайте с помощью функции dlgget из окон редактирования исходные данные в текстовые переменные и обменяйте данные между ними и расчетными переменными, применив оператор read.

  • Теперь вычислите приближенное значение корня уравнения методом половинного деления с заданной точностью.

  • В завершение обработки сообщения выведите значения результатов на диалоговую панель посредством буферных текстовых переменных.

  • После процедуры-обработчика сообщений поместите заданную функцию.

    1. Откомпилируйте проект и запустите на выполнение с помощью команды меню Build | Execute. Появится диалоговое окно приложения.

    1. Нажмите на кнопку Старт. Результаты расчета появятся в соответствующих окнах панели приложения.

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