Реферат по предмету "Математика"


Вероятностные процессы и математическая статистика в автоматизированных системах

Министерствообразования и науки Украины
 
 
 
 
КафедраКИТ
 
“ВЕРОЯТНОСТНЫЕПРОЦЕССЫ И МАТЕМАТИЧЕСКАЯ СТАТИСТИКА В АВТОМАТИЗИРОВАННЫХ СИСТЕМАХ”
 
 
 
 
 
 
 
 
2008

РЕФЕРАТ
Пояснительная записка к расчетно-графическойработе: 29 стр., 9 рис., 1 прил., 5 источников.
Объект исследования – оптимальныйпредел прочности алюминиевых деформируемых сплавов при испытании на растяжение.
Метод исследования – применениематематико-статистических методов в автоматизированных системах, реализацияпрограмм статистической обработки эксперимента на ЭВМ.
Многие детали и конструкциииспытывают нагрузки на растяжение. При чем эти нагрузки часто являются основнымфактором, влияющим на выход из строя деталей и конструкций. Поэтому оченьважной и актуальной является задача нахождения оптимального состава материала,в течение длительного времени испытующего нагрузки на растяжение.
ДЕФОРМИРУЕМЫЙ АЛЮМИНИЕВЫЙ СПЛАВ, ЛИТИЙ,ТЕМПЕРАТУРА СТАРЕНИЯ, ВРЕМЯ СТАРЕНИЯ, МНОГОФАКТОРНЫЙ ЭКСПЕРИМЕНТ.

СОДЕРЖАНИЕ
Введение
1 Постановка задачи
2 Этапы планирования и статической обработки результатовэксперимента для построения модели 2-го порядка
2.1 Построение модели плана II порядка
2.2Кодирование факторов
2.3Составление план – матрицы
2.4Проверка воспроизводимости опытов
2.5Расчет коэффициентов регрессии
2.6Определение значимости коэффициентов
2.7Проверка адекватности модели
3 Выбор и описание методаусловной оптимизации
3.1Выбор метода условной оптимизации
3.2Описание метода условной оптимизации(Фиако-МакКормика)
4 Описание программы
4.1Общие сведения
4.2Функциональное назначение
4.3Описание логической структуры программы
4.4Используемые технические средства
4.5Вызов и загрузка
4.6Входные данные
4.7Выходные данные
5 Результаты обработки данныхэксперимента
6 Графики зависимости отклика
7 Кривые равного выхода
Заключение
Список использованных источников
Приложение

Введение
Развитие современной техникисвязано с созданием новых и постоянным совершенствованием существующихтехнологических процессов. Основой их разработки и оптимизации являетсяэксперимент. Заметное повышение эффективности экспериментальных исследований иинженерных разработок достигается использованием математических методовпланирования экспериментов. Использование математико-статистических методов припостановке задач. В процессе экспериментирования и при обработке полученныхданных существенно сокращает сроки решения, снижает затраты на исследования иповышает качество полученных результатов.
Встречающиеся на практике реальныезадачи весьма разнообразны. Достаточно грубо их можно разделить на три основныхзадачи:
1       Выявлениеколичественных зависимостей между параметрами процесса – задачи описания;
2       Определениеоптимальных условий протекания процесса – экстремальные задачи;
3       Выбороптимального состава многокомпонентных смесей.
Часто, приступая к изучениюкакого-либо процесса экспериментатор не имеет исчерпывающих сведений омеханизме процесса. Можно только указать параметры определяющие условияпротекания процесса, и, возможно требования к его результатам. Поставленнаяпроблема является задачей кибернетики. Действительно, если считать кибернетику«наукой, изучающей системы любой природы, способные воспринимать, хранить иперерабатывать информацию для целей оптимального управления» [1], то такуюсистему можно представить в виде черного ящика.
Черный ящик – объектисследования, имеющий (k+p) входов и m выходов.
/> />

X – управляемые параметры, Z –неуправляемые параметры.
Зависимость между выходнымипараметрами (откликом) и входными параметрами (факторами) называется функциейотклика.
Математическая запись функцииотклика представлена в виде формулы (1):
/>                           (1)
Этому уравнению в многомерномпространстве соответствует гипперповерхность, которая называется поверхностьюотклика, а само пространство – факторным пространством.
Эксперимент можно проводить поразному. В случае, когда исследователь наблюдает за каким-то неуправляемымпроцессом, не вмешиваясь в него, или выбирает экспериментальные точкиинтуитивно, на основании каких-то привходящих обстоятельств, экспериментсчитают пассивным. В настоящее время пассивный эксперимент считаетсянеэффективным.
Гораздо более продуктивнопроводится эксперимент, когда исследователь применяет статистические методы навсех этапах исследования, и, прежде всего, перед постановкой опытов,разрабатывая схему эксперимента, а также в процессе экспериментирования, приобработке результатов и после эксперимента, принимая решение о дальнейшихдействиях. Такой эксперимент считают активным, и он предполагает планированиеэксперимента.
Под планированием экспериментапонимают процедуру выбора числа и условий проведения опытов, необходимых идостаточных для решения поставленной задачи с требуемой точностью. Основныепреимущества активного эксперимента связаны с тем, что он позволяет:
1      Минимизироватьобщее число опытов;
2      Выбиратьчеткие логически обоснованные процедуры, последовательно выполняемыеэкспериментатором при проведении исследования;
3      Использоватьматематический аппарат, формализующий многие действия экспериментатора;
4      Одновременноварьировать всеми переменными и оптимально использовать факторное пространство;
5      Организоватьэксперимент таким образом, чтобы выполнялись многие исходные предпосылкирегрессионного анализа;
6      Получатьматематические модели, имеющие лучшие в некотором смысле свойства по сравнениюс моделями, построенными из пассивного эксперимента;
7      Рандомизироватьусловия опытов, то есть многочисленные мешающие факторы превратить в случайныевеличины;
8      Оцениватьэлемент неопределенности, связанный с экспериментом, что дает возможностьсопоставлять результаты, полученные разными исследователями [1].
Целью данной работы являетсяосвоение анализа плановых экспериментов и анализ данных, полученных привыполнении этих экспериментов.
1.Постановка задачи
Изучали механические свойстваодного из алюминиевых деформируемых сплавов в зависимости от содержания в немлития Х1 (основной уровень 1%, интервал варьирования 0,5%), температурыстарения Х2 (основной уровень 175 гр.С, интервал варьирования 25 гр.С) ивремени старения Х3 (основной уровень 4 ч., интервал варьирования 2 ч.). Вкачестве отклика выбран предел прочности сплавов, определяющийся при испытаниина растяжение (Y, кгс/кв.мм).
Задание на расчетно-графическуюработу:
1)       Найтиуравнение регрессии 2-го порядка и выполнить статистический анализ модели.
2)       Исследоватьмодель 2-го порядка на выпуклость и вогнутость методами дифференциальногоисчисления.
3)       Определитьтип поверхности отклика.
4)       Построитьграфики зависимости отклика от каждого из факторов Y=f(Xi) при фиксированныхзначениях остальных факторов (каждый рисунок должен содержать 3-4 кривые).
5)       Применяяодин из методов оптимизации, найти в исследованной области оптимальныесочетания факторов, обеспечивающие максимальное и минимальное значения отклика.
6)       Построитьдвумерные сечения поверхности отклика, соответствующие пересечению поверхностис плоскостями Xi=Ximax. Для этого в уравнение регрессии необходимо подставитьзначение этого фактора, и по полученным двухфакторным уравнениям рассчитать, апотом построить изолинии поверхности отклика (кривые равного выхода).
7)       Определитьтипы кривых равного выхода.
8)       Используядвумерные сечения поверхности, выполнить анализ влияния факторов в изученныхинтервалах их изменения на функцию отклика.
2.Этапы планирования и статической обработки результатов эксперимента дляпостроения модели 2-го порядка
 2.1 Построение модели плана II порядка
