Frog is cry
while문(Day10) 본문
package day11;
public class Day11_01 {
// for문이 반복설계 구문에서 정해진 만큼 종속문장을 반복하는 구조를 가진데 비하여
// while문은 조건식이 참인 동안 종속문장을 수행하는 구조를 가지므로 for문과 형태가 다름.
// 구조적인 면으로 while문은 if문의 구조와 비슷하다고 할 수 있음.
// while의 조건식 부분에는 비교, 논리 연산자로 이루어진 연산식이 주로 오는데
// 조건식의 연산 결과가 false가 되면 반복 행위를 멈추고 while의 종속 문장을 탈출함.
public static void main(String[] args) {
int i = 1; // while문의 조건식에서 사용하는 변수의 초기화식
while (i <= 10) { // (i <= 10) : while문의 조건식
System.out.println(i); // 종속문장 시작
i++; // 증감식
} // 종속문장 끝
System.out.println("while문-종속문장의 바로 다음문장임");
}
}
package day11;
public class Day11_02 {
// while 에제1 : 1부터 100까지의 합을 출력하기
public static void main(String[] args) {
int sum = 0;
int i = 1;
//
while (i <= 100) { // 1 <= 100
sum += i; //
i++; // 101
}
// 이 지점에서 i 값은 얼마입니까? 101
System.out.println("1 ~ " + (i - 1) + "까지의 합 :" + sum);
}
}
// 응용
package day11;
public class Day11_03 {
// while문 예제3 : 키보드 입력된 값 확
public static void main(String[] args) throws Exception{
// throws Exception : System.in.read()라는 메소드가 비정상적으로 실행되는 경우를
// 대비하기 위한 예외처리코드입니다. Sysyem.in.read()메소드를 사용하기 위해 꼭 써야하는 문장입니다.
// 지금은 메소드의 다양한 선언 방법 중의 하나라는 정도만 이해하고 넘어가면 됩니다......
boolean run = true;
int speed = 0;
int keyCode = 0;
while(run) { // run은 boolean형식으로 참, 거짓값 중 한 개를 가집니다.
// 이 문장과 같이 while의 종속문장에 단독으로 사용하는 것이 가능합니다.
if ( keyCode != 13 && keyCode != 10 ) { // 키코드 값이 13이 아니고 동시에 10도 아닐경우
System.out.println("====================");
System.out.println("1.증속 | 2.감속 | 3.중지");
System.out.println("====================");
System.out.println("선택: ");
}
//
keyCode = System.in.read(); // 눌려진 키보드의 코드를 읽어서 keyCode변수에 할당함
//
if (keyCode == 49) { //1
speed++;
System.out.println("현재속도 = " + speed);
} else if (keyCode == 50) { //2
speed--;
System.out.println("현재 속도 = " + speed);
} else if (keyCode == 51) { // 3
run = false; // while문의 조건식에 있는 run변수의 값을 false로 세팅함.
}
}
System.out.println("프로그램 종료");
}
}
// break문 예제 1 : while문의 종속문장에서 break문 사용하기
// break문은 대게 if문과 같이 사용되어 if문의 조건식에 따라 for문과 while문을 종료할 때 사용한다.
// 다음 예제는 while문을 이용해서 주위 번호 중 하나를 반복적으로 뽑되, 6이 나오면 whie문을 종료시킨다.
package day11;
public class Day11_05 {
public static void main(String[] args) {
while(true) {
int num = (int)(Math.random()*6)+1;
System.out.println(num);
if(num == 6) {
break; // 이 문장을 만나면 while문의 종속문장 블럭을 탈출한다.
// 탈출해서 맨처음 수행하는 문장은 무엇일까요? --->
// break; 문은 반복문(while, for, do~while)과 switch~case 문의 종속문장을
// 탈출하는 용도로 주로 사용됩니디. if문의 종속문장을 탈출하는 용도로는 사용하지 않습니다.
// 그렇다면 중첩되어있는 반복문에서 break문은 어떻게 탈출할지 다음 예제를 보세요.
}
}
System.out.println("프로그램 종료!!!!");
}
}
'JAVA > 국비수업' 카테고리의 다른 글
실습문제(Day11) (0) | 2020.07.14 |
---|---|
do While문(Day10) (0) | 2020.07.14 |
시험(Day09) (0) | 2020.07.14 |
누적연산(Day08) (0) | 2020.07.14 |
for문(Day08) (0) | 2020.07.14 |
Comments