Java
TIL 10 | Java - 반복문 : While
개발 공부
2022. 9. 27. 18:37
반복문
• while
- 조건식을 만족하는 동안 반복문을 실행 (true 면 실행, false 면 while문 빠져나감)
- 조건식 안에 true를 넣으면 무한루프가 발생하기 때문에 반드시 탈출 구문을 넣어야 함
예제 01) 반복문 돌리기, 횟수 누적하기
// int a = 1; //제어변수 : 반복문 횟수를 결정할 변수
// while(a <= 10) {
// System.out.println("hello" + a);
// a++;// 제어변수 조작을 통해 반복의 조건식이 언젠가 false가 되도록 처리
//
// }
//누적
int sum = 0;//누적할 변수 (이걸 와일문 안에 선언하면 누적이 안됨)
int i = 1;
while(i <= 10) {
sum += i; //sum = sum + i;
System.out.println(sum);
i++;
}
// //누적할 변수
// int i = 1;
//
// while(i <= 10) { //1-10
// int sum = 0;
// sum += i; //sum = 1
// System.out.println(i);
// i++;
// }
예제 02) 짝수만 출력
//100번 회전하는 반복문에서 짝수만 출력
//반복문과 조건문 같이 사용 가능
int i = 1;
while(i <= 100) {
if(i % 2 == 0) {
System.out.print(i + " ");
}
i++;
}
System.out.println();//줄바꿈
//100번 회전하는 반복문에서 짝수만 출력
int j = 2;
while(j <= 100) { //2~100
System.out.println(j + " ");
j+=2;
}
System.out.println();
예제 03) 3의 배수의 개수 구하기
//3의 배수의 개수 구하기
//1~100까지의 정수 중 3의 배수의 개수 구하기
int i = 1;
int count = 0;//개수를 체크할 변수
while(i <= 100) {
if(i % 3 == 0) { //i는 3의 배수
count++; //3의 배수일 때 하나씩 증가
}
i++;
}
예제 04) 3의 배수의 개수 구하기
//정수를 입력 받기
//입력받은 정수까지의 합
// Scanner scan = new Scanner(System.in);
// System.out.print("정수>");
// int num = scan.nextInt();
//
// int i = 1;
// int sum = 0;
// while(i <= num) {
// //i의 합
// sum += i;
// i++;
//
// }
// System.out.println(num + "까지의 합:" + sum);
Scanner scan = new Scanner(System.in);
int num = scan.nextInt(); //3
int i = 1;
int sum = 0;
while(i <= num) { //i가 입력받은 정수가3 될때까지 반복 (1~3)
sum += i;//i의합
i++;
}
System.out.println(sum);
예제 05) 반복할 횟수를 입력 받아 반복하기
/*
* 반복문 안에서의 입력
*
* 2개의 정수를 받아서
* 첫번째 정수는 반복의 횟수 결정
*/
Scanner scan = new Scanner(System.in);
System.out.println("반복횟수>");
int num = scan.nextInt();
int sum = 0; //누적할 변수
int i = 1;
while(i <= num) {
System.out.println(">");
int a = scan.nextInt();
sum += a;//입력받은 수의 누적
i++;
}
System.out.println("누적합계" + sum);
/*
* 반복문 안에서의 입력
*
* 2개의 정수를 받아서
* 첫번째 정수는 반복의 횟수 결정
* 두번째 정수는 누적
*/
// Scanner scan = new Scanner(System.in);
// int num1 = scan.nextInt();
//
// int i = 1;
// int sum = 0;
//
// while(i <= num1) {//i가 num1이 될때까지 반복
// int num2 = scan.nextInt(); //num2 입력
// sum =+ num2;
// i++;
//
// }
//
// System.out.println(sum);
//
예제 06) 배열과 반복문
//배열과 반복문
//시작은 0 ~ 길이미만
int[] arr = {1,2,3,4,5,6,7,8,9,10};
int i = 0;
int sum = 0; //누적
while(i < arr.length) {
//System.out.println(i);0~9
//System.out.println(arr[i]);
sum += arr[i];
i++;
}
System.out.println("배열요소의 합 : " + sum);
예제 07) 최대값 최소값 구하기
//최대값을 찾아라
int[] arr = {50, 30, 40, 60, 70, 90, 100, 110, 20};
int i = 0;
int max = arr[0]; //최대값을 저장할 변수
while(i<arr.length) {
//조건 -> arr[i]가 max보다 크면 arr[i]를 max에 저장
if(arr[i] > max) {
max = arr[i];
}
i++;
}
System.out.println("최대값 : "+ max);
System.out.println("---------------");
//최소값을 찾아라
int j = 0;
int min = arr[0];
while(j<arr.length) {
if(min > arr[j]) {
min = arr[j];
}
j++;
}
System.out.println("최소값 : " + min);