Для построения плана II порядкаможно использовать следующую модель:
/>                                                    (2)
Для этого необходимо провестиэксперимент так, чтобы каждый фактор варьировался на трех уровнях. Простейшимрешением этой задачи является план типа 3k. Реализация этого планадля k>3 требует большого числа опытов.
Для построения модели второгопорядка обычно используют ортогональный план первого порядка в качестве ядра,на котором достраивается план второго порядка, поэтому такие планы называютсякомпозиционными и соответствуют шаговой идее построения планов.
Для удобства работы с приведенноймоделью II порядка, с помощью обозначений (3) преобразуем ее к виду (2’):
/>(3)
/>                                                                                        (2’)
Задача заключается в том, чтобы порезультатам наблюдений определить значения коэффициентов bi,дисперсии и доверительные границы для них, а также определить их значимость.
Согласно МНК, для нахождениякоэффициентов bi, необходимо минимизировать функцию:
/>                                                (4)
где N – количество опытов;
xui –значение i-йпеременной в u-м опыте;
yu – значениеэкспериментальных y в u-м опыте;
Из условия минимизации функции ss,можно получить систему нормальных уравнений МНК:
/>                               (5)
Представив все результаты вматричной форме, получим:
/>,/>, />,                                               (6)
где    X – матрица условийэксперимента; Y – матрица результатов опытов; B – матрица коэффициентов.
Умножив транспонированную матрицу Xна матрицу X, получим матрицу системы нормальных уравнений, которая называетсяинформационной матрицей Фишера (матрицей моментов):
/>    (7)
Умножив транспонированную матрицу Xна матрицу Y, получим:
/>                                (8)
Используя данные обозначения,систему нормальных уравнений можно записать в матричной форме:
/>                                                                              (9)
Обозначая обратную матрицу моментовкак:
/>                                                         (10)
получим выражение для матрицыкоэффициентов:
/>                                          (11)
Все статистические свойства коэффициентовлинии регрессии определяется матрицей дисперсий ковариаций.
/>                       (12)
где    cov(bi, bj)– ковариации коэффициентов bi, и bj;
S2(bi) –дисперсия коэффициента bi;
S2(y) – дисперсия опыта.
Дисперсию опыта можно определить поформулам:
/>                                                                       (13)
/>                                                                                 (14)
где    m – количество параллельныхопытов.
Если параллельные опыты непроводятся, то для оценки дисперсии опыта ставятся эксперименты в центре плана.Тогда дисперсия определяется по формуле:
/>                                                        (15)
где    /> -количество опытов в центре плана.
Так как ядро плана ортогонально, тодля сохранения ортогональности композиционного плана необходимо при построенииматрицы планирования обеспечить условия:
/>
Величина /> зависитот фактора и от плеча d:
/>;
Для k=3 ядро =15, />=11/15=0.7303, d=1.2154 2.2 Кодирование факторов
Кодирование факторов используетсядля перевода натуральных факторов в безразмерные величины, чтобы построитьстандартную план – матрицу эксперимента.
Для перевода заполняется таблицакодирования факторов на двух уровнях. В качестве 0-го уровня обычно выбираетсяцентр интервала, в котором предполагается вести эксперимент.
Связь между кодовым и натуральнымзначениями фактора:
/>                                                                                    (16)
где    Xi – натуральноезначение фактора;
Xi0 –значение этогофактора на нулевом уровне;
dI– интервал варьирования факторов.
Составим таблицукодирования факторов, используя исходные данные.

Таблица 1 — Таблица кодированияфакторов
/> 2.3 Составление план –матрицы
В план – матрице должны бытьуказаны все возможные комбинации уровней факторов.
Таблица 2 – Расширенная план –матрица ортогонального плана
/> 2.4Проверка воспроизводимости опытов
При одинаковом числе параллельныхэтапов воспроизводимость опытов определяется по критерию Кохрена.
Для этого сначала считаютсядисперсии, характеризующие рассевание результатов на каждом u-м опыте.
/>
Проверка воспроизводимости опытовпоказана на рисунке 2.
/>
Рисунок 2- Воспроизводимость опытов 2.5Расчет коэффициентов регрессии
Поскольку план ортогонален, токоэффициенты регрессии будут определяться независимо друг от друга по формулам:
/>
Значения /> приядре плана />:
/>
Матрица дисперсий (ковариаций)коэффициентов регрессии рассчитывается по формуле (10).2.6 Определение значимости коэффициентов
Значимость коэффициентов регрессиипроверяют по критерию Стьюдента:
/>                                                            (17)
Дисперсия коэффициентовопределяется по формуле
/>
2.7 Проверка адекватности модели
Адекватность модели проверяется спомощью критерия Фишера:
/>                                                                       (17)
/>,                                                                           (18)
где    Sад2 –дисперсия адекватности, рассчитываемая по формуле (18);
Sy2 –дисперсия опыта;
a=0.05;
fад=N-l, число свободыдисперсии адекватности;
fy=N(m-1), число свободыдисперсии опыта;
l – количество значимыхкоэффициентов.
Если неравенство (17) выполняется,значит модель адекватна.
3.Выбор и описание метода условной оптимизации 3.1 Выбор метода условнойоптимизации
При решении поставленной задачиоптимизации был использован метод Фиако-МакКормика, который относится кнепрямым методам решения задач нелинейного программирования. Непрямые методыпреобразуют задачи с ограничениями в последовательность задач безусловнойоптимизации путем введения в целевую функцию штрафных функций. 3.2 Описание методаусловной оптимизации (Фиако-МакКормика)
Алгоритм метода Фиако-Маккормика
Этап 1.        Задание />,/>,/>.
Этап 2.        Нахождение методом прямого поиска минимума вспомогательной функции />, т.е. />.
Этап 3.        Проверка условий окончания поиска />.Если условие выполняется по переход на этап 6, иначе переход на этап 4.
Этап 4.        Уменьшение значения />, />, />.
Этап 5.        Увеличение />. Переход на этап 2.
Этап 6.        Оптимальное решение />, />.
4.Описание программы 4.1 Общие сведения
Обозначение программы — vpRgr.exe.
Наименование программы — “Расчетно– графическая работа № 1 по дисциплине “ВПиМСвАС”.
Программное обеспечение,необходимое для функционирования программы – Windows 95/98/NT/2000/ME.
Для написания программы былаиспользована интегрированная среда разработки приложений (IDE-IntegratedDevelopment Environment) – Delphi 6.0.4.2 Функциональное назначение
1         Назначение программы: определение оптимального состава алюминиевыхдеформируемых сплавов из условия получения максимального предела прочности прииспытаниях на растяжения
2         Классы решаемых задач: анализ и статистическая обработка полнофакторногоэксперимента с ортогональными планами второго порядка, в которую входятнахождение коэффициентов регрессии, оценка из значимости, проверка адекватностии воспроизводимости модели; поиск сочетаний факторов в кодовых и натуральныхпеременных; построения графиков отклика от изменения каждого параметра;построения кривых равного выхода при фиксировании одного из параметров.
3         Сведения о функциональных ограничениях на ее применение: даннаяпрограмма корректно функционирует при количестве параметров равном 3. Принебольшой модификации программы (замены названий факторов на новые) можнорешать общую задачу анализа и статистической обработки полнофакторногоэксперимента с ортогональными планами второго порядка.4.3 Описание логической структуры программы
При программировании с использованиемсредств визуального программирования (Delphi, Visual Basic и др.), приложениестановится событийно – управляемым, поэтому невозможно построить алгоритмпрограммы, как это имело место при традиционном программировании на Pascal,C++. В связи с этим наиболее полное представление о программе дает ееукрупненная структурная схема с описанием функций составных частей и связимежду ними.
Для того, чтобы разделить фазы“конструирования пользовательского интерфейса” и “непосредственногопрограммирования математической модели”, была использована блочно – модульнаяструктура. При этом каждый структурный элемент выносился в отдельный модуль,поддерживающий интерфейс с пользователем и между собой.
/>
Рисунок 1.-логическая связьпроцедур модуля

