Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 스프링 mvc2 - 로그인 처리
- 게시글 목록 api
- 2024 정보처리기사 수제비 실기
- 스프링 mvc2 - 타임리프
- 자바의 정석 기초편 ch2
- 스프링 db1 - 스프링과 문제 해결
- jpa - 객체지향 쿼리 언어
- 자바의 정석 기초편 ch1
- 타임리프 - 기본기능
- 자바의 정석 기초편 ch6
- 스프링 mvc1 - 스프링 mvc
- 자바의 정석 기초편 ch9
- 스프링 입문(무료)
- 스프링 db2 - 데이터 접근 기술
- 자바의 정석 기초편 ch11
- 자바의 정석 기초편 ch13
- 스프링 mvc2 - 검증
- 자바의 정석 기초편 ch14
- 스프링 mvc1 - 서블릿
- 자바의 정석 기초편 ch12
- 자바의 정석 기초편 ch5
- 자바의 정석 기초편 ch4
- 자바의 정석 기초편 ch8
- 스프링 고급 - 스프링 aop
- 코드로 시작하는 자바 첫걸음
- 자바의 정석 기초편 ch3
- @Aspect
- 자바의 정석 기초편 ch7
- jpa 활용2 - api 개발 고급
- 2024 정보처리기사 시나공 필기
Archives
- Today
- Total
나구리의 개발공부기록
chapter3 - 연산자 확인문제, / 이것이 자바다(개정판) 본문
이것이 자바다 개정판(신용권, 임경균 지음) - java 8 ~ 17대응
챕터3 - 연산자
Q1. 다음 코드를 실행했을 때 출력 결과를 작성 - 31
int x = 10;
int y = 20;
int z = (++x) + (y--);
System.out.println(z);
여러 연산자가 포함되어 있는 연산식에서 증감 연산자가 변수 앞에 있으면 변수를 증가 및 감소 후 다른 연산을 수행
증감 연산자가 변수 뒤에 있으면 모든 연산을 끝낸 후에 변수를 증가 및 감소
int z = (++x) + (y--);
/* int z = 11 + 20--;
31 = 11 + 20--;
31 = 11 + 19; */
z = 31, y = 19
Q2. 다음 코드를 실행했을 때 출력 결과를 작성 - 가 (문자열 출력)
int score = 85;
String result = (!(score>90))? "가" : "나";
System.out.println(result);
3항 연산자
A > B ? C : D // A가 B보다 크면 C를, 아니면 D를 출력
(!(85 > 90))? "가" : "나" // 85가 90보다 작지 않으면 "가"를 출력
Q3. 534자루의 연필을 30명의 학생들에게 똑같은 개수로 나누어 줄 때 1인당 몇 개를 가질 수 있고, 마지막에 몇 개가 남는지를 구하는 코드, ( ) 에 들어갈 알맞는 코드를 작성
- pencils / students
- pencils % students
int pencils = 534;
int students = 50;
// 학생 한 명이 가지는 연필 수
int pencilsPerStudent = ( );
System.out.println(pencilsPerStudent);
// 남은 연필 수
int pencilsLeft = ( );
System.out.println(pencilsLest);
pencils / students // 몫 연산
pencils % students // 나머지 연산
Q4. 다음은 십의 자리 이하를 버리는 코드, 변수 value의 값이 356이라면 300이 나올 수 있도록 ( )에 알맞는 코드를 작성(산술 연산자만 사용) - value / 100 * 100
int value = 356;
System.out.println();
356 / 100 = 3
3 * 100 = 300 // 연산만으로 십의자리 이하를 0으로 만듦
Q5. 다음 코드는 사다리꼴의 넓이를 구하는 코드, 정확히 소수 자릿수가 나올 수 있도록 ( )에 들어갈 수 있는 코드를 모두 선택 - 1,2,3,4
int lengthTop = 5;
int lengthBottom = 10;
int height = 7;
double area = ( );
System.out.println(area);
- (lengthTop+lengthBottom) * height / 2.0
- (lengthTop+lengthBottom) * height * 1.0 / 2
- (double) (lengthTop+lengthBottom) * height / 2
- (double) ((lengthTop+lengthBottom) * height / 2 )
피연산자 중 하나가 실수 타입이면 결과도 실수 타입이 되므로 소수점 자리까지 계산됨
4번의 경우는 ()안의 연산식이 int타입으로 계산이 된 후 double타입으로 강제 형변환이 되어버림 -> 52.0
Q6. 다음 코드는 비교 연산자와 논리 연산자의 복합 연산식, 연산식의 출력결과를 작성 - true, false
int x = 10;
int y= 5;
System.out.println( ( x > 7 ) && ( y <= 5 ) );
System.out.printin( (x % 3 == 2) || (y % 2 != 1) );
// 10은 7보다 크고 5는 5보다 작거나 같다, 둘다 만족해야 true
(( 10 > 7 ) && ( 5 <= 5 ));
// 10을 3으로 나누면 나머지가 2가 나오거나,
// 5를 2로 나누면 나머지가 1이 나오지 않는다, 둘중에 하나만 만족해도 true 지만 둘다 만족하지 않음
((x % 3 == 2) || (y % 2 != 1));
Q7. 다음은 % 연산을 수행한 결과값에 10을 더하는 코드, NaN값을 검사해서 올바른 결과가 출력될 수 있도록 ( )에 들어갈 코드를 작성
- Double.inNaN(z)
double x = 5.0;
double y = 0.0;
double z = 5 % y;
if ( ) {
System.out.println("0.0으로 나눌 수 없습니다.");
} else {
double result = z + 10;
System.out.println("결과: " + result);
}
Double클래스의 isNaN();메서드에 연산 결과가 NaN이 나오는 연산식을 매개변수에 대입하여 코드를 완성
if(연산식의 결과가 NaN 이면) -> 작성된 출력 코드를 실행
else(그렇지 않으면) z + 10의 연산식을 출력
'책 공부 > 이것이자바다 개정판(도서)' 카테고리의 다른 글
chapter4 - 조건문과 반복문 확인문제, 추가내용 / 이것이 자바다(개정판) (0) | 2024.02.13 |
---|---|
chapter1 - 자바시작하기 확인문제 (일부만), chapter2 - 변수와 타입 확인문제 / 이것이 자바다(개정판) (2) | 2024.02.07 |