當前位置:編程學習大全網 - 編程語言 - C語言編程: 把1、2、3、4、5、6、7、8、9這九個數組合成三個三位數。要求:每個數字僅用壹次

C語言編程: 把1、2、3、4、5、6、7、8、9這九個數組合成三個三位數。要求:每個數字僅用壹次

3位數的平方數就那麽多,從11^2到31^2窮舉判斷就好

/// <summary>

/// 輪詢3位平方數

/// </summary>

static void searchNum()

{

for (int i = 11; i <= 29; i++)

{

for (int j = i + 1; j <= 30; j++)

{

for (int k = j + 1; k <= 31; k++)

{

if (checkNum(i * i, j * j, k * k))

{

Console.WriteLine("符合解:" + (i * i) + "," + (j * j) + "," + (k * k));

}

}

}

}

}

/// <summary>

/// 判斷3個三位數是否為不同數字組成

/// </summary>

/// <param name="num1"></param>

/// <param name="num2"></param>

/// <param name="num3"></param>

/// <returns></returns>

static bool checkNum(int num1, int num2, int num3)

{

int[] list = new int[9];

list[0] = num1 / 100;

list[1] = (num1 % 100) / 10;

list[2] = num1 % 10;

list[3] = num2 / 100;

list[4] = (num2 % 100) / 10;

list[5] = num2 % 10;

list[6] = num3 / 100;

list[7] = (num3 % 100) / 10;

list[8] = num3 % 10;

for (int i = 0; i < list.Length - 1; i++)

{

for (int j = i + 1; j < list.Length; j++)

{

if (list[i] == list[j])

{

return false;

}

}

}

return true;

}

  • 上一篇:程序恢復課程
  • 下一篇:Qml表格視圖顯示單元格邊框。
  • copyright 2024編程學習大全網