Описание структурных элементовпрограммы
type mas=array[1..3] of real;
var x:array[0..9,1..15] of real;//переменные
x2:array[1..3,1..15] ofreal;//квадраты переменных
x0,ix, //нулевые уровни и интервалыварьирования
xc, //значения координат центра
la, //канонические козффициенты
 m,l,n,ml,nl, //направляющиекосинусы углов поворота осей и их частные
xp1,xp2,xp3,xh,
xlocmax,xlocmin:mas; //координатылокальных максимума и минимума
y,ys:array[1..2,1..20] of real; //значенияфункции отклика
x12,x23,x13, //попарныепроизведения переменных
yc,ycs, //усредненная функцияотклика
s2u:array[1..15] of real; //дисперсииэксперементив
b, //коэффициенты модели
s2b, //дисперсии коэффициентов
db:array[0..9] of real; //пределызначимости коэффициентов
kk: d,xc2,
S2UMax, //максимальное значениедисперсии эксперемента
s2y, //дисперсия опыта
ycen, //функция отклика в центре
ylocmax,ylocmin:real;4.4 Используемые технические средства
Для оптимальной работы программынеобходима следующая конфигурация компьютера:
1)               процессор Intel Pentium III|| 500;
2)               ОЗУ 64 Мб;
3)               SVGA монитор (разрешение 800х600);
4)               свободное место на жестком диске не менее 2 Mb; 4.5 Вызов и загрузка
Для инсталляции программынеобходимо выполнить следующие шаги:
1)               убедиться в том, что компьютер, на который устанавливается система,отвечает всем требованиям, изложенным в разделе «Минимальные системныетребования»;
2)               убедиться в исправности накопителей на гибких магнитных носителях;
3)               перекопировать программу на жесткий диск компьютера;
4)               запустить файл Rgr.exe. 4.6 Входные данные
Входными данными к программеявляются:
1)               таблица кодирования (таблица 1);
2)               результаты экспериментов.
Входные данные заданы в программе. 4.7 Выходные данные
Выходными данными являются:
1)               дисперсии опытов;
2)               коэффициенты линии регресии;
3)               расчетные значения выходов;
4)               заключения о воспроизводимости опытов, значимости коэффициентов модели,адекватности модели;
5)               графики отклика при двух постоянных значениях факторов;
6)               кривые равного выхода при одном постоянном факторе;
7)               наилучшие и наихудшие сочетания факторов.
5.Результаты обработки данных эксперимента
В результате работы программы былиполучены следующие результаты:
/>
Расширенная план-матрица эксперимента
/>
Нахождение коэффициентов, проверкаих значимости и анализ полученной модели показано на рисунке 3.

/>
Рисунок 3 – Результат работа программы
6.графики зависимости отклика
Графики зависимости отклика откаждого из параметров представлены на рисунка 4-6.
/>
Рисунок 4 – зависимость отклика от изменения параметра x1. Зависимостьотклика от X1
y= 30,60 + 0,00*x1 + 2,97*x1^2 x2=0x3=0
y= 25,60 + 3,87*x1 + 2,97*x1^2 x2=1x3=0
y= 22,73 + 1,02*x1 + 2,97*x1^2 x2=1x3=1
/>
Рисунок 5 — зависимость отклика от изменения параметра x2. Зависимостьотклика от X2
y= 30,60 + -1,94*x2 + -3,05*x2^2 x1=0x3=0
y= 33,57 + 1,92*x2 + -3,05*x2^2 x1=1x3=0
y= 34,35 + -4,57*x2 + -3,05*x2^2 x1=1x3=1
/>
Рисунок 6 — зависимость отклика от изменения параметра x3. Зависимостьотклика от X3
y= 30,60 + 3,63*x3 + 0,00*x3^2 x1=0x2=0
y= 33,57 + 0,78*x3 + 0,00*x3^2 x1=1x2=0
y= 32,44 + -5,71*x3 + 0,00*x3^2 x1=1x2=1
7.кривые равного выхода
Графики зависимости отклика откаждого из параметров представлены на рисунках 7-9
/>
Рисунок 7 – Линии уровня отклика при фиксированном x3
/>
Рисунок 8 – Линии уровня отклика при фиксированном x2

