public static void WriteVIKORResults(VIKOR vikor) { Console.WriteLine(); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine("Поетапний розв'язок задачi методом VIKOR"); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine(); Console.WriteLine("Нормалiзованi оцiнки альтернатив:"); PrintEvaluations(vikor.AlternativesCount, vikor.CriteriasCount, () => vikor.NormalizedEvaluations); Console.WriteLine(); Console.WriteLine("Зваженi нормалiзованi оцiнки альтернатив:"); PrintEvaluations(vikor.AlternativesCount, vikor.CriteriasCount, () => vikor.WeightedNormalizedEvaluations); Console.WriteLine(); Console.WriteLine($"S: "); Console.WriteLine($"{string.Join(Environment.NewLine, vikor.S.OrderByDescending(pair => pair.sValue).Select(elem => string.Format("(альтернатива: {0}, наближенiсть: {1:0.000})", elem.alternative, elem.sValue)))}"); Console.WriteLine(); Console.WriteLine($"R: "); Console.WriteLine($"{string.Join(Environment.NewLine, vikor.R.OrderByDescending(pair => pair.rValue).Select(elem => string.Format("(альтернатива: {0}, наближенiсть: {1:0.000})", elem.alternative, elem.rValue)))}"); Console.WriteLine(); Console.WriteLine($"Q: "); Console.WriteLine($"{string.Join(Environment.NewLine, vikor.Q.OrderByDescending(pair => pair.qValue).Select(elem => string.Format("(альтернатива: {0}, наближенiсть: {1:0.000})", elem.alternative, elem.qValue)))}"); Console.WriteLine(); Console.WriteLine($"C1: {string.Join(' ', vikor.C1)}"); Console.WriteLine(); Console.WriteLine($"C2: {string.Join(' ', vikor.C2)}"); Console.WriteLine(); Console.WriteLine($"Компромiсний розв'язок: {string.Join(' ', vikor.FinalResult)}"); Console.WriteLine(); }
static void Main(string[] args) { //TOPSIS topsis = ReadTOPSIS(); //WriteTOPSISResults(topsis); VIKOR vikor = ReadVIKOR(); //WriteVIKORResults(vikor); Task22(vikor); }
public static void Task22(VIKOR vikor) { for (double v = 0; v <= 1; v = Math.Round(v + 0.1, 1)) { vikor = new VIKOR(vikor.Evaluations, vCoef: v, vikor.Weights); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine($"Для значення v = {string.Format("{0:0.0}", v)}"); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine(); Console.WriteLine($"S: "); Console.WriteLine($"{string.Join(Environment.NewLine, vikor.S.OrderByDescending(pair => pair.sValue).Select(elem => string.Format("(альтернатива: {0}, наближенiсть: {1:0.000})", elem.alternative, elem.sValue)))}"); Console.WriteLine($"R: "); Console.WriteLine($"{string.Join(Environment.NewLine, vikor.R.OrderByDescending(pair => pair.rValue).Select(elem => string.Format("(альтернатива: {0}, наближенiсть: {1:0.000})", elem.alternative, elem.rValue)))}"); Console.WriteLine($"Q: "); Console.WriteLine($"{string.Join(Environment.NewLine, vikor.Q.OrderByDescending(pair => pair.qValue).Select(elem => string.Format("(альтернатива: {0}, наближенiсть: {1:0.000})", elem.alternative, elem.qValue)))}"); Console.WriteLine(); Console.WriteLine($"C1: {string.Join(' ', vikor.C1)}"); Console.WriteLine($"C2: {string.Join(' ', vikor.C2)}"); Console.WriteLine($"Компромiсний розв'язок: {string.Join(' ', vikor.FinalResult)}"); Console.WriteLine(); } }