Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Математические методы / Лабораторные / Лабораторная №1 Вариант №9

.docx
Скачиваний:
32
Добавлен:
25.05.2017
Размер:
104.26 Кб
Скачать

Міністерство освіти і науки, молоді та спорту України

Національний авіаційний університет

Кафедра комп’ютерних та інформаційних технологій

Лабораторна робота №1

З дисципліни: «Математичні методи дослідження операцій»

За темою : «Лінеаризація нелінійної цільової функції »

Варіант 9

Виконав:

Студент ТП-213 ІКІТ

Жежерун Д.Отчество

Київ 2017

Домашнее задание №1

по дисциплине “Математические методы исследования операций”.

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

В процессе выполнения домашнего задания необходимо:

- построить графики для заданного массива чисел;

- минимизировать количество кусочно-линейных участков исходной двумерной поверхности, обеспечивающих допустимую погрешность аппроксимации равную 1% от максимального значения исходной функции;

- рассчитать значение коэффициентов системы линейных уравнений, описывающих двумерную поверхность;

- свести коэффициенты линейных уравнений в таблицу;

- разработать алгоритм вычислительного процесса для определения численного значения функции по любому промежуточному значению ее аргументов;

- написать и отладить программу на любом алгоритмическом языке программирования высокого уровня;

- выполнить контрольные расчеты, подтверждающие правильность работы программы;

- оформить отчет по выполнению домашнего задания №1.

Вариант №9

Таблица R = fR (H, M),

М

Н, км

0

0,125

0,25

0,375

0,5

0,625

0,75

0,875

1,0

1,3.

0

6900

6050

5400

4750

4250

3800

3320

2850

2400

2200

2

6100

5500

4950

4400

4000

3600

3200

2830

2450

2000

4

5050

4750

4450

4130

3820

3550

3300

3050

2800

2700

6

4400

4170

3950

3720

3500

3300

3100

2900

2700

2600

8

3450

3350

3250

3150

3050

2950

2850

2730

2670

2500

10

2750

2750

2700

2650

2600

2570

2520

2450

2400

2200

12

2400

2350

2250

2200

2150

2050

2000

1930

1850

1600

Завдання

Таблица R = fR (H, M)

М

Н, км

0

0,125

0,25

0,375

0,5

0,625

0,75

0,875

1,0

1,3.

6

4400

4170

3950

3720

3500

3300

3100

2900

2700

2600

Встановлюємо межі для лінеаризації:

2600*0.05 = 130.

Розіб’ємо функцію на щонайменше проміжків, враховуючи похибку 5%.

Отримали три проміжки, рівняння яких наступні:

H1 = x/1*(2570-4530) + 4530

H2 = (x-1)/(1.3-1)*(2730-2570) + 2570

Напишемо програму, яка б розраховувала значення Y(x) для нашої функції, при аргументі, що постійно змінюється.

Код програми:

Java

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class lab1 {

public static void main(String[] args) throws IOException {

BufferedReader read = new BufferedReader(new InputStreamReader(System.in));

String input = "";

while (!(input.equalsIgnoreCase("выход"))) {

System.out.println("Введите x.\n\"Выход\" для выхода.");

input = read.readLine();

try {

float x = Float.parseFloat(input);

if (x >= 0 && x <= 1) {

System.out.println("H1 для данного х равняется " + ((x / 1) * (2570 - 4530) + 4530));

} else if (x > 1 && x <= 1.3) {

System.out.println("H2 для данного х равняется " + ((x - 1) / (1.3 - 1) * (2730 - 2570) + 2570));

} else System.out.println("Значение х не попало в границы.");

} catch (NumberFormatException e) {

System.out.println("Caught NumberFormatException. More Info: " + e.getLocalizedMessage());

}

}

}

}

Результат роботи:

Добавь скрин

Схема алгоритму

Висновки: Я розробив лінійну модель двухмірної функції, яка задана у вигляді таблиці, мотодами лінійного програмування. Збудував графіки заданого масиву чисел. Розробив алгоритм обчислювального процесу для визначення чисельного значення функції.