07 다음은 변수 n에 저장된 10진수를 2진수로 변환하여 출력하는 Java 프로그램이다. 프로그램을 분석하여 괄호(①, ②)에 들어갈 알맞은 답을 쓰시오.
public class Test {
public static void main(String[] args) {
int a[] = new int[8];
int i=0;
int n=10;
while(( ① )) {
a[i++] = ( ② );
n/=2;
}
for(i=7; i>=0; i--)
System.out.print(a[i]);
}
}
답
더보기
① n>0
② n%2
해설
코드 | 실행순서 및 해석 | ||
1 | public class Test { | ||
2 | public static void main(String[] args) { | ||
3 | int a[] = new int[8]; | 자릿수가 8인 배열 a선언 | |
4 | int i=0; | 정수형 변수 i를 선언하면서 0으로 초기화 | |
5 | int n=10; | 정수형 변수 n을 선언하면서 10으로 초기화 -> 2진수로 변환해야 하는 10진수 값 |
|
6 | while(( ① )) { | ( )에는 반복문이 종료되는 조건을 넣어주어야 한다 -> n>0 |
|
7 | a[i++] = ( ② ); | -> n%2 n을 2로 나눈 나머지 값을 a[i]에 저장 |
|
8 | n/=2; | 몫 | |
9 | } | ||
10 | for(i=7; i>=0; i--) | i는 7부터 0이 될 때까지 출력 a[7-0]을 출력 -> 출력: 00001010 |
|
11 | System.out.print(a[i]); | ||
12 | } | ||
13 | } |
3, 7.
[0] | [1] | [2] | [3] | [4] | [5] | [6] | [7] | |
a | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 |
6-9.
i | n | a[i] | i++ | n/=2 |
0 | 10 | 10%2==0 | 1 | 10/2=5 |
1 | 5 | 5%2==1 | 2 | 5/2=2 |
2 | 2 | 2%2==0 | 3 | 2/2=1 |
3 | 1 | 1%2==1 | 4 | 1/2=0 |
'자격증 > 정보처리기사 실기 - 기출문제' 카테고리의 다른 글
[정보처리기사 실기] 2020년 4회 09 - SQL (0) | 2025.07.14 |
---|---|
[정보처리기사 실기] 2020년 4회 08 - 프로그래밍 [JAVA] (1) | 2025.07.14 |
[정보처리기사 실기] 2020년 4회 06 - 스니핑 (0) | 2025.07.14 |
[정보처리기사 실기] 2020년 4회 05 - 프로그래밍 [Python] (0) | 2025.07.13 |
[정보처리기사 실기] 2020년 4회 04 - 데이터베이스 (0) | 2025.07.13 |