티스토리 뷰

자바 프로그래밍을 기초 1, 2, 3단계와 객체지향 1, 2, 3단계로 나누어 레벨테스트할 수 있는 예제를 제시하려고 합니다.각 단계에 대해 연습문제를 이용하여 다음과 같이 스스로 실력을 테스트해 보실 수 있습니다.

  1. 완성 -  모든 문제를 3시간 이내에 혼자 힘으로 풀 수 있다 (다음 단계로 넘어가세요)
  2. 해결가능 - 모든 문제를 책이나 자료를 찾아보며 하루 안에 혼자 힘으로 풀 수 있다 (다음 단계로 넘어가세요)
  3. 도전가능 - 모든 문제를 바로 해결할 방법이 떠오르지는 않으나 책이나 자료를 찾아보며 설명을 조금 듣거나 약간의 도움을 받으면 풀 수 있다 (추가 연습이 필요)
  4. 처음처럼 - 이 단계의 문제를 어떻게 해결해야 할지 떠오르지 않고 다른 사람이 짠 코드를 보면 이해는 할 수 있다. 자바를 처음 배우는 단계부터 시작해서 프로그래밍의 기본 개념을 익혀야 합니다.
  5. 초보과정 - 이 단계의 문제에 대해 답을 봐도 이해가 안되는 단계라면 프로그래밍을 처음 단계부터 새로 시작해야 합니다.
기초 2단계
printf를 이용해 형식에 맞게 출력할 수 있고 복잡한 for 루프를 이용할 수 있다.
배열을 이용하여 숫자를 다루는 문제를 해결할 수 있고 간단한 함수를 작성할 수 있다.

[문제 기초 2-1] 구구단 출력하기

for 루프를 이용해서 2~5단까지의 구구단을 다음과 같이 출력해 보세요. printf를 이용해 각 숫자는 4칸 오른쪽 줄맞춤으로 하고 x와 =의 앞에 빈칸 하나, 단과 단 사이는 빈칸 두 개를 추가한다.

   2 x   1 =   2     3 x   1 =   3     4 x   1 =   4     5 x   1 =   5
   2 x   2 =   4     3 x   2 =   6     4 x   2 =   8     5 x   2 =  10
   2 x   3 =   6     3 x   3 =   9     4 x   3 =  12     5 x   3 =  15
   2 x   4 =   8     3 x   4 =  12     4 x   4 =  16     5 x   4 =  20
   2 x   5 =  10     3 x   5 =  15     4 x   5 =  20     5 x   5 =  25
   2 x   6 =  12     3 x   6 =  18     4 x   6 =  24     5 x   6 =  30
   2 x   7 =  14     3 x   7 =  21     4 x   7 =  28     5 x   7 =  35
   2 x   8 =  16     3 x   8 =  24     4 x   8 =  32     5 x   8 =  40
   2 x   9 =  18     3 x   9 =  27     4 x   9 =  36     5 x   9 =  45

 

[문제 기초 2-2] 숫자 배열 입력 및 출력하기

Scanner를 이용해 숫자를 10개 입력 받아 배열에 저장하고 뒤부터 차례로 출력한다. 

숫자 입력: 5 23 9 6 18 7 82 66 59 2
역순 출력: 2 59 66 82 7 18 6 9 23 5

 

[문제 기초 2-3] 1-2 문제에서 입력한 10개 숫자의 평균을 소수점 둘째 자리까지 출력하기 

숫자 입력: 5 23 9 6 18 7 82 66 59 2
평균: 27.70

 

[문제 기초 2-4] 사용자가 정한 수(100 이하)를 입력받아 1~100 사이의 숫자를  랜덤으로 생성하여 배열에 저장하고 그것을 한 줄에 10개씩 줄맞춰서 출력한다. 

[문제 기초 2-5] 위 2-4 문제를 while 루프를 이용하여 사용자가 입력한 수가 0일 때까지 반복하도록 확장하시오. 이 때 배열은 100개 크기로 한번 선언한 것을 반복하여 이용한다.

[문제 기초 2-6] 위의 2~5번 문제를 하나의 클래스 안에 함수로 만드시오. 단 같은 코드가 중복되는 일이 없도록 여러 번 사용되는 코드는 반드시 함수로 독립하고 그것을 이용하도록 작성할 것.

결과 출력 예제 : output-basic-level2.txt

output-basic-level2.txt
0.00MB

다음과 같은 클래스 소스 코드의 구조가 되도록 작성하시오. (코드 중복이 없도록 필요한 함수를 만들 것)

import java.util.Random;
import java.util.Scanner;

public class Level2 {

	void test2_1() {
	}
	Scanner scan = new Scanner(System.in);
	Random rand = new Random();
	int myarray[] = new int[100];
	void test2_2() {
	}
	void test2_3() {
	}
	void test2_4() {
	}
	void test2_5() {
	}
	void doit() {
		test2_1();
		test2_2();
		test2_3();
		test2_4();
		test2_5();
	}
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Level2 l2 = new Level2();
		l2.doit();
	}
}

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
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
글 보관함