1. 다음 프로그램에 대해 물음에 답하라?
int sum = 0, i = 0;
while (i < 100) {
sum = sum + i;
i += 2;
}
System.out.println(sum);
(1) 무엇을 계산하는 코드이며 실행 결과 출력되는 내용은?
답 : 짝수를 더하는 코드이며 실행결과 2450이 출력된다.
(2) 위의 코드를 main() 메소드를 만들고 WhileTest 클래스로 완성하라.
public class WhileTest {
public static void main(String[ ] args){
int sum=0, i=0;
while(i < 100) {
sum= sum+i;
i+=2;
}
System.out.println(sum);
}
}
(3) for 문을 이용하여 동일하게 실행되는 ForTest 클래스를 작성하라.
public class ForTest {
public static void main(String[ ] args){
int sum=0;
for(int i=0;i<100;i+=2) {
sum= sum+i;
}
System.out.println(sum);
}
}
(4) do-while 문을 이용하여 동일하게 실행되는 DoWhileTest 클래스를 작성하라.
public class DoWhileTest {
public static void main(String[ ] args){
int sum=0, i=0;;
do{
sum+=i;
i+=2;
} while(i<100);
System.out.println(sum);
}
}
2. 다음 2차원 배열 n을 출력하는 프로그램을 작성하라.
int n[ ][ ] = { {1}, {1,2,3}, {1}, {1,2,3,4}, {1,2} } ; |
3. Scanner를 이용하여 정수를 입력받고 다음과 같이 *를 출력하는 프로그램을 작성하라. 다음은 5를 입력받았을 경우이다.
정수를 입력하시오>>5 ***** **** *** ** * |
4. Scanner를 이용하여 소문자 알파벳을 하나 입력받고 다음과 같이 출력하는 프로그램을 작성하라. 다음은 e를 입력받았을 경우이다.
5. 양의 정수를 10개 입력받아 배열에 저장하고, 배열에 저장하고, 배열에 있는 정수 중에서 3의 배수만 출력하는 프로그램을 작성하라.
6. 배열과 반복문을 이용하여 프로그램을 작성해보자. 키보드에서 정수로 된 돈의 액수를 입력받아 오만 원권, 만 원권, 천 원권, 500원짜리 동전, 100원짜리 동전, 50원짜리 동전, 10원짜리 동전, 1원짜리 동전이 각 몇 개로 변환되는지 예시와 같이 출력하라. 이때 반드시 다음 배열을 이용하고 반복문으로 작성하라.
7. 정수를 10개 저장하는 배열을 만들고 1에서 10까지 범위의 정수를 랜덤하게 생성하여 배열에 저장하라. 그리고 배열에 든 숫자들과 평균을 출력하라.
8. 정수를 몇 개 저장할지 키보드로부터 개수를 입력받아(100보다 작은 개수) 정수 배열을 생성하고, 이곳에 1에서 100까지 범위의 정수를 랜덤하게 삽입하라. 배열에는 같은 수가 없도록 하고 배열을 출력하라.
9. 4 x 4의 2차원 배열을 만들고 이곳에 1에서 10까지 범위의 정수를 랜덤하게 생성하여 정수 16개를 배열에 저장하고, 2차원 배열을 화면에 출력하라.
10. 4 x 4의 2차원 배열을 만들고 이곳에 1에서 10까지 범위의 정수를 10개만 랜덤하게 생성하여 임의의 위치에 삽입하라. 동일한 정수가 있어도 상관없다. 나머지 6개의 숫자는 모두 0이다. 만들어진 2차원 배열을 화면에 출력하라.
11번, 12번 문제는 생략
13. 반복문을 이용하여 369게임에서 박수를 쳐야 하는 경우를 순서대로 화면에 출력해보자. 1부터 시작하며 99까지만 한다. 실행 사례는 다음과 같다.
3박수 짝 6박수 짝 9박수 짝 13박수 짝 16박수 짝 19박수 짝 23박수 짝 26박수 짝 |
14. 다음 코드와 같이 과목과 점수가 짝을 이루도록 2개의 배열을 작성하라.
String course[] = {"Java", "C++", "HTML5", "컴퓨터구조", "안드로이드"}; int score[] = {95, 88, 76, 62, 55}; |
그리고 다음 예시와 같이 과목 이름을 입력받아 점수를 출력하는 프로그램을 작성하라. "그만"을 입력받으면 종료한다.
15. 다음은 2개의 정수를 입력 받아 곱을 구하는 Muliply 클래스이다.
import java.util.Scanner;
public class Multiply {
public static void main(String[] args){
Scanner scanner = new Scanner(System.in);
System.out.print("곱하고자 하는 두 수 입력 >> ");
int n = scanner.nextInt();
int m = scanner.nextInt();
System.out.print(n+"x"+m+"="+n*m);
scanner.close();
}
}
다음과 같이 실행할 때 프로그램은 10과 5를 곱해 50을 잘 출력한다.
곱하고자 하는 두 수 입력 >> 10 5
10x5=50
하지만, 다음과 같이 실수를 입력하였을 때, 예외가 발생한다.
곱하고자 하는 두 수 입력 >> 2.5 4
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at java_study3_15.Multiply.main(Multiply.java:11)
다음과 같이 실수가 입력되면 정수를 다시 입력하도록 하여 예외 없이 정상적으로 처리되도록 예외 처리 코드를 삽입하여 Multiply 클래스를 수정하라.
16. 컴퓨터와 독자 사이의 가위 바위 보 게임을 만들어보자. 예시는 다음 그림과 같다. 독자부터 먼저 시작한다. 독자가 가위 바위 보 중 하나를 입력하고 <Enter>키를 치면, 프로그램은 가위 바위 보 중에서 랜덤하게 하나를 선택하고 컴퓨터가 낸 것으로 한다. 독자가 입력한 값과 랜덤하게 선택한 값을 비교하여 누가 이겼는지 판단한다. 독자가 가위 바위 보 대신 "그만"을 입력하면 게임을 끝난다.
'JAVA > JAVA 문제풀이' 카테고리의 다른 글
명품 자바 프로그래밍 4장 실습문제 (0) | 2023.07.04 |
---|---|
명품 자바 프로그래밍 4장 이론문제 (0) | 2023.07.04 |
명품 자바 프로그래밍 3장 이론문제 (0) | 2023.06.30 |
명품 자바 프로그래밍 2장 실습문제 (0) | 2023.06.29 |
명품 자바 프로그래밍 2장 이론문제 (0) | 2023.06.29 |