if(score) {
System.out.println("합격입니다.");
System.out.println("축하드립니다.");
}
- score가 참이면 합격입니다. 축하드립니다. 출력
- score가 거짓이면 아무런 값도 출력되지 않는다
int i = 10;
while(i-- > 0) {
System.out.println(i);
}
- while문의 (조건)이 참일 때 까지 {}가 반복 실행
- 10 9 8 7 6 5 4 3 2 1 // 출력
- 조건이 거짓이면 한번도 실행되지 않는다
조건식의 다양한 예
블럭({})
- 여러 문장을 하나로 묶어주는 것
if (조건식) {
// 조건식이 참(true)일 때 수행될 문장들을 적는다
}
if ( score > 60) {
System.out.println("합격입니다");
}
if (조건식) {
// 조건식이 참일 때 수행될 문장들을 적는다
} else {
// 조건식이 거짓일 때 수행될 문장들을 적는다
}
if ( score > 60) {
System.out.println("합격입니다");
} else {
System.out.println("불합격입니다");
}
if (조건식1) {
// 조건식1의 연산결과가 참일 때 수행될 문장들을 적는다.
} else if (조건식2) {
// 조건식2의 연산결과가 참일 때 수행될 문장들을 적는다.
} else if (조건식3) {
// 조건식3의 연산결과가 참일 때 수행될 문장들을 적는다.
} else { // 마지막은 보통 else 블럭으로 끝내며, else 블럭은 생략 가능
// 위의 어느 조건식도 만족하지 않을 때 수행될 문장들을 적는다.
}
if ( score > 90) {
System.out.println("1지망 합격입니다");
} else if (score > 80) {
System.out.println("2지망 합격입니다");
} else if (score > 70) {
System.out.println("3지망 합격입니다");
} else if (score > 60) {
System.out.println("4지망 합격입니다");
} else {
System.out.println("불합격입니다");
}
if (조건식1) {
if (조건식2) {
// 조건식1과 조건식2가 모두 true일 때 수행될 문장들
} else {
// 조건식1이 true이고, 조건식2가 false일 때 수행되는 문장들
}
} else {
// 조건식1이 false일 때 수행되는 문장들
}
if (score > 60) {
if (score > 80) {
System.out.println("1급 합격입니다");
} else {
System.out.println("2급 합격입니다");
}
} else {
System.out.println("불합격입니다");
}
switch (조건식) {
case 값1 :
// 조건식의 결과가 값1과 같은 경우 수행될 문장들
// ...
break;
case 값2 :
// 조건식의 결과가 값2와 같은 경우 수행될 문장들
// ...
break;
default :
// 조건식의 결과와 일치하는 case문이 없을 때 수행될 문장들
// ...
}
switch(month) {
case 3 :
case 4 :
case 5 :
System.out.println("봄");
break;
case 6 : case 7 : case 8 :
System.out.println("여름");
break;
case 9 : case 10 : case 11 :
System.out.println("가을");
break;
default :
System.out.println("겨울");
}
- 초기화는 가장 먼저 딱 한번 실행된다
- 조건 -> 수행 -> 증감이 조건이 참일 때 까지 수행되며 거짓이면 종료된다
for (초기화; 조건식; 증감식) {
수행될 문장
}
for (int i = 0; i < 10; i++) {
System.out.println(i);
}
// 0 1 2 3 4 5 6 7 8 9
for (int i = 0; i < 10; i = i+2) {
System.out.println(i);
}
// 0 2 4 8
// 각 자리수의 합
int num = 0, sum = 0;
System.out.print("숫자를 입려가세요.(예:1234)>");
Scanner scanner = new Scanner(System.in);
String tmp = scanner.nextLine();
num = Integer.parseInt(tmp);
for(num; num > 0; num = num / 10) {
// num을 1-으로 나눈 나머지를 sum에 더함
sum += num%10; // sum = sum + num % 10;
System.out.printf("sum=%3d num=%d%n",sum, sum);
}
System,out.println("각 자리수의 합 : "+sum);
for (초기화; 조건식; 증감식) {
for (초기화; 조건식; 증감식) {
수행될 문장
}
}
for (int i = 2; i <= 9; i++) {
for (int j = 1; j <= 9; j++) {
System.out.println(i + "X" + j + "=" + i*j);
}
}
// 구구단
for (int i = 1; i <= 10; i++) {
for (int j = 1; j <= i; j++) {
System.out.print("*");
}
System.out.println();
}
// 반 피라미드
while (조건식) {
// 조건식의 연산결과가 참(true)인 동안, 반복될 문장들을 적는다
}
int i = 5; // 반복 횟수
while (i-- != 0) {
System.out.println(i);
}
// 4 3 2 1 0
// 각 자리수의 합
int num = 0, sum = 0;
System.out.print("숫자를 입려가세요.(예:1234)>");
Scanner scanner = new Scanner(System.in);
String tmp = scanner.nextLine();
num = Integer.parseInt(tmp);
while(num != 0) {
// num을 1-으로 나눈 나머지를 sum에 더함
sum += num%10; // sum = sum + num % 10;
System.out.printf("sum=%3d num=%d%n",sum, sum);
sum /= 10; // num을 10으로 나눈 값
}
System,out.println("각 자리수의 합 : "+sum);
do {
// 조건식의 연살결과가 참일 때 수행될 문장들을 적는다.(처음 한 번은 무조건 실행)
} while (조건식);
int input = 0, answer = 0;
answer = (int)(Math.random()*100)+1;
Scanner scanner = new Scanner(System.in);
do {
System.out.println("1과 100사이의 정수를 입력하세요.>");
input = scanner.nextInt();
if(input > answer) {
Sustem.out.println("더 작은 수로 다시 시도해보세요.");
} else if (input < answer) {
System.out.println("더 큰 수로 다시 시도해보세요.");
}
} while(input != answer);
System.out.println("정답입니다");
// while문으로 변경
int input = 0, answer = 0;
answer = (int)(Math.random()*100)+1;
Scanner scanner = new Scanner(System.in);
System.out.println("1과 100사이의 정수를 입력하세요.>");
input = scanner.nextInt();
while(input != answer) {
if(input > answer) {
Sustem.out.println("더 작은 수로 다시 시도해보세요.");
} else if (input < answer) {
System.out.println("더 큰 수로 다시 시도해보세요.");
}
System.out.println("1과 100사이의 정수를 입력하세요.>");
input = scanner.nextInt();
}
System.out.println("정답입니다");
while(true) {
if (sum > 100)
break;
++i;
sum += i;
for (int i = 0; i <= 10; i++) {
if (i%3 == 0)
continue;
System.out.println(i);
}
// 1 2 4 5 7 8 10
// for문에 Loop1이라는 이름을 붙여준다
Loop1 : for(int i = 2; i <= 9; i++) {
for (int j = 1; j <= 9; j++) {
if(j==5)
break Loop1;
// break;
// continew Loop1;
// continue;
System.out.println(i + "X" + j + "=" + i*j);
} // end of for i
System.out.println();
} // end of Loop1
// 2 X 1 = 2, 2 X 2 = 4, 2 X 3 = 6, 2 X 4 = 8