1. 제어문: 명령의 흐름을 변경하는 명령어
if : 조건에 따라 분기를 수행하는 명령어
단순 if 문
if 와 else
if 와 if else 와 else
~라면, ~이면
실습) 점수에 따른 결과 출력 (수우미양가)
import java.util.Scanner;
public class ControlTest {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("점수를 입력하세요: ");
int score = sc.nextInt();
if(score>=90) {
System.out.println("결과: 수");
}
else if(score>=80) {
System.out.println("결과: 우");
}
else if(score>=70) {
System.out.println("결과: 미");
}
else if(score>=60) {
System.out.println("결과: 양");
}
else {
System.out.println("결과: 가");
}
}
}
실습) 저장된 ID 와 PW 체크
* 문자열 비교 방법: string형변수.equals("ID"); // 대, 소문자도 정확히 지켜줘야한다.
import java.util.Scanner;
public class CheckAccout {
public static void main(String[] args) {
Scanner sc= new Scanner(System.in);
String id = "id";
String pw = "*1234";
System.out.print("id를 입력하세요: ");
String check_id = sc.nextLine();
System.out.print("pw를 입력하세요: ");
String check_pw = sc.nextLine();
System.out.println("");
if(check_id.equals("id")&&check_pw.equals("*1234")) {
System.out.println("로그인 되었습니다.");
}
else if(!check_id.equals("id")){
System.out.println("없는 ID 입니다.");
}
else{
System.out.println("PW가 틀렸습니다.");
}
}
}
2. switch
값에 의한 분기를 수행하는 명령어
정수와 문자열로만 가능
특정한 값만 선택하는 분기(메뉴)에 많이 이용
실습) 메뉴 선택하기(Switch문)
import java.util.Scanner;
public class SwtichTest {
public static void main (String args[]) {
Scanner sc = new Scanner(System.in);
System.out.println("1:소고기 쌀국수\n2:닭고기 쌀국수\n3:딤섬\n4:새우볼");
System.out.print("원하는 메뉴를 작성하세요: ");
int menu = sc.nextInt();
System.out.println("");
switch(menu) {
case 1: System.out.println("소고기 쌀국수"); break;
case 2: System.out.println("닭고기 쌀국수"); break;
case 3: System.out.println("딤섬"); break;
case 4: System.out.println("새우볼"); break;
default: System.out.println("잘못된 메뉴");
}
}
}
실습) 메뉴 선택하기(If문)
import java.util.Scanner;
public class SwtichTest {
public static void main (String args[]) {
Scanner sc = new Scanner(System.in);
System.out.println("1:소고기 쌀국수\n2:닭고기 쌀국수\n3:딤섬\n4:새우볼");
System.out.print("원하는 메뉴를 작성하세요: ");
int menu = sc.nextInt();
System.out.println("");
if(menu==1) {
System.out.println("소고기 쌀국수");
}else if(menu==2) {
System.out.println("닭고기 쌀국수");
}else if(menu==3) {
System.out.println("딤섬");
}else if(menu==4) {
System.out.println("새우볼");
}else {
System.out.println("잘못된 메뉴");
}
}
}
3. while 반복문
false가 될때까지 반복
실습) While 문 사용
public class WhileTest {
public static void main(String args[]) {
int i = 1;
while(i<=10) {
System.out.println("i= "+ i++);
}
}
}
실습) While 문 사용하여 1부터 입력한 숫자까지 합 구하기 & 평균 구하기
import java.util.Scanner;
public class SumTest2 {
public static void main (String args[]) {
Scanner sc = new Scanner (System.in);
int i = 1;
int sum =0;
System.out.print("원하는 숫자를 입력: ");
int num = sc.nextInt();
while(i<num+1) {
sum += i;
i++;
}
System.out.println("합 = "+sum);
System.out.println("평균 = "+(sum/(double)num));
}
}
실습) 실수 연산의 오류
public class Error {
public static void main (String args[]) {
int i =0;
double sum = 0;
while (i<1000) {
sum=sum+0.1;
i++;
}
System.out.println("sum= "+sum);
}
}
//위처럼 실수를 가지고 연산을 할 때는
//정수로 변경해서 연산해 결과를 얻고 난 후
//다시 실수로 변경하는 것이 좋다.
실습) 실수 연산의 오류 - 해결방법
public class Error {
public static void main (String args[]) {
int i =0;
double sum = 0;
while(i<1000) {
sum=sum+1;
i++;
}
System.out.println("sum= "+sum/10.0);
}
}
4. for 문
실습) for 문을 이용한 1부터 10까지의 합
public class ForTest {
public static void main(String args[]) {
int i;
int sum=0;
for(i=1;i<=10;i++) {
sum+=i;
}
System.out.println("sum= "+sum);
}
}
5. do ~ while
반복을 처리하기 위한 명령어
~ 할때까지
6. 기타
1) 제어문 안에서 수행되는 내용이 1줄 일때는 { } 를 생략해도 됩니다.
-> 생략 가능하지만 { } 하는 것이 코드를 읽을 때 좋습니다.
2) 제어문 안에서 만든 변수는 제어문 안에서만 사용이 가능하다.
3) 제어문 안에 제어문 사용이 가능
'IT > JAVA (17.12.18~)' 카테고리의 다른 글
6일차 JAVA(6) (0) | 2017.12.26 |
---|---|
5일차 JAVA(5) (0) | 2017.12.22 |
3일차 JAVA (3) (0) | 2017.12.20 |
2일차 JAVA (2) (0) | 2017.12.19 |
1일차 OT 와 JAVA (1) (0) | 2017.12.19 |