/>
Рисунок 9 – Линии уровня отклика при фиксированном x1
Заключение
В ходе выполнения данной расчетно-графическойработы был определен оптимальный предел прочности алюминиевых деформируемых сплавов,определяющийся при испытании на растяжение.
Оптимальный параметры прочности:
Содержание Li(%) = 0.6
Температура старения(град.С)=25
Время старения(час.)=2
Содержание Li(%) = 0.6
Температура старения(град.С)=25
Время старения(час.)=2
Содержание Li(%) = 1.5
Температура старения(град.С)=200
Время старения(час.)=6
списокиспользованных источников
1)   Конспект лекций по дисциплине «ВП и МСАС».
2)   Конспект лекций по дисциплине «ТА и МОПЗ».
3)   Конспект лекций по дисциплине «Методы синтеза и оптимизации».
4)   Методические указания к лабораторным и расчетно-графической работе подисциплине «Вероятностные процессы и математическая статистика вавтоматизированных системах» / Сост.: Г.Б.Билык, О.В.Веремей,В.И.Кравченко. — ДГМА, 2006. — 24 с. (файл VPLAB).
5)   Применение математических методов и ЭВМ. Планирование и обработкарезультатов эксперимента / Под ред. А.Н. Останина. — Мн.: Выш. шк., 2005. — 218с.
приложение
 
