Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

ПРИЛОЖЕНИЕ 1. Исходный текст главной программы





Исходный текст главной программы

use msflib! подключение модуля стандартных процедур

implicit none! указание обязательного объявления переменых

!-----------------------------------------------------------

integer,parameter::fi=1! устройство ввода

integer,parameter::fpw=2! устройство вывода

integer,parameter::MAX=100! максимальное количество точек

integer,parameter::NT=150! количество точек кривой полинома

real(8),parameter::D_X=0.05! припуск на диапазон рисования

real(8),parameter::D_Y=0.05! припуск на диапазон

real(8) XN,XK,YN,YK,HX! границы и шаг изменения Х графика

integer i! счетчик точек полинома

real(8) Xmin,Xmax! минимальный и максимальный элементы X

real(8) Ymin,Ymax! минимальный и максимальный элементы Y

real(8):: X(0:MAX),Y(0:MAX)! таблица данных X(N),Y(N)

real(8):: C(0:MAX)! массив коэффициентов аппрокс.полинома Pm(x)

real(8):: A(0:MAX,0:MAX)! матрица коэффициентов системы уравнений

integer N! количество точек табл. функции (i=0..N-1)

!-----------------------------------------------------------

logical res! логический результат графических функций

integer(2) XE, YE! XE,YE - размеры экрана в пикселях

INTEGER(2) status! целый результат графических функций

logical(2) finv /.true./! Ось у направлена снизу вверх

type(windowconfig) wc! структура параметров окна

!-----------------------------------------------------------

open(unit=fi,file='DZ_V6.txt')! открытие файла данных

read(fi,*) n! чтение количества узлов аппроксимации

do i=0,n-1

read(fi,*) X(i),Y(i)! чтение координат узлов

Enddo

close(fi)! закрытие файла

!-----------------------------------------------------------

! Автоматическая настройка конфигурации окна

data wc.numxpixels, wc.numypixels, wc.numtextcols, &;

wc.numtextrows, wc.numcolors, wc.fontsize / 6*-1 /

wc.title = "Интерполяционный многочлен Лагранжа"C

res = getwindowconfig(wc)! Читаем параметры видеоокна

XE = wc.numxpixels! numxpixels - число пикселей по оси х

YE = wc.numypixels! numypixels - число пикселей по оси у

status = RECTANGLE($GFILLINTERIOR, INT2(0), INT2(0), XE, YE)

status = setcolor(1_2)! цвет рамки

status = RECTANGLE($GBORDER, XE/4_2-20, YE/4_2-20, &;

3_2*XE/4_2+20, 3_2*YE/4_2+20)

call axis()! Рисуем оси координат

! Задание видового порта размером XE/2 * YE/2 в центре видеоокна

call setviewport(XE/4_2, YE/4_2, 3_2*XE/4_2, 3_2*YE/4_2)

! Оконная система координат (ОСК)

!-----------------------------------------------------------

Xmin=MinVal(X); Xmax=MaxVal(X)! поиск минимума и максимума Х

Ymin=MinVal(Y); Ymax=MaxVal(Y)! поиск минимума и максимума Y

XN=Xmin-D_X! левая граница Х графика

XK=Xmax+D_X! правая граница Х графика

YN=Ymin-D_Y! левая граница Y графика

YK=Ymax+D_Y! правая граница Y графика

status = setwindow(finv, XN, YN, XK, YK)

call curve()! Рисуем график

!-----------------------------------------------------------

ПРИЛОЖЕНИЕ 2

Секция CONTAINS с определением внутренних подпрограмм

!******************************************************************

subroutine axis()! Рисуем оси координат

Type(xycoord) xy

status = setcolor(2_2)! цвет осей координат

call moveto(int2(XE/4 - 10), int2(YE/2), xy)

status = lineto(3_2*XE/4_2 + 10_2, YE/2_2)! Ось х

call moveto(int2(XE/2), int2(YE/4 - 10), xy)

status = lineto(XE/2_2, 3_2*YE/4_2 + 10_2)! Ось y







Дата добавления: 2015-03-11; просмотров: 508. Нарушение авторских прав; Мы поможем в написании вашей работы!




Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


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


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

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

Характерные черты официально-делового стиля Наиболее характерными чертами официально-делового стиля являются: • лаконичность...

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

Функциональные обязанности медсестры отделения реанимации · Медсестра отделения реанимации обязана осуществлять лечебно-профилактический и гигиенический уход за пациентами...

Определение трудоемкости работ и затрат машинного времени На основании ведомости объемов работ по объекту и норм времени ГЭСН составляется ведомость подсчёта трудоёмкости, затрат машинного времени, потребности в конструкциях, изделиях и материалах (табл...

Гидравлический расчёт трубопроводов Пример 3.4. Вентиляционная труба d=0,1м (100 мм) имеет длину l=100 м. Определить давление, которое должен развивать вентилятор, если расход воздуха, подаваемый по трубе, . Давление на выходе . Местных сопротивлений по пути не имеется. Температура...

Studopedia.info - Студопедия - 2014-2026 год . (0.009 сек.) русская версия | украинская версия