블로그 이미지
DovewinG
사랑합니다~                   

calendar

1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

Notice

2010. 9. 28. 17:19 도브의 프로그래밍/Java



public class Array2D {  // 2차원배열 클래스를 생성 하였습니다.
 
 /**
  * for 반복문을 통해 구구단을 만들어 볼꺼구요
  * 각 값들을 문자형태로 저장하여
  * 문자형 2차원 배열을 만들고 각 값을 넣어
  * 배열값을 출력 할것입니다.
  */
 
 public static void main(String[] args) { //main을 선언하여 시작합니다.
  // TODO Auto-generated method stub
  
   String arr[][] = new String[9][8]; //배열을 선언했습니다. *,=이 들어가기때문에 문자형태로 저장합니다.
   
   int x=0;       //이것은 1차원 배열 인덱스를 증가 시키기 위해 선언했습니다.
   for (int j=1;j <= 9;j++){   //우선 반복문을 돌립니다. 2차식부터 먼저 돌립니다.
    int y=0;    //2차원 배열인덱스 값을 증가 시키기 위해 선언했습니다.
    for (int i=2;i <= 9;i++){  //다시 반복문을 돌려 1차식을 돌립니다. 2차식부터 돌린 이유는
             //2*1=2 , 3*1=3 가로로 먼저 출력하고 줄내림을 하기 위해서입니다.
     
     int re;     //2*1=2 곱하기의 결과값을 저장할 변수입니다. result 앞자만 땄어요
     re = i * j;    // 1차식 * 2차식 값을 re에 저장합니다.
     String de = i+"*"+j+"="+re+" "; //de라는 문자형변수를 선언하면서 초기값으로 바로 화면에 출력할 형태를 넣습니다.
             //" " 이것은 각 단별로 구별을 하려고 띄어쓰기를 한건데 tab을 어떻게 쓰는지 몰라서 공백으로 두었습니다.
     arr[x][y] = de;   // 배열인덱스별로 de 값을 문자형태로 넣습니다.
           // 첫번째는 arr[0][0] = 2*1=2 가 문자형태로 들어가겠지요
           // 반복 후 두번째는 arr[0][1] = 3*1=3 이 들어갑니다.
     y++;     // 배열 2차원값을 증가시킵니다. 아마 반복이 끝나는 마지막에는 arr[0][8]이 되겠지만
           // 반복문 초기에 0으로 초기화 시키고 들어갑니다.
           
        
//     System.out.print(arr[a][b]);     
//     System.out.print(i+"*"+j+"="+re+" ");
//     break;
     
    }
    x++;      // 배열 1차원값을 증가시킵니다.
//    System.out.println();
   }
   for (int gugu=0;gugu < arr.length ;gugu++){ //2차원 배열을 반복문을 사용하여 빼 오는게 잘 안되네요
    System.out.println(arr[gugu]);
    
//   System.out.println(arr[1][0]); //각 값이 배열 공간마다 잘 들어갔는지 확인, 결과 이상무
   }
  }
 
}


 

posted by DovewinG