1. 다중 for 문
*위의 퀴즈의 문제는 주석으로 써놓은 부분을 혼자의 힘으로 똑같이 만들어보는 것이였다. 일단, 이를 해결하기 위해서는 다중 for문에 대해서 알아야한다. 다중 for문이라 함은 for문 속에 또 다른 for문이 있는 것을 말한다. 작용원리는 내 풀이를 통해서 설명하도록 하겠다. 우선, i = 1인 경우에 , 첫번째 for문의 조건식이 참이기 때문에, 실행해야할 명령문을 실행해야 하는데, 이것이 for문인 것이다. 그러하여, i = 1 이고, j=2 일 때, 두번째 for문의 조건식이 참이기 때문에, 두번 째 for문의 명령문을 실행해야한다. 그 이후에는 i=1 , j=3 인 경우 / i=1 , j=4 인경우 이와 같은 상황으로 반복되는 것이 다중for문이다.
* 위의 퀴즈는 구구단을 출력하면서 4단씩 끊는 것이 주된 과제였다. 나는 방법이 잘 떠오르지 않아, 이중 for문을 두 개 만들어서, 그 사이를 만들었다. 그러나, 내가 풀면서도 이 방법보다 좋은 방법이 있을 것이라고 생각했다. 그 후, 고민을 해도 결과가 나오지 않았고, 이에 대해 선생님께서 설명해주셨다. 이러기 위해서는 삼중 for문을 만드는 것이였다. 이러한 생각을 할 수 있도록 노력할 필요가 있겠다.
2. while문
변수의 초기화 ;
while(조건식) { // 조건식이 참(true) 라면 , 반복해서 실행할 명령문을 실행하고,
// 조건식이 거짓(false)라면 , while의 { } 부분을 빠져나간다.
반복해서 실행할 명령문 ; 증감식 ; }
- while문의 기본형식의 위와 같다. (조건식) 에는 while 반복문을 빠져나갈 조건식의 정의를 내려주는 것이다.
-for문을 통해서도 무한반복문을 만들 수 있다시피, while문을 통해서도 무한 반복문을 만들 수 있는데, 방법은 다음과 같다. while 괄호 안에 조건식에 무조건 참인 조건식을 넣으면 되는 것이다. 우리는 편하게 while(true) 라고 주로 작성하기도 한다.
2-1) while 문만의 조심해야할 점과 특징
* for문과 다르게 , 변수의 초기화가 while 문 전에 와야한다.
* 내가 while문을 작성하면서, 1이 계속해서 찍히게 되면서, 컴퓨터가 멈추는 경험을 자주 했다. while문을 진행하면서 사람들이 자주 증감식을 빼먹고 하는데, 그렇게 되면 조건식을 계속 충족을 못 시키면서 무한 반복문이 될 수 가 있다. 이러한 점을 유의해서 while 반복문을 작성할 필요가 있다.
3. do-while문
변수의 초기화;
do { 반복해서 실행할 명령문 ; 증감식 ; }
while ( 조건식) ;
* while문과 do-while문의 가장 큰 차이점은 while 문의 경우 조건식이 true 일때만 반복실행하지만, do ~while 문의 경우는 조건식이 false 일지라도 무조건 do { } 속에 있는 명령문은 1번 실행하고서 반복문을 벗어난다. 그러므로, do ~ while 문은 무조건 do { } 속에 있는 명령문을 실행하고서 while( 조건식) 속의 조건에 따라 참(true) 이라면 계속 반복하고, 조건이 거짓( false) 라면 중지한다.
해당 내용은 쌍용강북교육센터 서영학 교수님의 수업을 바탕으로 작성되었음을 알려드립니다.
* 앞으로도 계속하여 , 글을 올리려고 노력할 것이다. 혹시라도 , 이걸 보는 선배 개발자 분들이 계시다면, 제가 진행하는 부분에 있어서, 부족한 점이 많을 것이라고 생각합니다. 올리는 내용에 있어서도 잘못된 부분이 있을 수도 있습니다. 이러한 점에 있어서, 지적해주신다면 바로 고치도록 하겠습니다. 많은 응원과 격려 , 질타 부탁드리겠습니다. 감사합니다.
![](https://t1.daumcdn.net/keditor/emoticon/friends1/large/008.gif)
''국비지원'의 시작' 카테고리의 다른 글
자바 비긴즈 09 기본생성자 , 생성자 오버로딩 (0) | 2023.01.13 |
---|---|
자바비긴즈 08 (random , 반복문) (0) | 2023.01.13 |
자바 비긴즈 06( FOR문, IF문 , SWITCH문 ) (0) | 2023.01.09 |
자바 비긴즈 05 (스캐너, wrapper 클래스 , math클래스) (0) | 2023.01.08 |
자바 비긴즈 04 ( 데이터형 변환, 연산자 , 스캐너) (0) | 2023.01.05 |