본문 바로가기

코딩 국비수업들으며 느끼는점

1주일차: 예습 이제부터 무조건 해야겠다.. 안하면 못 따라갈거같은 느낌

뭔가 큰일난거 같다ㅋㅋㅋㅋㅋ쿠ㅜ 배워도 나혼자 안보고 코딩식을 못만드니 문제 아닌가?

1주일까지는 뭘 공부해야될지 몰라서 그냥 수업외에는 따로 공부 안했는데

오늘부터는 뭔가 해야될거같다. 오늘 밥 먹고 카페 가야겠다. 집에서 가면 또 유튜브 인강 안보니까

 

오늘부터 이것이 자바다 유튜브 강의 봐야겠다
https://youtu.be/5iC4SZzKXNU

https://www.youtube.com/watch?v=NQq0dOoEPUM&t=48s 

 

 

 

 

프로젝트: 나이, 성별, 카드 따라 할인

package kr.or.ksmart.A;

public class List {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//String result = check(20,'남',"신한");    // 신한카드 할인을 받아 결제 할 경우
		//String result = check(25,'여',"농협");   // 할인 없이 결제 할 경우
		//String result = check(80,'여',"농협");    // 경로 할인울 받아 결제 할 경우
		String result = check(80,'여',"전북");    // 경로 할인 & 신한 할인 둘 다 가능한 경우 -> 할인율이 높은 30%만 적용
		System.out.println(result + "<-result변수에 입력된 값");
		cardShinhan(result);
	}
	
	public static void cardShinhan(String result) {
		if(result.equals("신한")) {
			System.out.println("24,000원이 결제 되었습니다.");
		}else if(result.equals("제외")){
			System.out.println("30,000원이 결제 되었습니다.");
		}else if(result.equals("경로")){
			System.out.println("21,000원이 결제 되었습니다.");
		}		
	}
	
	
	public static String check( int age, char gender, String card) {
		System.out.println("입력받은 나이 : "+age);
		System.out.println("입력받은 성별 : "+gender);
		System.out.println("입력받은 카드이름 : "+card);
		String dbcard= null;
		
		if(age > 19 && age <= 64) {
			System.out.println("예약 가능합니다.");
			if(gender == '남') {
				System.out.println("남성칸 전용으로 선택되었습니다.");
				if (card == "신한") {
					System.out.println("신한 카드 결제 : 20% 할인을 받으실 수 있습니다. (할인 중복 불가능)");  
					dbcard = "신한";
					// 20% 할인 이라는 값을 굳이 리턴 안하고 여기에 20% 할인 대상자 라는 문자열을 출력하게 해서 그냥 바로 끝낼 수 있어요.. 굳이 리턴을 할 필요가 없는...
					// 그래서 제가 그냥 임의로 여기에 그냥 20% 할인 출력시키고 따로 리턴 부분을 가격으로 수정했어요
				}else {
					System.out.println("할인 혜택이 없습니다.");			
					dbcard = "제외";
					// 여기에도 할인 대상자 아님 이라는 문자열을 출력하게 해서 그냥 리턴 안하고 바로 끝낼 수 있어요.
				}
			}else if(gender == '여') {
				System.out.println("여성칸 전용으로 선택되었습니다.");
				if (card == "신한") {
					System.out.println("신한 카드 결제 : 20% 할인을 받으실 수 있습니다. (할인 중복 불가능)");  
					dbcard = "신한";
					// 20% 할인 이라는 값을 굳이 리턴 안하고 여기에 20% 할인 대상자 라는 문자열을 출력하게 해서 그냥 바로 끝낼 수 있어요.. 굳이 리턴을 할 필요가 없는...
					// 그래서 제가 그냥 임의로 여기에 그냥 20% 할인 출력시키고 따로 리턴 부분을 가격으로 수정했어요
				}else {
					System.out.println("할인 혜택이 없습니다.");			
					dbcard = "제외";
					// 여기에도 할인 대상자 아님 이라는 문자열을 출력하게 해서 그냥 리턴 안하고 바로 끝낼 수 있어요.
				}
			}
		}else if(age >= 65) {
			if(gender == '남') {
				System.out.println("남성칸 전용으로 선택되었습니다.");
			}else if(gender == '여') {
				System.out.println("여성칸 전용으로 선택되었습니다.");
			}
			System.out.println("경로 할인 혜택 : 30% 할인을 받으실 수 있습니다. (할인 중복 불가능)");
			dbcard = "경로";  // 할인 가격을 리턴하려고 여기에도 제가 임의로 추가 했습니다.
			
		}else if(age <=19) {
			System.out.println("미성년자는 예약 할 수 없습니다.");
		}
		return dbcard;
	}
	
}

/*기차표 예약
[기존에 했었던 과정]
입력 받는 값 : 성별 / 나이 / 카드사
1번 조건 나이 : 19 < age <= 64  일때 예약 가능.
 			 65 <= age 일때 경로 할인으로 예약 가능.  (30% 할인)
 			 age <= 19 일때 예약 불가능.
			 
2번 조건 성별 : gender = 남자 일때 남성칸 전용으로 선택되었습니다..
			 gender = 여자 일때 여성칸 전용으로 선택되었습니다..
			 
3번 조건 카드사 : card = 신한 일 때 할인 혜택이 존재합니다.   (20% 할인)
               else -> 할인 혜택이 존재하지 않습니다.
			 
[리턴/입력 처리 과정]
1. 경로 할인 30% 대상입니다.   -> 21,000원
2. 카드사가 신한일 경우 20% 할인 대상입니다.  -> 24,000원
3. 할인 혜택이 없습니다.   -> 30,000원
*/