-6
我是C#的初學者,我想編寫模糊最大 - 最小組合的代碼。我用矩陣的二維數組。我遇到的問題是陣列的最後一行和一列是零。而其餘的數組元素根據模糊邏輯有正確的答案。最後一行和列必須與數組的其他元素具有相同的元素。爲什麼數組的最後一行和一列是零?
這裏是我的代碼
public string[,] Max(string[,] matrix1, string[,] matrix2, int order)
{
string[,] fuzzy = new string[order, order];
double max;
double min;
for (int i = 0; i < order; i++)
{
for (int j = 0; j < order; j++)
{
fuzzy[i, j] = "0.0000";
for (int k = 0; k < order; k++)
{
max = Convert.ToDouble(fuzzy[i, j]);
min = Math.Min(Convert.ToDouble(matrix1[i, k]), Convert.ToDouble(matrix2[k, j]));
//min = Math.Min(Convert.ToDouble(matrix1[i, j]), Convert.ToDouble(matrix2[i, j]));
max = Math.Max(min, min);
fuzzy[i, j] = Convert.ToString((String.Format("{0:0.0000}", max)));
}
}
}
return fuzzy;
}
這裏是結果
任何一個可以幫助我,爲什麼最後的行和列是零。 .thanx。
該數據是使用隨機類生成的隨機數據。
請從截圖張貼避免。特別是因爲它們是* code *的截圖。複製和粘貼將幫助我們回答您的問題。 – RandomStranger
https://ericlippert.com/2014/03/05/how-to-debug-small-programs/ – David
我猜它與語句'max = Math.Max(min,min);'它使用'min' *兩次*,使它相當於'max = min;'。如果'min'等於零......那麼你就去。 –