-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'等于零......那么你就去。 –