Java 기초 제어문 - while문
728x90
기본 환경
JDK : 1.8.0_261 버전 JRE : 1.8.0_261 버전 JAVA VERSION : 8 업데이트 261 Eclipse IDE VERSION : 2020-06버전 |
목표
자바에서 사용하는 while문을 이해한다.
여러가지 사니리오를 구현함을을 통해 반복문에 대한 이해도를 높힌다.
코드
package ex04controlerstatement; public class E03While { /* while문 : 반복의 횟수가 정해져있지 않을때 주로 사용하는 반복문 반복의 횟수가 명확할때는 주로 for 문을 사용한다. 형식] 반복을 위한 변수의 초기값 선언; while(반복의 조건){ 실행문'; 반복을 위한 변수의 즏증감식; <= 반복문 탈출을 위한 ++, --와 같은 연산이 필요. } 반복의 조건이 false일때 while문을 탈출한다. */ public static void main(String[] args) { //누적합을 저장하기 위한 변수 선언. 증가하는 i를 누적해서 더함. int sum = 0; //반복을 위한 변수선언 및 초기화 int i = 1; while(i <= 10) { //반복의 조건 설정. i가 11 이상이면 탈출. //증가되는 i를 sum에 누적해서 더한(1+2+3...) sum += i; //while문을 탈출하기 위한 조건을 위한 증가연산 i++; } System.out.println("1 ~ 10까지의 합은 :" + sum); /* 시나리오] 구구단을 출력하는 프로그램을 작성하시오. 단 while문을 이용하시오. */ int dan = 2; //단 while(dan < 10) { //단은 2~9까지 증가함 int su = 1; //수(하나의 단을 출력한후 단이 증가하면 수는 1로 초기화됨) while(su < 10) { //System.out.println(dan + "*" + su + "=" + (dan*su)); //두개의 메모리를 잡아두기위해 2를 넣고 왼쪽 정렬을 하기 위해 -을 넣는다. //정렬을 위한 %-d System.out.printf("%-2d*%-2d=%2d", dan, su, (dan*su)); System.out.printf(" "); su++; } System.out.println(); dan++; } /* 시나리오] 1부터 100가지의 정수중 3배수이거나 5배수인 수의 합을 구하는 프로그램을 while문을 이용해 작성하시오. */ int num = 1; int add = 0; while(num <= 100) { if(num % 3 == 0 || num % 5 == 0) { add += num; } num++; } System.out.println("3과 5의 배수의 합 : " + add); /* 시나리오] 아래와 같은 모양을 출력하는 while문을 작성하시오 출력결과 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 */ int k = 1; while(k <= 4) { int j = 1; while(j <= 4) { if(k == j) { System.out.printf("1 "); } else { System.out.printf("0 "); } j++; } System.out.println(); k ++; } } }
드디어 반복문 등장입니다. 처음 등장한 반복문은 while문입니다(두둥) 반복문은 크게 while문이랑 for문이 있는데 두가지의 차이점은 주석에 while문은 몇번 반복할지 모를때... for문을 몇번 반복할지 알 때..쓴다고 되어있지만 사실 상관은 없습니다. 근데 코딩하다보면 나도 모르게 저렇게 됩니다. 몇 번 반복하자가 머리속에 들어오면 나도 모르게 for문을 적고 있고 아 이거 걍 무한반복각이다 하면 저도 모르게 while문을 쓰고 있습니다. 밑에 여러가지 시나리오가 있는데 연습하시고 싶으신 분들은 코드 지우고 시나리오만 보고 한번 구현해 보세요 코드 결과 값은 아래에 띠어 놓겠습니다. printf문에 있는 %-2d는 -는 우측정렬 2는 2칸정도 자리를 확보해라라는 명령입니다. 보통 구구단 같이 칸을 일정하게 띠어야 할 때 사용합니다. 저걸 안쓰면 한자리 썻을 때랑 두자리 썼을 때랑 확보하는 칸이 달라서 칸이 엄청 밀려 모양이 이쁘게 완성되지가 않습니다.
결과 값

'Java > Java_기초부터 _끝까지' 카테고리의 다른 글
Java 기초 제어문 - for문 (0) | 2020.10.08 |
---|---|
Java 기초 제어문 - do-while문 (0) | 2020.10.07 |
Java 기초 제어문 - switch문 (0) | 2020.10.07 |
Java 기초 제어문 - if문(3) (0) | 2020.10.07 |
Java 기초 제어문 - if문(2) (0) | 2020.10.07 |
댓글을 사용할 수 없습니다.