프로그래밍 공부/JAVA
반복문 (for, while,do-while)
뚜뚜:)
2020. 10. 2. 20:10
반복문
- for문
- while문
- do-while문
for문
- for(초기화; 조건식; 증감식){}
- 횟수가 정해진 경우 사용
- 포함하고 있는 문장들을 정해진 횟수만큼 반복하게 해주는 문장
해석순서
1. 초기화 -> 조건식(참) -> { 수행될 문장} -> 증감식 (조건만큼 증감되다 조건에 false가 나오면 조건문 탈출)
2. 초기화 -> 조건식(거짓)-> 조건문 빠져나감
예제 구구단을 출력해주세요.
// 구구단출력
//2단 출력
for (int i = 1; i <= 9; i++) {
System.out.println("2 * " + i + " = " + i * 2);
}
//(앞의 값 + 두번째 값 ( 1씩 증가이므로 i) + "" +i *(규칙적인 증가값));
//7단 출력
for (int i = 1; i<= 9; i++){
System.out.println(" 7* " + i + " = " + i * 7);
}
//2단부터 9단까지
//여러개일 경우 for을 감싸는 또다른 for문(중첩 for문)
for(int i = 2; i<=9; i++){ //2부터 9까지의 고정된값
for(int j= 1; j <=9; j++){ //값이 1씩 증가 (규칙)
System.out.println(i + " * " + j + " = " + i * j);
}
}
while문
- while(조건식){} (조건식만 있는것)
- 조건식이 true인 경우 반복
- 포함하고 있는 문장들을 조건식이 만족하는 동안 반복하는 문장
- '반복횟수가 정확하지 않은' 경우에 주로 사용한다.
a에 2씩 몇번 곱해야 1000이상이 되는지 알아보자.
int a = 1;
int count = 0;
while(a < 1000){
a *= 2;
count++;
System.out.println(count + " : "+a);
}
do-while문
- do{}while(조건식);
- 최소한 한번의 수행을 보장한다.(조건값이 false여도)
예제. 숫자맞추기 게임
숫자 맞추기 게임
//1-100 랜덤한 수 맞추기
int answer = (int)(Math.random() * 100) + 1; //1~100랜덤수
int input = 0;
Scanner s = new Scanner(System.in);
do{
System.out.print("1~100 사이의 수를 입력해주세요>");
input = Integer.parseInt(s.nextLine());
if(answer < input){
System.out.println(input + "보다 작습니다.");
}else if(input < answer){
System.out.println(input + "보다 큽니다.");
}else {
System.out.println("정답입니다!!");
}
}while(input != answer);