[4-1] 다음의 문장들을 조건식으로 표현하라.
1. int형 변수 x가 10보다 크고 20보다 작을 때 true인 조건식
10 < x && x< 20
2. char형 변수 ch가 공백이나 탭이 아닐 때 true인 조건식
ch != ' ' || ch != '\'
3. char형 변수 ch가 'x'또는 'X'일 때 true인 조건식
ch = 'x' || ch='X'
4. char형 변수 ch가 숫자 ('0'~'9')일 때 true인 조건식
'0' <= ch && ch <= '9'
5. char형 변수 ch가 영문자(대문자 또는 소문자)일 때 true인 조건식
('a' <= ch && ch <='z') || ('A' <= ch && ch <= 'Z')
6. int형 변수 year가 400으로 나눠떨어지거나 4로 나눠떨어지고 100으로 나눠떨어지지 않을 때 true인 조건식
(year % 400 == 0 || year % 4 ==0) && (year % 100 != 0)
7. boolean형 변수 powerOn이 false일 때 true인 조건식
powerOn == false
8. 문자열 참조변수 str이 "yes"일 때 true인 조건식
str.equals("yes")
[4-2]
=> 나는 2와 3의 배수일 경우에는 continue를 사용해 건너뛰었고
해설은 2와 3의 배수가 아닐 경우에 합하도록 함
결과값은 73으로 동일
[4-3]
+처음에 main메서드 호출도 안해놓고 코드 짜서 멘붕왔던 것 캡처..
total선언 마지막에 ;다음에 괄호처리하라고 자꾸 오류 떠서 뭔 개소리야~~~ 했는데..
알고보니 main이 없었던....
제발 이런 실수는... 하지말길 다음부턴 ^^....
[4-4]
=> j값을 i값의 음수로 설정해놓고 증감식에서 j++로 해놔서 결과값이 오류로 나왔다.
- 부호를 변경해줄 변수를 1로 놓고 증감식에서 s = -s로 사용했는데
이렇게 되면 매 반복마다 1, -1, 1, -1을 반복하므로 짝수에 음수가 붙을 수 있음
- 증감식에는 쉼표로 구분해 하나 이상의 증감식을 써줄 수 있다.
- 조건값이 확실하지 않을 때는 true키워드를 사용해준다. (무한반복문)
[4-5]
=> 풀지 못한 문제 / 나중에 필히 다시 체크
증감식은 잘못 캡쳐됐음 (해설과 같은 증감식 사용)
변수 선언을 while(i<=10)위에 전부 해버려서 오류
int j=0; 선언을 while(j<=i)위에 선언했어야 함
[4-6]
[4-7]
[4-8]
[4-9]
=> char형에 charAt메서드 사용한 값을 옮겨담은 후 1의 유니코드 값을 이용해 -48해준뒤
int형 변수에 담아 계산했는데 결과값은 같았으나...
해설처럼 -'0'을 이용해 더 쉽게 int값으로 변환해줄 수 있음 기억하기 ㅠ
[4-10]
=> tmp라는 변수를 생성하지 않고 바로 sum에다 num%10을 대입해 코딩하는 것이 좀 더 깔끔
[4-11]
=> 풀지 못한 문제 / 나중에 다시 풀어보기
대입까지 다 제대로 했는데 println으로 출력하는 것을 빼먹어 풀지 못했음 ㅠ
[4-12]
=> 출력시 어디서 줄바꿈이 일어나고 for문을 어떻게 써줘야 하는지 제대로 파악 필요
풀지 못한 문제 / 나중에 다시 풀어보기
[4-13]
=> 내 프로그램상에 오류가 있는 건지 해설지의 코딩과 정답이 나와 반대됨
나는 내 해설로 했을 때 제대로 된 결과값을 얻었다.
처음에 if('0'<=ch && ch<='0') {isNumber = true}라고 프로그램을 짰는데 결과값이 틀렸었다.
해설이 맞다면 위 코드도 맞아야 하지 않나...?
이거는 다시 한 번 확인 필요
[4-14]
=> input값과 answer값이 다를 경우 나는 continue를 사용했는데
while(true)로 조건식이 무한반복문이므로
input == answer인 경우에 한해서만 반복문을 벗어나게 break사용해주면 된다.
(굳이 continue를 사용할 필요는 없었음)
[4-15]
=> 각 자리 별로 담긴 result값에 어떻게 자리값을 줘야하는지 고민하다 못 풀었는데
해설처럼 result*10을 tmp%10과 같이 더해주면 된다.
나중에 다시 풀어 볼 문제
<틀린 문제 : 4, 5, 11, 12, 15 >
*정답에 오류가 있으면 댓글로 알려주시면 감사하겠습니다! 🙏
'Study > Java 연습문제' 카테고리의 다른 글
03.연산자 Exercise (기본 코드/내 풀이/해설) (0) | 2023.01.15 |
---|
댓글