Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
NMM_Manual_N11.doc
Скачиваний:
7
Добавлен:
27.10.2018
Размер:
779.26 Кб
Скачать

Пример выполнения лабораторного задания на языке c#

В имеющемся рабочем пространстве NMM_PetrovIS сгенерируем (добавим) новый проект LabTask_11с консольного приложения на языке программирования C#.

Включим в проект класс – Class_11, в котором разместим программные компоненты – аналоги разработанных выше алгоритмов. Никакие принципиально новые приемы программирования мы здесь использовать не будем, поэтому коды программных компонентов приводим без комментариев:

Кроме того, коды функций func_y() и func_dy() в соответствии с формулами (11.22) Вам уже под силу сформировать самостоятельно.

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

Аналог основной программной единицы main_11 (на Fortran) на языке C# может иметь, например, следующий вид:

Сравнение кодов на C# и Fortran, реализующих операции форматного вывода в текстовый файл, безусловно, говорит в пользу Fortran. В частности, операторы format позволяют более гибко организовывать форматный ввод/вывод и не «загромождают» основной код программы, поскольку могут быть записаны в любом месте программной единицы (неисполняемые операторы).

Компиляция проекта LabTask_11с и тестовый расчет дают результаты (файл LabTask_11с.txt), идентичные тем, что были получены в проекте LabTask_11f и приведены выше в виде таблиц (файл Table_dy.txt).

Последнее свидетельствует в пользу того, что цель данной лабораторной работы достигнута.

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

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

Контроль выполнения варианта лабораторного задания № 11

Для контроля правильности Вашего выполнения лабораторной работы № 11 воспользуйтесь уже известным Вам приложением NMM_Labs.

Выберите требуемую лабораторную работу и свой вариант. После этого – нажмите на кнопку «Выполнить» – перед Вами появится следующая форма:

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

Напомним, что вводимое значение аргумента должно быть в пределах отрезка интерполирования.

Кроме того, Вы можете задать другое «Количество интервалов основной таблицы», например –25, которое при начальной загрузке имеет минимальное значение – 20.

Для исследования влияния степени многочлена на относительную погрешность вычисления Вы можете увеличивать этот параметр (от 4 до 9 ).

После того, как выбран интерполяционный многочлен, например – Лагранжа, и задано конкретное значение аргумента, необходимо нажать на кнопку «Вычислить значение функции и ее производной»:

Основной результат интерполирования размещается внизу формы.

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

Если же был выбран многочлен Ньютона, то форма с результатами будет иметь вид:

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

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

Работа считается выполненной, если результаты, полученные Вашей программой для значений аргумента из «верхней», «средней» и «нижней» частей расчетных таблиц (файлов Table_dy.txt или LabTask_11с.txt) совпадут с результатами программы NMM_Labs.

Составитель – ст. преп. Царенко А.П. 20 июня 2019 г.

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