본문 바로가기
국비지원/JAVA

[JAVA] 3-2. 제어문

by cosmog 2022. 9. 22.
반응형
제어문

1. 조건문 if ~ else

if(조건) {
        조건이 참이면 실행
} else {
       조건이 거짓이면 실행
}

➰ if~else 문 활용하여 60점 이상 합격 판별을 만들어보았다.

public class IfEx {
	public static void main(String[] args) {
		
		//0~100까지 랜덤값
		int point = (int)(Math.random() * 101);
		
		System.out.println("점수: " + point);
		
		//점수가 60이상이라면 합격/불합격
		if( point >= 60 ) {
			System.out.println("60점 이상입니다.");
			System.out.println("합격입니다.");
		} else {
			System.out.println("불합격입니다.");
		}
		
		/* else구문으로 대체 가능.
		if (point < 60) {
			System.out.println("60점 미만입니다.");
			System.out.println("불합격입니다.");
		}
		*/
	}
}

Quiz - if문을 통해 놀이기구 탑승 가능/불가능 판별

public class Quiz02 {
	public static void main(String[] args) {
		//결과값을 보여주고 코딩하기~!
		//키가 140이상이고, 나이가 8세 이상이라면 탑승 가능, 아니라면 탑승 불가능.
		Scanner scan = new Scanner(System.in);
		
		System.out.println("키와 나이를 입력하세요");
		
		System.out.println("키(실수)> ");
		double height = scan.nextDouble();
		
		System.out.println("나이(정수)> ");
		int age = scan.nextInt();
		
		if(height >= 140 && age >= 8) {
			System.out.println("놀이기구 탑승이 가능합니다.");
		} else {
			System.out.println("놀이기구 탑승이 불가능합니다.");
		}
		
		scan.close();
	}
}

Quiz - if문을 통해 짝수/홀수 판별

public class Quiz03 {
	public static void main(String[] args) {
		
		//정수를 하나 입력 받습니다.
		//이 정수가 짝수 인지 홀수인지 if문을 통해서 구분해보세요
		
		Scanner scan = new Scanner(System.in);
		System.out.print("정수를 입력> ");
		int i = scan.nextInt();
		
		if(i % 2 == 0) {
			System.out.println("짝수입니다.");
		} else {
			System.out.println("홀수입니다.");
		}
		
		scan.close();
	}
}

 

2. 다중 분기 조건문 if ~ else if ~ else

if(1조건) {
     1조건에 맞으면 동작
} else if(2조건) {
     2조건에 맞으면 동작 else if문은 계속 추가 가능하다.
} else {
     else구문을 붙일 수도, 붙지 않을 수도 있다.
}
  • 조건에 맞는 것이 있다면 실행하고 빠져나온다. 전부 확인하지는 않음~
  • else if문은 조건의 순서를 잘 생성해야 한다. 안그러면 쓸데 없이 시간만 많이 사용할 수 있으니까.

➰ if ~ else if ~ if 문을 활용하여 학점계산기를 만들어보았다.

public class IfEx02 {
	public static void main(String[] args) {

		// 입력받은 정수에 따라서 A,B,C,D,F로 출력
		Scanner scan = new Scanner(System.in);

		System.out.print("정수>");
		int point = scan.nextInt();
		String grade = null; // null은 없는값.

		if (point >= 90) {
			//조건 검사 또
			if(point >= 95) {
				grade = "A+";
			}else { // 90~94
				grade = "A0";
			}
		} else if (point >= 80) { //80~89
			grade = "B";
		} else if (point >= 70) {
			grade = "C";
		} else if (point >= 60) {
			grade = "D";
		} else {
			grade = "F";
		}
		System.out.println(grade);

		scan.close();
	}

}
  • if문은 중첩가능하다. (if문 안에 if문 사용가능~)

Quiz - 입력값이 0/홀수/짝수/음수를 구별하는 else if구문

import java.util.Scanner;

public class Quiz04 {
	
	public static void main(String[] args) {
		/*
		 * 정수를 하나 입력받습니다.
		 * 입력받은 값이 0인지, 홀수인지, 짝수인지, 음수인지 구별하는 else if문
		 */
		Scanner scan = new Scanner(System.in);
		System.out.print("정수를 입력하세요\n>");
		int i = scan.nextInt();
		
		if(i == 0) {
			System.out.println("0입니다.");
		} else if (i < 0) {
			System.out.printf("%d은 음수입니다.", i);
			//System.out.println(i + "은 음수입니다.");
		} else if (i % 2 == 0) {
			System.out.printf("%d은 짝수입니다.", i);
		} else {
			System.out.printf("%d은 홀수입니다.", i);
		}
		
		scan.close();
	}

}

➰ if문으로 3개의 정수의 max/mid/min값을 구하기

import java.util.Scanner;

public class Quiz05 {
	public static void main(String[] args) {
		
		/*
		 * 정수 3개를 각각 입력을 받습니다.
		 * 같은 정수는 없다고 가정을 합니다.
		 * 
		 * 가장 큰 값/중간값/가장 작은 값을 구분해서 출력.
		 * 
		 */
		
		Scanner scan = new Scanner(System.in);
		int a = scan.nextInt();
		int b = scan.nextInt();
		int c = scan.nextInt();
		
		int max = 0, mid =0, min = 0;
		
		if(a>b && a>c) { //a가 max
			max=a;
			if(b<c) {//acb
				mid=c;
				min=b;
			}else {//abc
				mid=b;
				min=c;
			}
		}else if(b>a && b>c){//b가 max
			max=b;
			if(a<c) {//bca
				mid=c;
				min=a;
			}else {//bac
				mid=a;
				min=c;
			}
		}else if(c>a && c>b) {//c가 max
			max=c;
			if(a<b) {//cba
				mid=b;
				min=a;
			}else {//cab
				mid=a;
				min=b;
			}
		}
		
		System.out.println("가장 큰 값은"+ max);
		System.out.println("중간 값은"+ mid);
		System.out.println("가장 작은 값은"+ min);
		
		scan.close();
	}

}

하... 살짝 머리아팠다... 힌트를 보고서야 코드를 완성할 수 있었다.😞

분발합시도....

반응형

'국비지원 > JAVA' 카테고리의 다른 글

[JAVA] 4-1. 조건문 switch 활용  (0) 2022.09.23
[JAVA] 3-3. 조건문  (0) 2022.09.22
[JAVA] 3-1. 배열  (0) 2022.09.22
2-6. Quiz  (0) 2022.09.22
[JAVA] 2-5. 입력받기 (Scanner사용)  (0) 2022.09.22