Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
И ИНТЕРНЕТ – РЕСУРСОВ
Алгоритм (материал из Википедии - свободной энциклопедии) - ru. wikipedia. org Delphi в задачах и примерах, Сборник программ и задач, 2008 г., Санкт – Петербург. , Современное программирование на языке Pascal, ЮФУ, 2014 г., Ростов-на-Дону – . Исследование информационных моделей, Учебное пособие для учащихся информационно-технологического, физико-математического и естественно-научного профилей, БИНОМ, 2007 г., Москва. , Информатика, Учебное пособие для 10-11 классов общеобразовательных учреждений, 2000 г., Москва.приложения
проекты из курса математики и экономики
приложение № 1
Тема: Построение графиков функций
Проект: “Построение графиков функций y=sinx и y=cosx”
Разработать проект построения графиков функций y = sinx и y = cosx с использованием графических методов на языке Delphi.
Алгоритм разработки проекта:
Ввести в начало программного кода в оператор uses модуль Math, который обеспечивает подключение математических функций.
Разместить на форме графическое поле Additional - Image1, в котором будет производиться построение графиков. Разместить на форме командную кнопку Button1 и создать событийную процедуру построения графиков с комментариями. [4]Исходная форма:

Рис. № 1. Проектирование объектов на форму
Событийная процедура:
Var //Раздел переменных
X, Y:real;
N:integer;
procedure TForm1.Button1Click(Sender: TObject);
begin
with Image1.Canvas do
begin
X:=0;
while X<500 do begin X:=X+0.1;
Y:=200-100*(Sin(X/20));
Pixels[Round(X),Round(Y)]:=clBlue;end; //Построение графика
begin
X:=0;
while X<500 do begin X:=X+0.1;
Y:=200-100*(Cos(X/20));
Pixels[Round(X),Round(Y)]:=clRed;end; //Построение графика
MoveTo(0,200);LineTo(500,200); //Линия для оси X
MoveTo(250,0);LineTo(250,500); //Линия для оси Y
//Шкала оси X
N:=0;
while N<500 do begin N:=N+100;
MoveTo(N,190); LineTo(N,210); //Линия для отрезков
//Единичные отрезки
TextOut(N,200,IntToStr(Round((N-250)/20)));end;
//Шкала оси Y
N:=0;
while N<400 do begin N:=N+100;
MoveTo(245,400-N);LineTo(255,400-N); //Линия для отрезков
//Единичные отрезки
TextOut(245,400-N, IntToStr(Round((N-200)/100)));end;
end;end;end;
end.
Запустить проект и щелкнуть по кнопке Графики функций. [4]Режим выполнения:

Рис. № 2. Построение графиков функций
Линия синего цвета, являющаяся графиком функции y = sin x, называется синусоидой. График функции y = cos x (линия красного цвета) – тоже синусоида, которая смещена вдоль оси X влево.
приложение № 2
Тема: Оптимизационное моделирование в экономике
Проект “Оптимизация получения заготовок”
В сфере управления сложными системами применяется оптимизационное моделирование, в процессе которого осуществляется поиск наиболее оптимального пути развития системы.
Критериями оптимальности могут быть различные параметры, например, в экономике можно стремиться к максимальному количеству выпускаемой продукции, а можно – к ее низкой себестоимости.
Развитие сложных систем зависит от множества факторов (параметров), следовательно, целевой параметр зависит от множества параметров. Выражением такой зависимости является целевая функция.
Цель исследования состоит в нахождении экстремума этой функции и определения значений параметров, при которых этот экстремум достигается. Если целевая функция нелинейная, то она имеет экстремумы, которые находятся определенным методами.
Однако чаще целевая функция линейна и, соответственно не имеет экстремумов. Задача поиска оптимального режима при линейной зависимости приобретает смысл только при наличии определенных ограничений на параметры. Если ограничения на параметры (система неравенств) также имеют линейный характер, то такие задачи являются задачами линейного программирования (т. е. термин “линейное программирование” в имитационном моделировании понимается как поиск экстремумов линейной функции, на которую наложены ограничения).
Содержательная постановка проблемы
Рассмотрим в качестве примера экономического моделирования поиск вариантов оптимального изготовления заготовок определенного размера: в ходе производственного процесса получают заготовки деталей 2-х типов A и B тремя различными способами.
Исходные данные представлены в таблице № 1.
Таблица № 1
Тип заготовки | Способы изготовления | ||
1-й | 2-й | 3-й | |
A | 10 | 3 | 8 |
B | 3 | 6 | 4 |
Необходимо выбрать оптимальное сочетание способов изготовления, для того чтобы получить 500 заготовок типа A и 300 заготовок типа B при расходовании наименьшего количества материала.
Алгоритм разработки проекта
Формальная модель:
Определяем:
параметрыX1 - количество материала для 1-го способа;
X2 - количество материала для 2-го способа
X3 - количество материала для 3-го способа
целевую функцию для минимизацииF = X1 + X2 + X3
равенства с учетом ограничений10*X1 + 3*X2 + 8*X3 = 500
3*X1 + 6*X2 + 4*X3 =300
По условию количество материала не может быть отрицательным, поэтому должны выполняться неравенства:
X1 >= 0; X2 >= 0; X3 >= 0
Таким образом, необходимо найти удовлетворяющие ограничениям значения параметров (X1, X2, X3), при которых целевая функция принимает минимальное значение.
Построение и исследование оптимизационной модели
Набор параметров X1, X2, X3 должен удовлетворять одновременно двум условиям, что на языке Delphi запишется следующим образом:
(10*X1 + 3*X2 + 8*X3 = 500) And (3*X1 + 6*X2 + 4*X3 = 300)
Для того, чтобы найти наборы значений параметров, удовлетворяющих данному условию, необходимо провести перебор всех возможных вариантов с помощью трех вложенных циклов. С помощью оператора условного перехода вывести значения набора параметров и значение целевой функции на форму.
Поместить на форму:- две метки Label1, Label1 для вывода пояснительного текста; три метки Label3, Label4, Label5 для вывода обозначений параметров; одну метку Label6 для вывода обозначения целевой функции; четыре текстовых окна Edit1, Edit2, Edit3, Edit4 для вывода значений параметров и целевой функции; командную кнопку Button1 для запуска проекта. [4]
Исходная форма:

Рис. № 3. Проектирование объектов на форму
По кнопке Оптимизировать создать событийную процедуру:Событийная процедура
Var //раздел переменных
X1, X2, X3, F: integer;
procedure TForm1.Button1Click(Sender: TObject);
begin
//поиск оптимизационного варианта
For X1:=0 To 100 Do begin
For X2:=0 To 100 Do begin
For X3:=0 To 100 Do begin
//условия ограничения
If (10*X1+3*X2+8*X3=500) And (3*X1+6*X2+4*X3=300)
Then begin
F:=X1+X2+X3; //определение значения целевой функции
//вывод результатов в текстовые окна
Edit1.Text:=IntToStr(X1);
Edit2.Text:=IntToStr(X2);
Edit3.Text:=IntToStr(X3);
Edit4.Text:=IntToStr(F);
end;
end; end;end;end;
end.
Запустить проект, щелкнув по кнопке Оптимизировать. В текстовые окна будет выведен набор параметров и значение целевой функции. [4]Режим выполнения:

Рис. № 4. Вывод значений параметров и целевой функции
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 |


