본문 바로가기

Java 실전 적용

코딩은 실전이다 - (5) 이중 for문으로 구구단 출력하기

728x90


  [1]
    구구단 2단 ~ 9단 출력하기

 

	
	public static void main(String[] args) {
		//2단~9단까지 출력
		
		for(int i = 2; i <= 9; i++) {
			
			System.out.println("구구단:" + i+ "단");
			
			for(int j = 1; j<=9; j++) {
				
				System.out.println( i + " x " + j + " = " + i*j);
				//System.out.printf("%d x %d = %d\n", i, j, i*j);
			}
			
			System.out.println("----------------------------");
		}
		
	}

 

[ 문제 1의 정답 코드 ]

 


  1) 구구단 2~9단 출력하기

       public static void main( String[ ] args ) {

          for( int i = 2; i <= 9; i++ ) { // 이중 반복문 - (1)
               System.out.println( "구구단:" + i + "단" );

               for( int j = 1; j <= 9; j++ ) { // 이중 반복문 - (2)
                   System.out.println( i + " x " + j + " = " + i * j ); // prinfln을 활용한 출력방법
                    //System.out.printf( " %d x %d = %d\n ", i , j , i * j ); // prinf를 활용한 출력방법
          }




[2]
  구구단을 다음 그림과 같이 출력하기

[ 문제 2의 출력결과 ]

 

	public static void main(String[] args) {
	
		for(int i = 1; i<=9; i++) {
		
			for(int j = 1; j<=3; j++) {
				
				System.out.print(j + " x " + i + " = " + i*j + "\t" );
				
				}System.out.println();
				
			}
			System.out.println();
		
		for(int i = 1; i<=9; i++) {
		
			for(int j = 4; j<=6; j++) {
				
				System.out.print(j + " x " + i + " = " + i*j + "\t" );
				
				}System.out.println();
			
			}
			System.out.println();
			
		for(int i = 1; i<=9; i++) {
				
			for(int j = 7; j<=9; j++) {
					
				System.out.print(j + " x " + i + " = " + i*j + "\t" );
					
				}System.out.println();
        }

[ 문제 2에 대해 내가 작성한 코드 ]

 


   [ 내가 작성한 코드에 대한 설명 ]

      for ( int i = 1; i <= 9; i++ ) {      // 구구단을 가로로 출력하기 위해 3단씩 끊어서 코드 작성
           for ( int j = 1; j <= 3; j++ ) {
               System.out.print ( j + " x " + i + " = " + i*j + "\t" );
         } System.out.println( );
       } System.out.println();


        for ( int i = 1; i <= 9; i++ ) {
            for ( int j = 4; j <= 6; j++ ) {
               System.out.print( j + " x " + i + " = " + i * j + "\t" );
         } System.out.println( );
       } System.out.println();


       for( int i = 1; i <= 9; i++ ) {
           for( int j = 7; j <= 9; j++ ) {
               System.out.print( j + " x " + i + " = " + i * j + "\t" );
        } System.out.println();

 

[ 문제 2의 정답 코드 ]

 


   [ 정답 코드에 대한 설명 ]

       for ( int i = 1; i <= 9; i+=3 ){       // 세로를 기준으로 구구단 출력 (1단, 4단, 7단 먼저 출력)

           for( int j = 1; j <= 9; j++ ) {

              System.out.print( i + " x " + j + " = " + i * j + "\t");
              System.out.print( i+1 + " x " + j + " = " + ( i + 1 )*j +"\t");     // 가로 출력
              System.out.print( i+2 + " x " + j + " = " + ( i + 2 )*j );

              System.out.println();

         }
             System.out.println();
       }