0. 문제
➡ 정답
(설명)
1. 연산자와 연산식에 대한 설명 중 틀린 것은 무엇입니까?
➡ 연산식은 하나 이상의 값을 산출할 수도 있다.
(설명)
연산식은 반드시 하나의 값을 산출한다.
연산자 수가 아무리 많아도 두 개 이상의 값을 산출하는 연산식은 없다.
2. 다음 코드를 실행했을 때 출력 결과는 무엇입니까?
public class q2 {
public static void main (String[] args)
int x = 10;
int y = 20;
int z = (++x) + (y--);
System.out.println(z);
}
}
➡ 31
(설명)
증감연산자 ++, --
++ 피연산자 : 다른 연산을 수행하기 전에 피연산자의 값을 1 증가시킴
피연산자 -- : 다른 연산을 수행한 후에 피연산자의 값을 1 감소시킴
int z = (10+1) + 20 = 31
3. 다음 코드를 실행했을 때 출력 결과는 무엇입니까?
public class q3 {
public static void main(String[] agrs) {
int score = 85;
String result = (!(socre>90)) ? "가" : "나";
System.out.println(result);
}
}
➡ 가
(설명)
삼항 연산자(?:)는 조건식 ? True : False 으로 사용된다.
score가 90을 넘는게 !아니라면 "가", 맞다면 "나"가 출력된다.
점수는 85점이므로 90점을 넘는게 아니라서 "가"가 출력된다.
4. 534자루의 연필을 30명의 학생들에게 똑같은 개수로 나누어 줄 때 학생당 몇 개를 가질 수 있고,
최종적으로 몇 개가 남는지를 구하는 코드입니다. #1과 #2에 들어갈 알맞을 코드를 작성하세요.
➡ #1 : pencils / students
#2 : pencils % students
(설명)
/ : 몫 구하기
& : 나머지 구하기
5. 다음은 십의 자리 이하를 버리는 코드입니다.
변수 value의 값이 356이라면 300이 나올 수 있도록 #1에 알맞은 코드를 작성하세요. (산술 연산자만 사용)
➡ (356/100) * 100
(설명)
356을 100으로 나눈 몫만 구하고 (3) 그 몫에 100을 곱하여 300을 나타낸다.
6. 다음 코드는 사다리꼴의 넓이를 구하는 코드입니다.
정확히 소수자릿수가 나올 수 있도록 #1에 알맞은 코드를 작성하세요.
public class q6 {
public static void main(String[] args) {
int lengthTop = 5;
int lengthBottom = 10;
int height = 7;
double area = ( #1 );
System.out.println(area);
}
}
➡ (lengthTop + lengthBottom) * height / 2.0
(설명)
사다리꼴 넓이 구하기 : (윗변 + 아랫변) * 높이 / 2
*소수자릿수가 나와야 하는 area의 타입이 double이므로 2를 나눌 때에도 2.0으로 나눠준다.
7. 다음 코드는 비교 연산자와 논리 연산자의 복합 연산식입니다.
연산식의 출력 결과를 괄호( ) 속에 넣으세요.
public class q7 {
public static void main(String[] args) {
int x = 10;
int y = 5;
System.out.println( (x > 7) && (y <= 5) );--------------( )
System.out.println( (x % 3 == 2 ) || (y % 2 != 1) );----( )
}
}
➡ true / false
(설명)
논리 연산자의 피연산자는 boolean 타입만 사용할 수 있다.
&& 모두 true 일 경우에만 연산 결과 true
|| 하나만 true이면 연산 결과 true : false || false ➡ false
8. 다음은 % 연산을 수행한 결과값에 10을 더하는 코드입니다.
NaN 값을 검사해서 올바른 결과가 출력될 수 있도록 #1에 들어갈 NaN을 검사하는 코드를 작성하세요.
public class q8 {
public static void main(String[] args) {
double x = 5.0;
double y = 0.0;
double z = x % y;
if( #1 ) {
System.out.println("0.0으로 나눌 수 없습니다.");
} else {
double result = z + 10;
System.out.println("결과 : " + result);
}
}
}
➡ Double.isNaN(z)
(설명)
입력값의 NaN 검사 : 부동소수점(실수)을 입력받을 때는 반드시 NaN 검사를 해야 함.
Double.isNaN(실수)로 NaN일 경우 실행할 코드를 IF문을 활용해 코딩한다.
'🤯TIL > JAVA' 카테고리의 다른 글
[이것이 자바다 - 연습문제] chapter 04. 조건문과 반복문 (0) | 2022.10.11 |
---|---|
[연습문제] Getter Setter 메소드의 호출과 정의 (0) | 2022.10.10 |
[이것이 자바다 - 연습문제] chapter 02. 변수와 타입 (0) | 2022.10.10 |
[이것이 자바다 - 연습문제] chapter 01. 자바 시작하기 (0) | 2022.10.10 |
[JAVA 상속] Overriding / Overloading / this / super / 생성자_by생활코딩 (0) | 2022.09.17 |