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

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

ПРИЛОЖЕНИЕ 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. Нарушение авторских прав; Мы поможем в написании вашей работы!




Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...


Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...


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


Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Йодометрия. Характеристика метода Метод йодометрии основан на ОВ-реакциях, связанных с превращением I2 в ионы I- и обратно...

Броматометрия и бромометрия Броматометрический метод основан на окислении вос­становителей броматом калия в кислой среде...

Метод Фольгарда (роданометрия или тиоцианатометрия) Метод Фольгарда основан на применении в качестве осадителя титрованного раствора, содержащего роданид-ионы SCN...

Неисправности автосцепки, с которыми запрещается постановка вагонов в поезд. Причины саморасцепов ЗАПРЕЩАЕТСЯ: постановка в поезда и следование в них вагонов, у которых автосцепное устройство имеет хотя бы одну из следующих неисправностей: - трещину в корпусе автосцепки, излом деталей механизма...

Понятие метода в психологии. Классификация методов психологии и их характеристика Метод – это путь, способ познания, посредством которого познается предмет науки (С...

ЛЕКАРСТВЕННЫЕ ФОРМЫ ДЛЯ ИНЪЕКЦИЙ К лекарственным формам для инъекций относятся водные, спиртовые и масляные растворы, суспензии, эмульсии, ново­галеновые препараты, жидкие органопрепараты и жидкие экс­тракты, а также порошки и таблетки для имплантации...

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