인사말
안녕하세요. 이 글을 읽고 계신다면 정보처리기사 또는 정보처리산업기사 수험생이실 것 같습니다.
여러 좋은 서적에서 이론을 잘 설명하고 있지만, 코딩 문제의 경우 같은 문제를 여러 번 풀다 보면 답이 머리에 기억되어 새로운 문제가 필요하게 되는 순간이 옵니다.
그럴 때 더 많은 문제를 풀어보고 도움이 되게 하고자 여러 C언어, JAVA, Python 문제를 변형 시키고 직접 컴파일하여 답을 확인하면서 문제를 만들었습니다.
정보처리 실기를 공부하시는 모든 수험생 여러분, 목표하는 모든 것이 이루어지는 그날까지 응원하겠습니다. 화이팅!
목표를 향해 열심히 노력하시고, 좋은 결과 있기를 기원합니다!
정보처리기사 실기 언어 코딩 기출변형 문제
1. 출력 값을 작성하시오.
class Calculator {
public static void main(String[] args) {
int x, y, result;
x = 5;
y = 0;
try {
result = x / y;
System.out.print("X");
} catch (ArithmeticException e) {
System.out.print("Y");
} finally {
System.out.print("Z");
}
System.out.print("W");
}
}
정답
YZW
2. 출력 값을 작성하시오.
import java.util.*;
class ListComparison {
public static void main(String[] args) {
ArrayList<String> list1 = new ArrayList<>();
ArrayList<String> list2 = new ArrayList<>();
list1.add("python_guide");
list2.add("python_guide");
System.out.println(list1.equals(list2));
System.out.println(list1 == list2);
}
}
정답
true
false
3. 출력 값을 작성하시오.
class StringComparator {
public static void main(String[] args) {
String s1 = "HelloWorld";
String s2 = "HelloWorld";
String s3 = new String("HelloWorld");
String s4 = s3.intern();
System.out.println(s1 == s2);
System.out.println(s1 == s3);
System.out.println(s1.equals(s3));
System.out.println(s1 == s4);
System.out.println(s2.equals(s4));
}
}
정답
true
false
true
true
true
4. 출력 값을 작성하시오.
import java.util.*;
class CustomList {
public static void main(String[] args) {
LinkedList<Integer> list = new LinkedList<Integer>();
list.addFirst(5);
list.addFirst(15);
list.addFirst(25);
list.addLast(35);
while (!list.isEmpty()) {
System.out.print(list.removeFirst() + " ");
}
System.out.println();
}
}
정답
25 15 5 35
5. 출력 값을 작성하시오.
import java.util.*;
class LinkedListTest {
public static void main(String[] args) {
LinkedList<Integer> numbers = new LinkedList<Integer>();
numbers.addLast(5);
numbers.addLast(15);
numbers.addLast(25);
numbers.addFirst(35);
while (!numbers.isEmpty()) {
Integer num = numbers.removeLast();
System.out.printf("%d ", num);
}
}
}
정답
25 15 5 35
6. 출력 값을 작성하시오.
class Learner {
int id;
String name;
static int totalCount = 0;
Learner(String name) {
this.id = ++totalCount;
this.name = name;
}
void display() {
System.out.println("ID: " + id + ", Name: " + name);
}
}
class LearnerTest {
public static void main(String[] args) {
Learner student1 = new Learner("Alice");
Learner student2 = new Learner("Bob");
Learner student3 = new Learner("Charlie");
Learner student4 = new Learner("Diana");
student1.display();
student2.display();
student3.display();
student4.display();
System.out.println("Total number of learners: " + Learner.totalCount);
}
}
정답
ID: 1, Name: Alice
ID: 2, Name: Bob
ID: 3, Name: Charlie
ID: 4, Name: Diana
Total number of learners: 4
7. 출력 값을 작성하시오.
class Program {
public static void main(String[] args) {
int localVar;
localVar = 15;
DemoClass.staticVar = localVar;
DemoClass demoInstance = new DemoClass();
System.out.println(DemoClass.staticVar++);
System.out.println(demoInstance.staticVar);
System.out.println(localVar);
System.out.println(demoInstance.instanceVar);
}
}
class DemoClass {
public int instanceVar = 25;
static int staticVar = 5;
}
정답
15
16
15
25
8. 출력 값을 작성하시오.
class EntryPoint {
public static void main(String[] args) {
CounterClass ca = new CounterClass();
CounterClass cb = new CounterClass();
CounterClass cc = new CounterClass();
System.out.print(++ca.staticCount + ",");
System.out.print(++cb.staticCount + ",");
System.out.print(cc.staticCount + ",");
System.out.print(++ca.instanceCount + ",");
System.out.print(++cb.instanceCount + ",");
System.out.print(cc.instanceCount);
}
}
class CounterClass {
public int instanceCount = 30;
static int staticCount = 5;
}
정답
6,7,7,31,31,30
9. 출력 값을 작성하시오.
class ArraySumClone {
public static void main(String[] args) {
int totalSum = 0;
int[] originalArray = new int[] {3, 6, 9, 12, 15};
int[] clonedArray = (int[]) originalArray.clone();
for(int num : clonedArray) {
totalSum += num;
}
System.out.println("Total sum of cloned array: " + totalSum);
}
}
정답
Total sum of cloned array: 45
10. 출력 값을 작성하시오.
class BitwiseTest {
public static void main(String[] args) {
int num = 101;
int result = ((num >> 3) << 4);
System.out.println("Result: " + result);
}
}
정답
Result: 192