static public void ShowResults(int[] nums, int[] arrayU, int[,] arrayD, String[] arrayU2, int sizeOfArray) { Console.WriteLine("\n\nU[1] = 0"); for (int i = 1; i < sizeOfArray; i++) { if (arrayU[i] < 0) { arrayU[i] = AllFuncs.MinOfRoads(i, sizeOfArray, arrayD, arrayU, nums, arrayU2); } Console.WriteLine("\nU[" + (i + 1) + "] = " + arrayU2[i - 1] + ") = " + arrayU[i] + " (" + nums[i] + ")"); } Console.WriteLine(); String str = ""; int[] road = new int[nums.Length]; for (int i = 0; i < nums.Length; road[i++] = 0) { ; } road[0] = nums[sizeOfArray - 1]; int v; for (v = 1; road[v - 1] - 1 > 0; v++) { road[v] = nums[road[v - 1] - 1]; } for (int i = v - 1; i >= 0; i--) { str += "U[" + road[i] + "] -> "; } Console.WriteLine("Amenakarch chanaparhy klini : "); Console.WriteLine(str + "U[" + sizeOfArray + "] = " + arrayU[sizeOfArray - 1]); }
static void Main() { int sizeOfArray, sizeOfLinks; int[] arrayU; int[] nums; int[,] arrayD; String[] arrayU2; AllFuncs.CreatingSizes(out sizeOfArray, out sizeOfLinks, out nums); AllFuncs.CreatingArrays(out arrayU, out arrayD, out arrayU2, sizeOfArray); AllFuncs.CreateArrayD(arrayD, sizeOfArray, sizeOfLinks); AllFuncs.ShowResults(nums, arrayU, arrayD, arrayU2, sizeOfArray); Console.ReadKey(); }