일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 쇼핑몰홈페이지제작
- 스프링프레임워크
- JDBC
- 개발일기
- 데이터분석
- 순환신경망
- 파이썬
- 상속
- ChatGPT
- SQL
- 데이터베이스
- 중학1-1
- 정보처리기사필기
- 연습문제
- 머신러닝
- 타입스크립트심화
- 디버깅
- JSP
- 혼공머신
- 딥러닝
- 중학수학
- html/css
- 컴퓨터비전
- JSP/Servlet
- 자바 실습
- 정보처리기사실기
- 자바
- 자바스크립트심화
- rnn
- 자바스크립트
- Today
- Total
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
코드의 흐름 제어 4 - 반복문 더 알아보기 본문
이제 반복문 학습이 좀 더 남아있다. 중첩문이 되는 것 같다. 사실 이걸 더 먼저 학습했어야 조금 전에 풀었던 실습문제를 더 잘 이해할 수 있었을 텐데 과정이 이게 나중에 나오게 된다.
그럼, 이제 중첩문에 대해서 학습해보자!
이론 4 - 반복문 더 알아보기
continue와 break는 양념처럼 사용할 수 있다. 3일 때 건너뛰어서 다음으로 넘어간다.
3에서 탈출하여 0, 1, 2가 출력된다. continue에서는 3 다음의 수가 출력되지만, break에서는 탈출해서 그다음이 모두 출력되지 않는다는 차이점이 있다.
퀴즈 4 - 반복문 더 알아보기
5일 때 빠져나가니 답은 10이 된다.
실습 10 - 로켓 발사하기
문제 풀기
이상하게도 아무것도 출력이 되지 않았다.
코드 수정하기
이렇게 하니 0번째에서 로켓발사가 출력되지 않았다. 0보다 크거나 같다는 조건을 붙이면 무한루프에 빠져서 나오지 않는다. 어떻게 하면 해결할 수 있을지 생각해 보았다.
무한 루프 빠지지 않게 하기
else일 때 count--를 해주니 else 조건일 때만 해당이 되고, if일 때는 출력이 되지 않은 거였다.
실습 11 - 약수 구하기
문제 풀기
약수가 아니라 자기 자신만 출력이 되고 있다. 영상을 참고해 보니 강사님은 boolean으로 써서 푸셨는데 난 이 방법은 쓰고 싶지 않았다. 연구해 보니 답이 보였다.
여러 번 시도 끝에 드디어 답을 찾았다. 작은 값으로 큰 값을 나누니 답이 나오지 않았던 거였다.
실습 12 - 합계가 100이 넘어갈 때까지 더하기
문제 풀기
continue를 쓸 때는 else를 따로 만들 필요가 없었다. 그리고 sum이 100보다 작은 경우로 설정해야 하는데 i로 해서 값이 이처럼 커진 거였다.
학습을 마치고
이렇게 해서 중첩문에 대한 문제 풀이까지 모두 마쳤다. 요즘에는 영상을 먼저 시청하지 않고 혼자서 끙끙대면서 풀어보고, 정 안되면 참고하는 편이라 푸는데 시간이 좀 많이 걸린다.
그래도 다 풀고 나니 정말 뿌듯했다. 강사님의 풀이를 그대로 따라 하는 건 내 공부에 전혀 도움이 되지 않는다. 이 답이 나오기까지의 과정을 혼자서 해볼 수 있을 때까지 연습을 게을리하지 말아야 할 것 같다.
반복문도 이제 어느 정도 자신이 생겼다. break와 continue의 차이를 그동안 잘 몰랐는데 오늘 학습하며 확실히 구분할 수 있게 되었다. 이제 미션 문제만 남았다. 배열을 들어갈 수 있을지 의문이지만 남은 2시간 20분 정도 되는 공부시간도 열공해 보자!
'프로그래밍 언어 > 자바' 카테고리의 다른 글
배열 1 - 배열 기초 (0) | 2024.08.06 |
---|---|
코드 흐름 제어 5 - 미션 문제 풀고 단원 마무리하기 (0) | 2024.08.06 |
코드의 흐름 제어 3 - 반복문 (0) | 2024.08.06 |
코드의 흐름 제어 2 - 조건문 (0) | 2024.08.06 |
코드의 흐름 제어 1 - 관계 · 논리 연산자 (0) | 2024.08.06 |