C#.Помогите вставить кусок кода в мой код, для нахождения целевой функции
Даниил Поличев
Знаток
(430),
на голосовании
4 года назад
На фотках - мой основной код (с интернета взял, работает, но хз, что находит), который решает задачи симплекс-метода. Например, моя задача состоит в том, что необходимо составить дневной рацион, имеющий минимальную стоимость, в котором содержание каждого вида питательных веществ было бы не менее установленного предела.
Хз, что он находит в конце в выводе. Почему-то x1 = 3, а x2 = 0? Если кто знает, напишите, что он находит и почему x2 = 0. Но вопрос в другом.
Мне в этот основной код надо как-то вставить частичку кода с нахождением целевой функции, которую тоже нашел на том же сайте, откуда я код этот скачал. Вот сама частичка кода, находящая целевую функцию + комментарии самого создателя:
Перед вычислениями сохраните в отдельный массив значения коэффициентов при иксах: например в массив a.
После того, как массив result будет получен, найдём значение целевой функции F:
double F = 0;
for(int i = 0; i < result.Length; i++) { F += a[i] * result[i]; }
Допишите мне этот кодик в прогу вместе с выводом, типа "Целевая функция = ***" Заранее спасибо!
P.S Моя задача написать программу, реализующую составленный алгоритм по поиску минимально необходимого количество питательных веществ и минимизировать стоимость разработанной диеты. Что тогда x1 и x2? P.S. Добавил таблицу со своими данными
ССЫЛКА НА САЙТ С КОДОМ https://rextester.com/PANR55680
Моя система неравенств:
3x1 + 2x2 => 9
2x1 + 3x2 =>11
2x1 + x2 => 10
x1 + 2x2 => 8
F= 5x1 + 2x2 ---> min
Хз, что он находит в конце в выводе. Почему-то x1 = 3, а x2 = 0? Если кто знает, напишите, что он находит и почему x2 = 0. Но вопрос в другом.
Мне в этот основной код надо как-то вставить частичку кода с нахождением целевой функции, которую тоже нашел на том же сайте, откуда я код этот скачал. Вот сама частичка кода, находящая целевую функцию + комментарии самого создателя:
Перед вычислениями сохраните в отдельный массив значения коэффициентов при иксах: например в массив a.
После того, как массив result будет получен, найдём значение целевой функции F:
double F = 0;
for(int i = 0; i < result.Length; i++)
{
F += a[i] * result[i];
}
Допишите мне этот кодик в прогу вместе с выводом, типа "Целевая функция = ***"
Заранее спасибо!
P.S Моя задача написать программу, реализующую составленный алгоритм по поиску минимально необходимого количество питательных веществ и минимизировать стоимость разработанной диеты. Что тогда x1 и x2?
P.S. Добавил таблицу со своими данными