관리 메뉴

클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지

코드 흐름 제어 7 - 반복문 실습 본문

프로그래밍 언어/자바

코드 흐름 제어 7 - 반복문 실습

huenuri 2024. 8. 10. 11:38

어제 자바 1 조건문까지만 학습을 했고 오늘 아침 10시 반이 되어서야 공부를 시작해 본다.  이제부터 난 정말 좋은 습관을 만들고 싶다. 뭐든 제대로 하려면 시간과 돈이 든다. 전에는 쓸데없는데 많은 돈을 썼지만 이제는 과소비를 줄이고 정말 꼭 필요한 것에 사용해 볼 생각이다.
 
잠시 해결해야 할 일이 있어서 시간이 좀 걸렸다. 이제 공부를 진짜 시작해 봐야지! 사람들은 돈이 들어가게 되면 말을 바꾸고 자기 이익에 따라서 행동하는 걸 확실히 느낀다. 정말 이상한 사람들이 너무나도 많다.


 
 
 

실습 6 - 1부터 100까지 출력하기

 

1씩 증가하는 수

 

 
1부터 100까지 출력이 잘 되었다. 이런 식의 3의 배수로 구할 수 있다. 3의 배수를 구하는 건 더 어려우니 한번 출력해 보기로 하자.


 
 

3씩 증가하는 수

 
원래 예제 문제는 3씩 증가하는 건 아니었고 1씩 증가하는 수였지만 그래도 좀더 어려운 문제로 응용해서 풀어보았다. 이처럼 3씩 증가하며 99에서 멈춘다.


 
 
 
 

실습 7 - 1부터 100까지 출력하기 2

조금 전에는 for문으로 풀었고 이번에는 while을 사용하는 것이다. 지난번에 기본 학습을 진행할 때 문제를 첨부하지 않아서 이번에 수정해 보았다. 이렇게 복습을 하다 보면 이전에 발견하지 못했던 것들을 알게 된다.
 

 
while문을 사용해서도 이렇게 100까지 출력이 잘 되고 있다.


 
 
 
 

실습 8 - 구구단 n단 출력하기

단을 입력하면 그 단이 출력되는 프로그램을 만들어본다. 이 문제도 지금까지 자주 연습했던 거라 어렵지 않게 풀 수 있을 것 같다.
 

1. 중첩 for문을 넣었을 때

 

 
어찌 된 것인지 모든 단수가 전부 출력되었다. 역시 구구단 문제는 쉽지가 않다. 기본 문제라도 쉽게 봐서는 안 된다. 틀린 이유를 드디어 찾았다. 그건 중첩 for문을 사용해서였다. 그러면 9*9=81 해서 81번이나 반복이 된다.
여기서는 9번만 출력하면 되니까 한 개만 써야 한다.


 
 
 

2. 구구단은 잘 출력이 되었으나

 
이상하게도 2가 2번이나 나타났다. 그 이유는 처음에 출력문을 써준 것이다. 난 2가 출력되려면 print문을 써야 한다고 생각했다. 하지만 입력이 되면 그 수가 콘솔창에 나타나므로 이를 써줄 필요가 없다.


 
 
 
 

3. 코드 수정하기

 
이제 잘 맞게 나왔다. 구구단 문제 정말 어렵다. 그래도 이제는 확실히 이해한 것 같다!


 
 
 
 

실습 9 - 구구단 출력하기

이번에는 모든 단이 출력이 되도록 만드는 문제이다. 조금 전에 틀리게 풀었던 문제가 바로 이것이었다. 난 실습 문제를 응용해서 다른 여러 문제도 풀어볼 생각이다.
 

 
2단부터 9단까지 모두 출력되었다. 여기서 중요한 점은 1단이 출력되지 않도록 i를 2로 바꾸어야 한다는 것이다. j를 2로 바꾸면 1을 곱한 수가 출력되지 않는다. i와 j가 무엇인지 알아야 하는데 이 부분이 많이 헷갈린다.


 
 
 
 

학습을 마치고

이렇게 해서 반복문 학습까지 모두 마쳤다. 책에 있는 문제들은 좀 어려운데 다시 한번 복습하며 모든 문제들을 다 풀어볼 생각이다. 수업 시간에 했던 예제들도 한번 복습을 했지만 그래도 잘 모르는 것들이 많다는 걸 알게 되었다. 자바는 확실하게 공부를 해보고 싶은 분야이고 앞으로 내게 중요한 분야인 것 같다.