교육 2일차

권재현·2021년 3월 16일
0

교육

목록 보기
2/49

switch

사용법

가로안에 (값) 과 case 옆에 값1이 같으면 내용 1부터 실행된다.

사진에는 break;가 없지만, break를 써줘야 동작 중인 구문이 종료된다.

만약 break; 가 없다면, 내용 1 실행 후, 종료 되지 않고 값 2 내용도 실행된다.

public static void main(String[]args) {
		int a = 1;
		
		switch(a) {
		case 1: System.out.println(" 결과 값은 1이다.");
			 	
		case 3: System.out.println("결과 값은 3이다.");
				break;
		case 5: System.out.println("결과 값은 5이다.");
				break;
		default : System.out.println("기본이다.");
		}
        //주의 사항 예시 보여주기
        //case1에 밑에  break;가 없어서 
        //출력 값: 결과 값은 1이다.
		//결과 값은 3이다.
        
  • case 값의 해당하는 내용만 출력해야되기 때문에 break;를 꼭 써줘야한다.
  • break; 선택 시 switch에 회색 빛깔이 들어온다.
    • 회색 빛깔의 의미는 어디에 영향을 받고 있다는 의미다.

if 와 switch

  • if문은 범위 형태 처리 시 적합하다.
  • switch문은 고정 값 처리에 적합하다.

​ 예시를 통해 보면 바로 이해가 된다.

int score= 95;
//if문	
// 성적을 출력. A : 90 ~ 100, B : 80 ~ 89 
		if(score >= 90  ) {
			System.out.println("성적은 A 입니다.");
		} else if(score >= 80 ) {
			System.out.println("성적은 B 입니다.");
		}

//switch
	switch(score/10) {
        case 10: case 9:
			System.out.println("성적은 A입니다.");
			break;
		case 8:
			System.out.println("성적은 B입니다.");
			break;

if문의 경우 범위 설정만 해주면 끝이지만, switch의 경우는 고정 값으로 조건이 처리되, if문처럼하기 위해서는 조건이 필요하다.
그래서 switch문에 조건식을 보면 score를 고정값에 맞게 하기 위해서 10으로 나눠서 고정 값을 얻는 과정이 더 있다.
위에 과정을 보면 범위 설정으로 if문이 편하다는 생각이든다. 무조건!!
사실 나는 10으로 나눠서 고정 값을 얻는 과정을 내가 풀지는 못했다.
그래서 얻은 결론은 처음에는 공책에 풀이해서 규칙을 찾아보자 라는 교훈을 얻었다.

다항연산

 문제 나오면 그래프 그려보자!!

  • &&(and) : 두개의 조건이 true일 때 true.
  • ||(OR) : 둘 중 하나라도 true 일 때 true.
    다시 한번 강조한다 헷갈려 하지말고 그려보자

반복문

  • 특정 작업을 지정된 횟수만큼 실행 하는 것.

  • 반복의 3가지요소 : 초기값, 조건, 증감값
    while문은 조건이 true이면
    1. 내용을 실행한다.
    2. 다시 조건으로 이동한다.
    3. 조건이 true이면 다시 내용을 실행하고, false 시 while문은 종료한다.

  • while문 사용 시 주의 할 점
    * 초기값은 while 밖에 존재하고, 증감값은 내용에 존재한다.

예시

public static void main(String[]args) {
	int a = 1; //초기값
	
	while(a < 10) {
		System.out.println("결과 값 2*"+a+"="+2*a);
		a++;  //끝나야 하니까 증감값 필요
	}

do while

  • 사용빈도가 높지는 않다.1. 내용을 실행한다.
    2. 조건이 true이면 내용 실행한다.
    3. 조건이 false이면 do while을 종료한다.

예시

int a = 10;
do {
 	System.out.println(a);
	} while(a < 5);
System.out.println("a = 10 이기때문에 do while문을 빠져나와 실행입니다. ");

// 출력: 10
//		a = 10 이기때문에 do while문을 빠져나와 실행입니다.

예시에서 확인 가능하듯이 일단 a를 먼저 출력하고 조건을 비교해서 충족을 못해서, 밑에 ' a = 10 이기때문에 do while문을 빠져나와 실행입니다.' 가 출력된 것을 확인 할 수있다.

for문

  • 가장 빈번하게 사용 이유는 초기값,조건, 증감값이 다 나와서, 결과를 예측하기 용이하다.
  • 양식 for(초기값; 조건; 증감값)
    1. 초기값 할당
    2. 조건이 true면 내용 실행
    3. 증감값을 적용하고, 조건을 확인
    4. 조건이 true이면 실행, false이면 for문을 종료한다.

예시

	for(int i = 1; i < 10 ; i++) {
    	//초기값 :1 조건식: i < 10; 증감값: i++
		if( i % 2 == 1) 
        	{ //홀수 값: 1,3,5,7,9
			continue;
		}
		System.out.println(i);
		}
//출력: 2,4,6,8

풀이

1. i 는 1부터 9까지 이다.

2. if문은 2로 나눴을 때 나머지 값 1이기 때문에 홀수를 이야기한다.

3. continue문은 조건을 충족시 실행을 멈추고 다시 증감값으로 돌아간다. 그래서 홀수 값들은 출력이 안된다

4. continue문 때문에 출력은 짝수인 2,4,6,8만 출력된다.

2일차 느낀점

솔직히 재밌다. 그냥 재밌다. 문제 풀때 마다 많은 고난 과 시련이 오지만, 그럼에도 불구하고 재밌다.

이제 2일 차이긴 하지만, 배우는 게 상당히 많다.

잘 기록해 놓아, 기본이 탄탄한 사람이 되자!!

profile
호텔리어 출신 비전공자

0개의 댓글