Листинг модуля Metod.pas –подпрограммы общего назначения
type mas=array[1..3] of real;
var x:array[0..9,1..15] of real;
x2:array[1..3,1..15] of real;
x0,ix,xc,la,m,l,n,ml,nl,
xp1,xp2,xp3,xh,xlocmax,xlocmin:mas;
y,ys:array[1..2,1..20] of real;
x12,x23,x13,yc,ycs,s2u:array[1..15]of real;
b,s2b,db:array[0..9] of real;
kk:integer;
d,xc2,S2UMax,s2y,ycen,ylocmax,ylocmin:real;
{$R *.dfm}
function sx(l:integer):real;
var s:real; i:integer;
begin s:=0;
for i:=1 to 15 do
s:=s+sqr(x[l,i]);
sx:=s;
end;
function sxy(l:integer):real;
var s:real; i:integer;
begin s:=0;
for i:=1 to 15 do
s:=s+x[l,i]*yc[i];
sxy:=s;
end;
function f(l:integer):real;
var xx1,xx2,xx3:real;
begin
xx1:=x[1,l]; xx2:=x[2,l];xx3:=x[3,l];
f:=b[0]+b[1]*xx1+b[2]*xx2+b[3]*xx3
+b[4]*xx1*xx2+b[5]*xx1*xx3+b[6]*xx2*xx3+
b[7]*xx1*xx1+b[8]*xx2*xx2+b[9]*xx2*xx2;
end;
function fy(xx1,xx2,xx3:real):real;
begin
fy:=b[0]+b[1]*xx1+b[2]*xx2+b[3]*xx3
+b[4]*xx1*xx2+b[5]*xx1*xx3+b[6]*xx2*xx3+
b[7]*xx1*xx1+b[8]*xx2*xx2+b[9]*xx2*xx2;
end;
function dlambda(lam:real):real;
begindlambda:=(b[7]-lam)*((b[8]-lam)*(b[9]-lam)-0.25*b[6]*b[6])-
0.5*b[4]*(0.5*b[4]*(b[9]-lam)-0.25*b[5]*b[6])+
0.5*b[5]*(0.25*b[4]*b[6]-0.5*b[5]*(b[8]-lam))
end;
function findl(xa,xb:real):real;
var c:real;
begin
repeat
c:=(xa+xb)/2;
if dlambda(xa)*dlambda(c)
else xa:=c;
untilabs(dlambda(xa)-dlambda(xb))
findl:=(xa+xb)/2;
end;
procedure maximminim;
var yt:array[1..2,1..2,1..2] ofreal; i,j,w:integer;
minim,maxim:real;
begin minim:=fy(1,1,1);
maxim:=fy(1,1,1);
for i:=-10 to 10 do
for j:=-10 to 10 do
for w:=-10 to 10 do
begin iffy(i/10,j/10,w/10)>=maxim then begin
maxim:=fy(i/10,j/10,w/10); xlocmax[1]:=i/10;
xlocmax[2]:=j/10; xlocmax[3]:=w/10;end;
if fy(i/10,j/10,w/10)
minim:=fy(i/10,j/10,w/10);xlocmin[1]:=i/10;
xlocmin[2]:=j/10; xlocmin[3]:=w/10;end;
end;
ylocmin:=minim;
ylocmax:=maxim;
end;
procedure minmax;
type arr=array [1..3,1..3] of real;
var d,d1,d2,d3:arr; i:integer;bd:mas;
function delta(a:arr):real;
begindelta:=a[1,1]*(a[2,2]*a[3,3]-a[2,3]*a[3,2])-
a[1,2]*(a[2,1]*a[3,3]-a[2,3]*a[3,1])+
a[1,3]*(a[2,1]*a[3,2]-a[2,2]*a[3,1]);end;
begin d[1,1]:=2*b[7]; d[1,2]:=b[4];d[1,3]:=b[5];
d[2,1]:=b[4]; d[2,2]:=2*b[8];d[2,3]:=b[6];
d[3,1]:=b[5]; d[3,2]:=b[6];d[3,3]:=2*b[9];
bd[1]:=-b[1]; bd[2]:=-b[2];bd[3]:=-b[3];
for i:=1 to 3 do
begin d1[i,2]:=d[i,2];d1[i,3]:=d[i,3];
d2[i,1]:=d[i,1]; d2[i,3]:=d[i,3];
d3[i,2]:=d[i,2]; d3[i,1]:=d[i,1];
d1[i,1]:=bd[i];d2[i,2]:=bd[i];d3[i,3]:=bd[i];end;
xc[1]:=delta(d1)/delta(d);
xc[2]:=delta(d2)/delta(d);
xc[3]:=delta(d3)/delta(d);
ycen:=fy(xc[1],xc[2],xc[3]);
la[1]:=findl(-6,-2);
la[2]:=findl(-2,2);
la[3]:=findl(2,6);
for i:=1 to 3 do begin
ml[i]:=(b[6]*(b[7]-la[i])-0.5*b[4]*b[5])/(b[5]*(b[8]-la[i])-0.5*b[4]*b[6]);
nl[i]:=(-2*(b[7]-la[i])*(b[8]-la[i])+0.5*b[4]*b[4])/(b[5]*(b[8]-la[i])-0.5*b[4]*b[6]);
l[i]:=1/sqrt(1+sqr(ml[i])+sqr(nl[i]));
m[i]:=ml[i]*l[i];
n[i]:=nl[i]*l[i];
maximminim; end; end;
procedure TForm1.FormCreate(Sender:TObject);
var i,j:integer;
begin
x0[1]:=1; x0[2]:=175; x0[3]:=4;
ix[1]:=0.5; ix[2]:=25; ix[3]:=2;
y[1,1]:=24.99;y[1,2]:=22.61;y[1,3]:=26.99; y[1,4]:=39.61;
y[1,5]:=49.8; y[1,6]:=37.8; y[1,7]:=26.61;y[1,8]:=28.99;
y[1,9]:=35.8; y[1,10]:=37.61;y[1,11]:=27.99;y[1,12]:=24.18;
y[1,13]:=26.8;y[1,14]:=34.99;y[1,15]:=32.8;
y[2,1]:=25.51;y[2,2]:=23.89;y[2,3]:=26.89; y[2,4]:=39.51;
y[2,5]:=53.7; y[2,6]:=37.51;y[2,7]:=26.7; y[2,8]:=28.7;
y[2,9]:=38.89;y[2,10]:=37.32;y[2,11]:=33.51;y[2,12]:=28.7;
y[2,13]:=30.7;y[2,14]:=38.7;y[2,15]:=31.51;
xc2:=sqrt(8/15);d:=sqrt((15*xc2-8)/2);
ys:=y;
sgcod.Cells[0,1]:='Íóëåâîéóðîâåíü';
sgcod.Cells[0,2]:='Èíòåðâàëâàðüèðîâàíèÿ';
sgcod.Cells[0,3]:='Íèæíèéóðîâåíü';
sgcod.Cells[0,4]:='Âåðõíèéóðîâåíü';
sgcod.Cells[0,5]:='Êîäîâîåîáîçíà÷åíèå';
sgcod.Cells[1,0]:='Ñîäåðæ.Li,% ';
sgcod.Cells[2,0]:='T ñòàð.,ãð.Ñ ';
sgcod.Cells[3,0]:=' t ñòàð.,÷. ';
for i:=1 to 3 do
begin sgcod.Cells[i,1]:=' '+floattostr(x0[i]);
sgcod.Cells[i,2]:=' '+floattostr(ix[i]);
sgcod.Cells[i,3]:=' '+floattostr(x0[i]-ix[i]);
sgcod.Cells[i,4]:=' '+floattostr(x0[i]+ix[i]);
end;
sgcod.Cells[1,5]:=' x1';
sgcod.Cells[2,5]:=' x2';
sgcod.Cells[3,5]:=' x3';
sgplan.Cells[1,0]:=' x0';sgplan.Cells[2,0]:=' x1';
sgplan.Cells[3,0]:=' x2';sgplan.Cells[4,0]:=' x3';
sgplan.Cells[5,0]:='x1^2-'+floattostrf(xc2,fffixed,3,2);
sgplan.Cells[6,0]:='x2^2-'+floattostrf(xc2,fffixed,3,2);
sgplan.Cells[7,0]:='x3^2-'+floattostrf(xc2,fffixed,3,2);
sgplan.Cells[8,0]:='x1x2'; sgplan.Cells[9,0]:='x1x3';
sgplan.Cells[10,0]:='x2x3';sgplan.Cells[11,0]:=' y1';
sgplan.Cells[12,0]:=' y2';sgplan.Cells[13,0]:=' yc';
for i:=1 to 15 do begin
if i
if i mod 2 = 0 then x[1,i]:=1 elsex[1,i]:=-1;
if ((i+1) div 2) mod 2 = 0 thenx[2,i]:=1 else x[2,i]:=-1;
if ((i+3) div 4) mod 2 = 0 thenx[3,i]:=1 else x[3,i]:=-1;
end
else begin
for j:=1 to 3 do
if i=7+2*j then x[j,i]:=-d
else if i=8+2*j then x[j,i]:=d
else x[j,i]:=0;
end;
x12[i]:=x[1,i]*x[2,i];
x23[i]:=x[2,i]*x[3,i];
x13[i]:=x[1,i]*x[3,i];
x[4,i]:=x12[i]; x[5,i]:=x13[i];
x[6,i]:=x23[i];
x[0,i]:=1;
for j:=1 to 3 do
x2[j,i]:=sqr(x[j,i])-xc2;
x[7,i]:=x2[1,i];
x[8,i]:=x2[2,i];
x[9,i]:=x2[3,i];
end;
for i:=1 to 15 do
beginsgplan.Cells[0,i]:=inttostr(i);
sgplan.Cells[1,i]:=' 1';
for j:=1 to 3 do begin
sgplan.Cells[j+1,i]:=' '+floattostr(x[j,i]);
sgplan.Cells[j+4,i]:=' '+floattostrf(x2[j,i],fffixed,5,3);end;
sgplan.Cells[8,i]:=' '+floattostr(x12[i]);
sgplan.Cells[9,i]:=' '+floattostr(x13[i]);
sgplan.Cells[10,i]:=' '+floattostr(x23[i]);
end;
xh[1]:=-1; xh[2]:=-1; xh[3]:=-1;
kk:=0;
end;
procedureTForm1.Button2Click(Sender: TObject);
var i:integer;
begin
kk:=kk+1;
for i:=1 to 15 do
sgplan.Cells[10+kk,i]:=floattostr(ys[kk,i]);
if kk>=2 then beginbutton2.Enabled:=false;
for i:=1 to 15 do begin
yc[i]:=(y[1,i]+y[2,i])/2;
ycs[i]:=(y[1,i]+y[2,i])/2;
sgplan.Cells[13,i]:=floattostr(ycs[i]);
end;
end;
end;
procedureTForm1.Button1Click(Sender: TObject);
var k1,k2:integer; yk:real;
begin
randomize;
k1:=random(14)+1;
k2:=random(14)+1;
sgplan.Rows[16]:=sgplan.Rows[k1];
sgplan.Rows[k1]:=sgplan.Rows[k2];
sgplan.Rows[k2]:=sgplan.Rows[16];
yk:=ys[1,k1];
ys[1,k1]:=ys[1,k2];
ys[1,k2]:=yk;
yk:=ys[2,k1];
ys[2,k1]:=ys[2,k2];
ys[2,k2]:=yk;
end;
procedureTForm1.PageControl1Change(Sender: TObject);
var u,i,j,li:integer;sums,g,s2ad,fp,xx:real;
begin
if button2.Enabled=false then begin
sgvos.Cells[0,0]:=' u';
sgvos.Cells[1,0]:=' S2u';
sums:=0;
for u:=1 to 15 do
begins2u[u]:=sqr(yc[u]-y[1,u])+sqr(yc[u]-y[2,u]);
sgvos.Cells[1,u]:=floattostrf(s2u[u],fffixed,5,3);
sgvos.Cells[0,u]:=inttostr(u);
sums:=sums+s2u[u];
end;
s2umax:=s2u[1];
for i:=1 to 15 do
if s2u[i]>s2umax thens2umax:=s2u[i];
label5.Caption:=floattostrf(s2umax,fffixed,7,3);
g:=s2umax/sums;
label7.Caption:=floattostrf(g,fffixed,7,3);
label9.Caption:=floattostrf(0.47,fffixed,7,3);
if g
label10.Caption:=' Îïûòû'+#13+'âîñïðîèçâîäèìû';
s2y:=0;
for i:=1 to 15 do
s2y:=s2y+s2u[i]/15;
if b[0]=0 then begin
for i:=0 to 9 do
b[i]:=sxy(i)/sx(i);
sgb.Cells[i,1]:=floattostrf(b[i],fffixed,5,3);
for j:=1 to 3 do
b[0]:=b[0]-b[6+j]*xc2;
sgb.Cells[0,1]:=floattostrf(b[0],fffixed,5,3);
sgb.Cells[0,0]:='b0';sgb.Cells[1,0]:='b1';
sgb.Cells[2,0]:='b2';sgb.Cells[3,0]:='b3';
sgb.Cells[4,0]:='b12';sgb.Cells[5,0]:='b13';
sgb.Cells[6,0]:='b23';sgb.Cells[7,0]:='b11';
sgb.Cells[8,0]:='b22';sgb.Cells[9,0]:='b33';
for i:=0 to 9 do
begin s2b[i]:=s2y/(2*sx(i));
db[i]:=1.76*s2b[i];
sgsb.Cells[i+1,1]:=floattostrf(s2b[i],fffixed,7,3);
sgsb.Cells[i+1,2]:=floattostrf(db[i],fffixed,7,3);
end;
sgsb.Cells[1,0]:='b0';sgsb.Cells[2,0]:='b1';
sgsb.Cells[3,0]:='b2';sgsb.Cells[4,0]:='b3';
sgsb.Cells[5,0]:='b12';sgsb.Cells[6,0]:='b13';
sgsb.Cells[7,0]:='b23';sgsb.Cells[8,0]:='b11';
sgsb.Cells[9,0]:='b22';sgsb.Cells[10,0]:='b33';
sgsb.Cells[0,1]:='S2bi';sgsb.Cells[0,2]:='|bi|';
label16.Caption:=floattostrf(s2y,fffixed,7,3);
label18.Caption:=floattostrf(1.76,fffixed,7,3);
label21.Caption:='Íåçíà÷èìûåêîýôôèöèåíòû:';
li:=0;
for i:=0 to 9 do
if abs(b[i])
li:=li+1;
label21.Caption:=label21.Caption+' b['+
inttostr(i)+']='+floattostrf(b[i],fffixed,7,4);
b[i]:=0;
end;
s2ad:=0;
for i:=1 to 15 do
s2ad:=s2ad+sqr(yc[i]-f(i))+2/(li*15);
fp:=s2ad/s2y;
label12.Caption:=floattostrf(s2y,fffixed,7,3);
label20.Caption:=floattostrf(s2ad,fffixed,7,3);
label25.Caption:=floattostrf(2.96,fffixed,7,3);
label26.Caption:=floattostrf(fp,fffixed,7,3);
if fp
label27.Caption:=' Ìîäåëüàäåêâàòíà'
else
label27.Caption:=' Ìîäåëüíå àäåêâàòíà';
minmax;
memo2.lines.add('Êîîðäèíèòûöåíòðà ïîâåðõíîñòè');
memo2.lines.add(' xc1='+floattostrf(xc[1],fffixed,5,3)+
' xc2='+floattostrf(xc[2],fffixed,5,3)+
' xc3='+floattostrf(xc[3],fffixed,5,3)+
' yc='+floattostrf(ycen,fffixed,5,3));
if ((la[1]
((la[1]>0) and (la[2]>0) and(la[3]>0))
then memo2.lines.add(' Ïîâåðõíîñòü,èìåþùàÿ ýêñòðåìóì')
else memo2.lines.add(' Ïîâåðõíîñòüòèïà ìèíèìàêñà');
memo2.lines.add(' Ëîêàëüíûéýêñòðåìóì');
memo2.lines.add(' xmax1='+floattostrf(xlocmax[1],fffixed,5,1)+
' xmax2='+floattostrf(xlocmax[2],fffixed,5,1)+
' xmax3='+floattostrf(xlocmax[3],fffixed,5,1)+
' Ymax='+floattostrf(ylocmax,fffixed,5,4));
memo2.lines.add(' xmin1='+floattostrf(xlocmin[1],fffixed,5,1)+
' xmin2='+floattostrf(xlocmin[2],fffixed,5,1)+
' xmin3='+floattostrf(xlocmin[3],fffixed,5,1)+
' Ymin='+floattostrf(ylocmin,fffixed,5,4));
end; end
else label10.Caption:=' Îïûòûíå'+#13+'âîñïðîèçâîäèìû';
for i:=0 to 9 do
sgb.Cells[i,1]:=floattostrf(b[i],fffixed,5,3);
end; end;
procedureTForm1.RadioGroup1Click(Sender: TObject);
var xxx:real;
begin series1.Clear; series2.Clear;series3.Clear;
case radiogroup1.ItemIndex of
0: begin groupbox7.Visible:=true;
label28.Caption:='x2=';label29.Caption:='x3=';
label30.Caption:='x2=';label31.Caption:='x3=';
label32.Caption:='x2=';label33.Caption:='x3=';
label34.Caption:='x1=';
xp2[1]:=strtofloat(edit1.text);xp3[1]:=strtofloat(edit2.text);
xp2[2]:=strtofloat(edit3.text);xp3[2]:=strtofloat(edit4.text);
xp2[3]:=strtofloat(edit5.text);xp3[3]:=strtofloat(edit6.text);
xxx:=-1;
while xxx
beginseries1.AddXY(xxx,fy(xxx,xp2[1],xp3[1]));
series2.AddXY(xxx,fy(xxx,xp2[2],xp3[2]));
series3.AddXY(xxx,fy(xxx,xp2[3],xp3[3]));
xxx:=xxx+0.01; end;
memo3.Clear;
memo3.Lines.Add('Ëèíèèðåãðåññèè:');
memo3.Lines.Add('y='+floattostrf(fy(0,xp2[1],xp3[1]),fffixed,4,2)+
' +'+floattostrf(b[1]+b[4]*xp2[1]+b[5]*xp3[1],fffixed,4,2)+
'*x1 +'+floattostrf(b[7],fffixed,4,2)+'*x1^2');
memo3.Lines.Add('y='+floattostrf(fy(0,xp2[2],xp3[2]),fffixed,4,2)+
' +'+floattostrf(b[1]+b[4]*xp2[2]+b[5]*xp3[2],fffixed,4,2)+
'*x1 +'+floattostrf(b[7],fffixed,4,2)+'*x1^2');
memo3.Lines.Add('y='+floattostrf(fy(0,xp2[3],xp3[3]),fffixed,4,2)+
' +'+floattostrf(b[1]+b[4]*xp2[3]+b[5]*xp3[3],fffixed,4,2)+
'*x1 + '+floattostrf(b[7],fffixed,4,2)+'*x1^2');
end;
1: begin groupbox7.Visible:=true;
label28.Caption:='x1=';label29.Caption:='x3=';
label30.Caption:='x1=';label31.Caption:='x3=';
label32.Caption:='x1=';label33.Caption:='x3=';
label34.Caption:='x2=';
xp1[1]:=strtofloat(edit1.text);xp3[1]:=strtofloat(edit2.text);
xp1[2]:=strtofloat(edit3.text);xp3[2]:=strtofloat(edit4.text);
xp1[3]:=strtofloat(edit5.text);xp3[3]:=strtofloat(edit6.text);
xxx:=-1;
while xxx
beginseries1.AddXY(xxx,fy(xp1[1],xxx,xp3[1]));
series2.AddXY(xxx,fy(xp1[2],xxx,xp3[2]));
series3.AddXY(xxx,fy(xp1[3],xxx,xp3[3]));
xxx:=xxx+0.01;
end;
memo3.Clear;
memo3.Lines.Add('Ëèíèèðåãðåññèè:');
memo3.Lines.Add('y='+floattostrf(fy(xp1[1],0,xp3[1]),fffixed,4,2)+
' +'+floattostrf(b[2]+b[4]*xp1[1]+b[6]*xp3[1],fffixed,4,2)+
'*x2 +'+floattostrf(b[8],fffixed,4,2)+'*x2^2');
memo3.Lines.Add('y='+floattostrf(fy(xp1[2],0,xp3[2]),fffixed,4,2)+
' +'+floattostrf(b[2]+b[4]*xp1[2]+b[6]*xp3[2],fffixed,4,2)+
'*x2 + '+floattostrf(b[8],fffixed,4,2)+'*x2^2');
memo3.Lines.Add('y='+floattostrf(fy(xp1[3],0,xp3[3]),fffixed,4,2)+
' +'+floattostrf(b[2]+b[4]*xp1[3]+b[6]*xp3[3],fffixed,4,2)+
'*x2 +'+floattostrf(b[8],fffixed,4,2)+'*x2^2');
end;
2: begin groupbox7.Visible:=true;
label28.Caption:='x1=';label29.Caption:='x2=';
label30.Caption:='x1=';label31.Caption:='x2=';
label32.Caption:='x1=';label33.Caption:='x2=';
label34.Caption:='x3=';
xp1[1]:=strtofloat(edit1.text);xp2[1]:=strtofloat(edit2.text);
xp1[2]:=strtofloat(edit3.text);xp2[2]:=strtofloat(edit4.text);
xp1[3]:=strtofloat(edit5.text);xp2[3]:=strtofloat(edit6.text);
xxx:=-1;
while xxx
beginseries1.AddXY(xxx,fy(xp1[1],xp2[1],xxx));
series2.AddXY(xxx,fy(xp1[2],xp2[2],xxx));
series3.AddXY(xxx,fy(xp1[3],xp2[3],xxx));
xxx:=xxx+0.01; end;
memo3.Clear;
memo3.Lines.Add('Ëèíèèðåãðåññèè:');
memo3.Lines.Add('y='+floattostrf(fy(xp1[1],xp2[1],0),fffixed,4,2)+
'+'+floattostrf(b[3]+b[5]*xp1[1]+b[6]*xp2[1],fffixed,4,2)+
x3 +'+floattostrf(b[9],fffixed,4,2)+'*x3^2');
memo3.Lines.Add('y='+floattostrf(fy(xp1[2],xp2[2],0),fffixed,4,2)+
+'+floattostrf(b[3]+b[5]*xp1[2]+b[6]*xp2[2],fffixed,4,2)+
x3 +'+floattostrf(b[9],fffixed,4,2)+'*x3^2');
memo3.Lines.Add('y='+floattostrf(fy(xp1[3],xp2[3],0),fffixed,4,2)+
' + '+floattostrf(b[3]+b[5]*xp1[3]+b[6]*xp2[3],fffixed,4,2)+
'*x3 +'+floattostrf(b[9],fffixed,4,2)+'*x3^2'); end;
else groupbox7.Visible:=false;
end;
end;
procedureTForm1.RadioGroup2Click(Sender: TObject);
var px,yy,ymax,ymin:real;
xxx,xmax,xmin:mas;
begin series4.Clear; series5.Clear;series6.Clear;
px:=strtofloat(edit13.Text);
case radiogroup2.ItemIndex of
0:begin yy:=10; ymax:=0; ymin:=48;
label40.Caption:='x3=';
label41.Caption:='x1min=';label42.Caption:='x2min=';
label44.Caption:='x1max=';label45.Caption:='x2max=';
while yy
begin xxx[1]:=-1;
while xxx[1]
begin xxx[2]:=-1;
while xxx[2]
begin ifabs(fy(xxx[1],xxx[2],px)-yy)
then series4.AddXY(xxx[1],xxx[2]);
if fy(xxx[1],xxx[2],px)
begin xmin[1]:=xxx[1];xmin[2]:=xxx[2];
ymin:=fy(xxx[1],xxx[2],px);end;
if fy(xxx[1],xxx[2],px)>=ymaxthen
begin xmax[1]:=xxx[1];xmax[2]:=xxx[2];
ymax:=fy(xxx[1],xxx[2],px);end;
xxx[2]:=xxx[2]+0.005; end;
xxx[1]:=xxx[1]+0.005; end;
yy:=yy+1.5; end;
series5.AddXY(xmax[1],xmax[2]);series6.AddXY(xmin[1],xmin[2]);
edit14.Text:=floattostrf(xmin[1],fffixed,5,2);
edit15.Text:=floattostrf(xmin[2],fffixed,5,2);
edit16.Text:=floattostrf(ymin,fffixed,5,2);
edit17.Text:=floattostrf(xmax[1],fffixed,5,2);
edit18.Text:=floattostrf(xmax[2],fffixed,5,2);
edit19.Text:=floattostrf(ymax,fffixed,5,2);end;
1: begin yy:=10; ymax:=0; ymin:=48;
label40.Caption:='x2=';
label41.Caption:='x1min=';label42.Caption:='x3min=';
label44.Caption:='x1max=';label45.Caption:='x3max=';
while yy
begin xxx[1]:=-1;
while xxx[1]
begin xxx[3]:=-1;
while xxx[3]
begin ifabs(fy(xxx[1],px,xxx[3])-yy)
then series4.AddXY(xxx[1],xxx[3]);
if fy(xxx[1],px,xxx[3])
begin xmin[1]:=xxx[1];xmin[3]:=xxx[3];
ymin:=fy(xxx[1],px,xxx[3]);end;
if fy(xxx[1],px,xxx[3])>=ymaxthen
begin xmax[1]:=xxx[1];xmax[3]:=xxx[3];
ymax:=fy(xxx[1],px,xxx[3]);end;
xxx[3]:=xxx[3]+0.005; end;
xxx[1]:=xxx[1]+0.005; end;
yy:=yy+1.5; end;
series5.AddXY(xmax[1],xmax[3]);series6.AddXY(xmin[1],xmin[3]);
edit14.Text:=floattostrf(xmin[1],fffixed,5,2);
edit15.Text:=floattostrf(xmin[3],fffixed,5,2);
edit16.Text:=floattostrf(ymin,fffixed,5,2);
edit17.Text:=floattostrf(xmax[1],fffixed,5,2);
edit18.Text:=floattostrf(xmax[3],fffixed,5,2);
edit19.Text:=floattostrf(ymax,fffixed,5,2);end;
2: begin yy:=10;
ymax:=0; ymin:=48;
label40.Caption:='x1=';
label41.Caption:='x2min=';label42.Caption:='x3min=';
label44.Caption:='x2max=';label45.Caption:='x3max=';
while yy
begin xxx[2]:=-1; whilexxx[2]
while xxx[3]
then series4.AddXY(xxx[2],xxx[3]);
if fy(px,xxx[2],xxx[3])
beginxmin[3]:=xxx[3];xmin[2]:=xxx[2];
ymin:=fy(px,xxx[2],xxx[3]);end;
if fy(px,xxx[2],xxx[3])>=ymaxthen
begin xmax[3]:=xxx[3];xmax[2]:=xxx[2];
ymax:=fy(px,xxx[2],xxx[3]);end;
xxx[3]:=xxx[3]+0.005; end;
xxx[2]:=xxx[2]+0.005; end;
yy:=yy+1.5; end;
series5.AddXY(xmax[2],xmax[3]);series6.AddXY(xmin[2],xmin[3]);
edit14.Text:=floattostrf(xmin[2],fffixed,5,2);
edit15.Text:=floattostrf(xmin[3],fffixed,5,2);
edit16.Text:=floattostrf(ymin,fffixed,5,2);
edit17.Text:=floattostrf(xmax[2],fffixed,5,2);
edit18.Text:=floattostrf(xmax[3],fffixed,5,2);
edit19.Text:=floattostrf(ymax,fffixed,5,2);
end; end;end;
procedure TForm1.Button3Click(Sender:TObject);
var i:integer; max,min:mas;
maxy,miny:real;
begin series7.Clear;
for i:=1 to 3 do
xh[i]:=xh[i]+0.02;
max[1]:=series1.MaxYValue;max[2]:=series2.MaxYValue;
max[3]:=series3.MaxYValue;min[1]:=series1.MinYValue;
min[2]:=series2.MinYValue;min[3]:=series3.MinYValue;
maxy:=max[1]; miny:=min[1];
for i:=2 to 3 do begin
if max[i]>=maxy thenmaxy:=max[i];
if min[i]
end;
case radiogroup1.ItemIndex of
0: begin
edit9.Text:=floattostr(xh[1]);
edit10.Text:=floattostr(fy(xh[1],strtofloat(edit1.Text),strtofloat(edit2.Text)));
edit11.Text:=floattostr(fy(xh[1],strtofloat(edit3.Text),strtofloat(edit4.Text)));
edit12.Text:=floattostr(fy(xh[1],strtofloat(edit5.Text),strtofloat(edit6.Text)));
series7.AddXY(xh[1],maxy);series7.AddXY(xh[1],miny); end;
1: begin
series7.AddXY(xh[2],maxy);series7.AddXY(xh[2],miny);
edit9.Text:=floattostr(xh[2]);
edit10.Text:=floattostr(fy(strtofloat(edit1.Text),xh[2],strtofloat(edit2.Text)));
edit11.Text:=floattostr(fy(strtofloat(edit3.Text),xh[2],strtofloat(edit4.Text)));
edit12.Text:=floattostr(fy(strtofloat(edit5.Text),xh[2],strtofloat(edit6.Text)))end;
2: begin series7.AddXY(xh[3],maxy);series7.AddXY(xh[3],miny);
edit9.Text:=floattostr(xh[3]);
edit10.Text:=floattostr(fy(strtofloat(edit1.Text),strtofloat(edit2.Text),xh[3]));
edit11.Text:=floattostr(fy(strtofloat(edit3.Text),strtofloat(edit4.Text),xh[3]));
edit12.Text:=floattostr(fy(strtofloat(edit5.Text),strtofloat(edit6.Text),xh[3]))
end; end;end;
procedure TForm1.Button4Click(Sender:TObject);
var i:integer; max,min:mas;
maxy,miny:real;
begin series7.Clear;
for i:=1 to 3 do
xh[i]:=xh[i]-0.02;
max[1]:=series1.MaxYValue;max[2]:=series2.MaxYValue;
max[3]:=series3.MaxYValue;min[1]:=series1.MinYValue;
min[2]:=series2.MinYValue;min[3]:=series3.MinYValue;
maxy:=max[1]; miny:=min[1];
for i:=2 to 3 do begin
if max[i]>=maxy thenmaxy:=max[i];
if min[i]
case radiogroup1.ItemIndex of
0: beginedit9.Text:=floattostr(xh[1]);
edit10.Text:=floattostr(fy(xh[1],strtofloat(edit1.Text),strtofloat(edit2.Text)));
edit11.Text:=floattostr(fy(xh[1],strtofloat(edit3.Text),strtofloat(edit4.Text)));
edit12.Text:=floattostr(fy(xh[1],strtofloat(edit5.Text),strtofloat(edit6.Text)));
series7.AddXY(xh[1],maxy);series7.AddXY(xh[1],miny); end;
1: begin series7.AddXY(xh[2],maxy);series7.AddXY(xh[2],miny);
edit9.Text:=floattostr(xh[2]);
edit10.Text:=floattostr(fy(strtofloat(edit1.Text),xh[2],strtofloat(edit2.Text)));
edit11.Text:=floattostr(fy(strtofloat(edit3.Text),xh[2],strtofloat(edit4.Text)));
edit12.Text:=floattostr(fy(strtofloat(edit5.Text),xh[2],strtofloat(edit6.Text)))end;
2: begin series7.AddXY(xh[3],maxy);series7.AddXY(xh[3],miny);
edit9.Text:=floattostr(xh[3]);
edit10.Text:=floattostr(fy(strtofloat(edit1.Text),strtofloat(edit2.Text),xh[3]));
edit11.Text:=floattostr(fy(strtofloat(edit3.Text),strtofloat(edit4.Text),xh[3]));
edit12.Text:=floattostr(fy(strtofloat(edit5.Text),strtofloat(edit6.Text),xh[3]))end; end;end;
end.


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

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат Формы и методы финансово-экономического контроля
Реферат Тепловой расчет двигателя внутреннего сгорания
Реферат Темы по французскому языку
Реферат Політика суцільної колективізації
Реферат Congenital Heart Defects And Diabetes Essay Research
Реферат Школа участника выставки
Реферат «Инфляция: история, причины, последствия»
Реферат Jean Rhys I Used To Live Here
Реферат Совершенствование финансовой деятельности организации в современных условиях на примере РУП
Реферат Технологическое проектирование производственной зоны технического обслуживания
Реферат Квантование сообщений Ошибки квантования Энтропия источника сообщений
Реферат Строение и физиологические особенности рыб
Реферат История развития ЭВМ 2 2
Реферат Становление молодого советского государства - достижения и ошибки
Реферат Абвяшчэнне дзяржаўнага суверэнітэту РБ