標題:
TQC104 - 河洛之數
[打印本頁]
作者:
tonyh
時間:
2013-3-23 17:28
標題:
TQC104 - 河洛之數
本帖最後由 tonyh 於 2013-3-30 17:02 編輯
範圍 1~9 之不重覆亂數, 以3x3的矩陣排列, 不論橫向縱向及對角線加起來的和都是15.
public class tqc104
{
public static void main(String args[])
{
int n[]=new int[9];
while(true)
{
for(int i=0; i<9; i++)
{
n[i]=(int)(Math.random()*9)+1;
for(int j=0; j<i; j++)
{
if(n[i]==n[j])
{
i--;
break;
}
}
}
if(n[0]+n[1]+n[2]==15 &&
n[3]+n[4]+n[5]==15 &&
n[6]+n[7]+n[8]==15 &&
n[0]+n[3]+n[6]==15 &&
n[1]+n[4]+n[7]==15 &&
n[2]+n[5]+n[8]==15 &&
n[0]+n[4]+n[8]==15 &&
n[2]+n[4]+n[6]==15)
break;
}
System.out.println("答案為:");
System.out.println(n[0]+" "+n[1]+" "+n[2]);
System.out.println(n[3]+" "+n[4]+" "+n[5]);
System.out.println(n[6]+" "+n[7]+" "+n[8]);
System.out.println("不論橫向縱向及對角線加起來的和都是 15");
}
}
複製代碼
作者:
黃博鴻
時間:
2013-3-30 17:02
public class tqc104
{
public static void main(String args[])
{
System.out.println("答案為:");
int num[]=new int [9];
while(true)
{
for(int i=0; i<9; i++)
{
num[i]=(int)(Math.random()*9+1);
for(int j=0; j<i; j++)
{
if(num[i]==num[j])
{
i--;
break;
}
}
}
if(num[0]+num[1]+num[2]==15 && num[3]+num[4]+num[5]==15 &&
num[6]+num[7]+num[8]==15 && num[0]+num[3]+num[6]==15 &&
num[1]+num[4]+num[7]==15 && num[2]+num[5]+num[8]==15 &&
num[0]+num[4]+num[8]==15 && num[2]+num[4]+num[6]==15)
{
break;
}
}
System.out.println(num[0]+" "+num[1]+" "+num[2]);
System.out.println(num[3]+" "+num[4]+" "+num[5]);
System.out.println(num[6]+" "+num[7]+" "+num[8]);
System.out.print("不論橫向縱向及對角線加起來的和都是15");
}
}
複製代碼
作者:
t3742238
時間:
2013-3-30 17:06
public class tqc04
{
public static void main(String args[])
{
int n[]=new int[9];
while(true)
{
for(int i=0;i<9;i++)
{
n[i]=(int)(Math.random()*1+9);
for(int j=0;j<i;j++)
{
i--;
break;
}
}
if(n[1]+n[2]+n[3]==15&&n[4]+n[5]+n[6]==15
&&n[7]+n[8]+n[9]==15&&n[1]+n[4]+n[7]==15
&&n[2]+n[5]+n[8]==15&&n[3]+n[6]+n[9]==15
&&n[7]+n[5]+n[3]==15&&n[9]+n[5]+n[1]==15)
{
break;
}
}
System.out.println("答案為:");
System.out.println(num[0]+" "+num[1]+" "+num[3]);
System.out.println(num[4]+" "+num[5]+" "+num[6]);
System.out.println(num[7]+" "+num[8]+" "+num[9]);
}
}
複製代碼
作者:
劉漢文
時間:
2013-3-30 17:12
public class tqc104
{
public static void main(String args[])
{
int num[]=new int [9];
while(true)
{
for(int i=0; i<9; i++)
{
num[i]=(int)(Math.random()*9+1);
for(int j=0; j<i; j++)
{
if(num[i]==num[j])
{
i--;
break;
}
}
}
if(num[0]+num[1]+num[2]==15 &&
num[3]+num[4]+num[5]==15 &&
num[6]+num[7]+num[8]==15 &&
num[0]+num[3]+num[6]==15 &&
num[1]+num[4]+num[7]==15 &&
num[2]+num[5]+num[8]==15 &&
num[0]+num[4]+num[8]==15 &&
num[2]+num[4]+num[6]==15)
{
break;
}
}
System.out.println("答案為:");
System.out.println(num[0]+" "+num[1]+" "+num[2]);
System.out.println(num[3]+" "+num[4]+" "+num[5]);
System.out.println(num[6]+" "+num[7]+" "+num[8]);
System.out.println("不論橫向縱向及對角線加起來的和都是 15");
}
}
複製代碼
作者:
t2364705
時間:
2013-3-30 17:12
public class tqc104
{
public static void main(String args[])
{
System.out.println("答案為:");
int num[]=new int [9];
while(true)
{
for(int i=0; i<9; i++)
{
num[i]=(int)(Math.random()*9+1);
for(int j=0; j<i; j++)
{
if(num[i]==num[j])
{
i--;
break;
}
}
}
if(num[0]+num[1]+num[2]==15 && num[3]+num[4]+num[5]==15 &&
num[6]+num[7]+num[8]==15 && num[2]+num[4]+num[6]==15 &&
num[0]+num[4]+num[8]==15 && num[0]+num[3]+num[6]==15 &&
num[1]+num[4]+num[7]==15 && num[2]+num[5]+num[8]==15)
{
break;
}
}
System.out.println(num[0]+" "+num[1]+" "+num[2]);
System.out.println(num[3]+" "+num[4]+" "+num[5]);
System.out.println(num[6]+" "+num[7]+" "+num[8]);
System.out.print("不論橫向縱向或對角線加起來的和都是15");
}
}
複製代碼
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/)
Powered by Discuz! 7.2