当前位置: 代码迷 >> Java相关 >> 一个JAVA题目
  详细解决方案

一个JAVA题目

热度:109   发布时间:2007-10-31 12:23:02.0
一个JAVA题目
设计一个JAVA程序,打印N阶螺旋矩阵:当N=3时,则
1 2 3
8 9 4
7 6 5
请大家帮我解决一下
搜索更多相关的解决方案: JAVA  打印  螺旋  矩阵  

----------------解决方案--------------------------------------------------------
n=4: 是不是这样的.
1 2 3 4
12 13 14 5
11 16 15 6
10 9 8 7
----------------解决方案--------------------------------------------------------

程序代码:

public class Ring{
public static int getNum(int n,int i,int j){
if(i==0) return j+1;
else if(i==n-1) return 3*n-j-2;
else if(j==0) return 4*n-i-3;
else if(j==n-1) return n+i;
else return 4*(n-1)+getNum(n-2,i-1,j-1);
}
public static void print(int n){
for(int i=0;i<n;i++){
for(int j=0;j<n;j++) System.out.printf(\"%7d\",getNum(n,i,j));
System.out.println();
}
}
public static void main(String[] args){
Scanner scan =new Scanner(System.in);
while(true){
System.out.println(\"input a integer(0 to exit):\");
int n =scan.nextInt();
if(n<=0) break;
print(n);
}
}
}


----------------解决方案--------------------------------------------------------
    是的
----------------解决方案--------------------------------------------------------

3楼的不行编译吧


----------------解决方案--------------------------------------------------------

My god看来我的数学不怎么样


----------------解决方案--------------------------------------------------------
回复:(flushtime)[code]public class Ring{public ...

有错误哎!!!
E:\练习\Ring.java:16: cannot find symbol
symbol : class Scanner
location: class Ring
Scanner scan =new Scanner(System.in);
^
E:\练习\Ring.java:16: cannot find symbol
symbol : class Scanner
location: class Ring
Scanner scan =new Scanner(System.in);
^
2 errors

Process completed.

[此贴子已经被作者于2007-10-31 22:21:59编辑过]


----------------解决方案--------------------------------------------------------

3楼的是正解。可能你们用的jdk版本原因。Scanner 是要在jdk1.5后才有。

你可以用BufferedReader来替代Scanner


----------------解决方案--------------------------------------------------------
回复:(zwfc)3楼的是正解。可能你们用的jdk版本原因...
我的是什么6。0的哎!老师弄课件上的啊!晕。。。
----------------解决方案--------------------------------------------------------

加个import java.util.Scanner;


----------------解决方案--------------------------------------------------------
  相关解决方案