調用參考元件 (Hello)

應用情境

    • 有 n 個決策因子,求取權重值。
    • 決策因子兩兩互比,給定大小方向與其程度值。
    • 程度值依慣例,可為:5/7/9 等。
    • 右表為 4 因子輸入,5 尺度之範例,
    • 負值表示行因子比列因子小。

程式館

比序資料

程式碼

using System; using System.Collections.Generic; namespace Hello { class MainClass { private Emprogria.DecisionPriority myDecision = null; public MainClass() { this.myDecision = new Emprogria.DecisionPriority (maxVale:5); } public void InputData() { List<Emprogria.InputData> myData = new List<Emprogria.InputData> (); Emprogria.InputData myElement; myElement.startNode = "F1"; myElement.endNode = "F2"; myElement.compare = Emprogria.nodeCompare.greater; myElement.weight = 2; myData.Add (myElement); myElement.startNode = "F1"; myElement.endNode = "F3"; myElement.compare = Emprogria.nodeCompare.less; myElement.weight = 3; myData.Add (myElement); myElement.startNode = "F1"; myElement.endNode = "F4"; myElement.compare = Emprogria.nodeCompare.greater; myElement.weight = 5; myData.Add (myElement); myElement.startNode = "F2"; myElement.endNode = "F3"; myElement.compare = Emprogria.nodeCompare.greater; myElement.weight = 3; myData.Add (myElement); myElement.startNode = "F2"; myElement.endNode = "F4"; myElement.compare = Emprogria.nodeCompare.less; myElement.weight = 2; myData.Add (myElement); myElement.startNode = "F3"; myElement.endNode = "F4"; myElement.compare = Emprogria.nodeCompare.greater; myElement.weight = 4; myData.Add (myElement); this.myDecision.InputData (myData, scale:2); } public void printDecision() { SortedDictionary<String, double> myDecisionList = this.myDecision.GetDecisionList (); foreach (KeyValuePair<string, double> p in myDecisionList) { Console.WriteLine(String.Format("{0}\t{1:0.00}", p.Key, p.Value)); } } public static void Main (string[] args) { MainClass myTask = new MainClass (); myTask.InputData (); myTask.printDecision (); } } }