вывод на печать для каждого значения i, j - PullRequest
4 голосов
/ 24 декабря 2010

в приведенном ниже коде, который принадлежит алгоритму Флойда, как я могу напечатать вывод для каждого значения i, j? Например, самое короткое расстояние [0,0] = 2 и самое короткое [0,1] = 4 и т. Д. Теперь этопечатает кратчайшее расстояние от i до j: 3 (например)

private void button10_Click(object sender, EventArgs e)
{

  string ab = textBox11.Text;
  int matrixDimention = Convert.ToInt32(ab);
  int[,] intValues = new int[matrixDimention, matrixDimention];
  string[] splitValues = textBox9.Text.Split(',');

  for (int i = 0; i < splitValues.Length; i++)
    intValues[i / (matrixDimention), i % (matrixDimention)] = Convert.ToInt32(splitValues[i]);

  string displayString = "";

  for (int inner = 0; inner < intValues.GetLength(0); inner++)
  {
    for (int outer = 0; outer < intValues.GetLength(0); outer++)
        displayString += String.Format("{0}\t", intValues[inner, outer]);

    displayString += Environment.NewLine;
  }

  int n=matrixDimension

  MessageBox.Show("matrix"+strn+ "in" + strn + "is\n\n\n" +displayString);

  ////before this line i wrote the codes to get the numbers that user enter in textbox and put it in an 2d array
  for (int k = 0; k < n; k++)
    for (int i = 0; i < n; i++)
        for (int j = 0; j < n; j++)
        {
          if (intValues[i, j] > intValues[i, k] + intValues[k, j])
          {
                intValues[i, j] = intValues[i, k] + intValues[k, j];
                string str_intvalues = intValues[i, j].ToString();
                MessageBox.Show("Shortest Path from i to j is: " + str_intvalues);
          }
          else
          {
                string str_intvalues = intValues[i, j].ToString();
                MessageBox.Show("Shortest Path from i to j is: " + str_intvalues);

          }
       }
   }

1 Ответ

2 голосов
/ 25 декабря 2010

я отредактировал оба MessageBox.show () в этой форме и исправил:

MessageBox.Show("Shortest distance from" + i + " to " + j + " isnnt: " + str_intvalues);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...