FIF's 코딩팩토리

자바 기초 NCS교육과정(11)-배열 문제풀이 본문

Back-End/국비 NCS교과과정

자바 기초 NCS교육과정(11)-배열 문제풀이

FIF 2019. 7. 9. 16:20
반응형

이번 시간은 문제풀이 시간 입니다.

코드를 바로 보지 마시고, 충분한 시간을 가지고 고민해 보세요!

생각하는 시간이 많을수록 실력은 향상됩니다.

 

 

Prob_01.java

  num배열에서 최대값을 출력하는 프로그램을 구현하시오.
  [출력결과]
  최대값:95

 

 

 

 

 

 

 

 

 

 

 

public class Prob_01 {
	public static void main(String[] args) {

		int[] num = { 94, 85, 95, 88, 90 };
		int max = num[0];
		for (int i = 1; i < num.length; i++) {
			if (max < num[i]) {
				max = num[i];
			}
		}
		System.out.println("최대값:" + max);

	}// end main()

}// end class

Prob_02.java

  4행 4열 data배열에 가로 세로 합계를 구하는 프로그램을 구현하시오.
  [출력결과]
   1   2   3   6
   4   5   6  15
   7   8   9  24
  12  15  18  45

 

 

 

 

 

 

 

 

 

public class Prob_02 {

	public static void main(String[] args) {
		int[][] data = new int[4][4];
		int cnt = 1;
		// 여기를 구현하시오.
		for (int i = 0; i < 3; i++) {
			for (int j = 0; j < 3; j++) {
				data[i][j] = cnt++;
			}
		}
		//////////////////
		//연산
		for(int i=0; i<data.length-1;i++){
			for(int j=0; j<data[i].length-1; j++){
				data[i][3]+=data[i][j];
				data[3][j]+=data[i][j];				
			}
			data[3][3]+=data[i][3];
		}
		
		///////////////////////////////
		//출력
		for(int i=0; i<data.length;i++){
			for(int j=0; j<data[i].length;j++){
				System.out.printf("%4d",data[i][j]);
			}
			System.out.println();
		}
		

	}// end main()

}// end class

Prob_03.java

num배열의 합계와 평균을 구하는 프로그램을 구현하시오.
   출력결과
   합계: 243
   평균:  81

 

 

 

 

 

 

 

 

 

public class Prob_03 {

	public static void main(String[] args) {
       int num[]=new int[]{60,95,88};
       //여기를 구현하시오.
       int sum=0;
       for(int i=0;i<num.length;i++){
    	   sum+=num[i];
    	   
       }
       System.out.printf("합계:%4d\n",sum);
       System.out.printf("평균:%4d",sum/num.length);
	}//end main()

}//end class

Prob_04.java

  배열에 저장된 요소의 갯수만큼 문자를 출력하는 프로그램을 구현하시오.
  출력결과
  @@@
  @@
  @@@@@
  @@@@@@
  @

 

 

 

 

 

 

 

 

 

 

public class Prob_04 {

	public static void main(String[] args) {
		int num[]=new int[]{3,2,5,6,1};
		
		//여기를 구현하시오
		
		for(int i=0;i<num.length;i++){
			for(int j=1;j<=num[i];j++){
				System.out.print('@');
			}
			System.out.println();
		}
	}//end main()

}//end class

Prob_05.java

순위를 구하기
 [출력결과]
  
score      rank
===============
75          4
100         1
85          3
60          5
95          2

 

 

 

 

 

 

 

 

 

 

public class Prob_05 {
	public static void main(String[] args) {
		int[] sc = { 75, 100, 85, 60, 95 };
		int[] rank = { 1, 1, 1, 1, 1 };
		
		// 여기에 구현하세요./////////////////////
		for (int i = 0; i < sc.length; i++) {
			for (int j = 0; j < sc.length; j++) {
				if (sc[i] < sc[j])
					++rank[i];
			}
		}
       ///////////////////////////////////
		
		System.out.println("score  rank");
		System.out.println("===========");
		for (int i = 0; i < sc.length; i++) {
			System.out.println(sc[i] + "\t" + rank[i]);
		}
	}//end main()
}//end class

Prob_06.java

  [출력결과]
data[0]=1
data[1]=1
data[2]=3
data[3]=5
data[4]=9
data[5]=15
data[6]=25
data[7]=41
data[8]=67
data[9]=109

 

 

 

 

 

 

 

 

 

 

public class Prob_06 {

	public static void main(String[] args) {
		int[] data=new int[10];
		data[0]=1;
		data[1]=1;
		
		// 여기에 구현하세요.///////////////////////
		for(int i=2; i<data.length; i++) {
			data[i]=data[i-1]+data[i-2]+1;
		}		
		///////////////////////////////////////
		

		for(int i=0; i<data.length; i++)
			System.out.printf("data[%d]=%d\n", i,data[i]);
	}//end main()

}//end class

Prob_07.java

   [출력결과]
   1
   1   1
   1   2   1
   1   3   3   1
   1   4   6   4   1

 

 

 

 

 

 

 

 

 

public class Prob_07 {

	public static void main(String[] args) {
		int[][] data = new int[][] { { 0 }, { 0, 0 }, { 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0, 0 } };
		
		//여기에 구현하세요.////////////////////
		for (int i = 0; i < data.length; i++) {
			for (int j = 0; j < data[i].length; j++) {
				if (j == 0 || j == i)
					data[i][j] = 1;
				else
					data[i][j] = data[i - 1][j - 1] + data[i - 1][j];
			}
			System.out.println();
		}
		/////////////////////////////////////
		
		for (int i = 0; i < data.length; i++) {
			for (int j = 0; j < data[i].length; j++) {
				System.out.printf("%4d", data[i][j]);
			}
			System.out.println();
		}
	}// end main()

}// end class
반응형
Comments