DataScience Lab. 박사과정 김희찬 2017-02-14 (화) Big Data Analytics Short Courses 주요 제어문 I DataScience Lab. 박사과정 김희찬 2017-02-14 (화)
프로그래밍이란? 내가 원하는 모양대로 레고를 조립하는 것과 같음 원하는 바를 만드려면 각 블록이 어떻게 생겼는지 무슨 색인지 어떻게 움직이는지 알아야함
프로그래밍이란? 그렇지 못할 경우에는 프로그램이 원하는대로 구동이 안되거나 구동 자체가 안됨
조건문 만약 ~라면? ~하기 if ( condition ) statement; if ( condition ) 조건(condition)에 어떤 표현을 적고 boolean 형이 true면 statement를 실행 아니면 넘어감 1 > 2 또는 else로 분기 condition evaluated false if ( condition ) statement; statement true if ( condition ) statement; else
조건문 조건에 따라 다른 동작을 수행 시나리오 1 시나리오 2 조건의 범위는 메소드와 마찬가지로 { } 로 구분함 변수가 0보다 크면? A를 출력하고 그 이외에는 B를 출력 시나리오 2 변수가 5보다 크면? A를 출력하고, 5보다는 작으나 0보다 크면? B를 출력하고 그 이외에는 C를 출력 조건의 범위는 메소드와 마찬가지로 { } 로 구분함
조건문 이중, 삼중 조건문? 2의 배수이면서 5의 배수라면? 조건문 내에 새로운 조건문을 넣어서 여러 분기를 만들 수 있음
반복문 유사한 작업을 반복하기 위하여 사용 모든 반복분은 아래와 같은 설정이 필요함 반복문은 세 종류의 형태가 존재 시작 설정 지속 여부 조건 Boolean 형태의 어느 것이든 가능 반복문은 세 종류의 형태가 존재 While loop Do ~ while loop For loop
반복문 while ( condition ) statement; While loop 조건 판단 참이면 Statement 실행 실행 후 다시 조건 판단 아니면 넘어감 condition evaluated while ( condition ) statement; false statement true
반복문 do { statement; } while ( condition ); Do ~ while loop 조건 판단 참이면 Statement 재실행 아니면 넘어감 statement do { statement; } while ( condition ); true condition evaluated false
반복문 While loop 특정 문장을 열 번 출력하고 싶다면? 한번 출력하고 하나 세고, 한번 출력하고 둘 세고, …. 숫자를 저장할 공간을 먼저 만들어야겠죠? 열 번째를 세고 멈추면 됨
반복문 Do ~ while loop 지속 여부 조건을 처음 한 번은 무시하고 일단 실행한 후 조건을 확인하고 싶을 때 사용 지속 여부 조건을 처음 한 번은 무시하고 일단 실행한 후 조건을 확인하고 싶을 때 사용 일단 한번은 실행되는 것을 확인할 수 있음 아래 While loop은 한 번도 실행되지 않음
배열 연속적인 변수의 묶음 동일한 자료형으로 생성 가능 유사한 의미의 변수끼리 묶는 것을 권장 { }를 이용하여 표현함 동일한 자료형으로 생성 가능 유사한 의미의 변수끼리 묶는 것을 권장 배열의 접근 방법은 index를 이용함. []로 표현 0 이 시작 위치 arr[0] -> 1 arr[1] -> 2 arr[2] -> 3 arr int[ ] arr = {1,2,3 }; int a = 1; int b = 2; int c = 3; 1 2 a b c 1 2 3 3 arr arr[0] 1 arr[1] 2 arr[2] 3
배열 반복문을 이용한 배열 탐색 탐색이란? 변수의 내용을 들여다 보는 것을 가리킴. 접근과 같음. Continue의 응용
배열 배열 생성 시 빈 칸만 생성하고 이후 데이터 삽입 가능 배열은 반드시 크기를 지정해야함, 이후 크기 변경 불가능 데이터가 늘어나는 것에 대하여 대응할 수 없음 이러면 엄청 불편하잖아…
직접 해보기! 1에서 100까지 더하기 구구단 만들어보자 1~9까지 각각 1~9까지 곱한 후 출력!
직접 해보기! 윤년 찾기 윤년은 1년이 정확히는 365.2422일이기 때문에 이를 보정하기 위하여 대략 4년에 한번씩 윤년을 넣어 이를 보정하는 것 윤년의 조건은 다음과 같음 4의 배수인 해는 윤년임 100의 배수인 해는 윤년에서 뺌 400의 배수인 해는 도로 윤년으로 함 다음 데이터를 테스트 윤년 2002, 2008 비윤년 1997, 2100 필요한 변수는? 입력 연도 필요한 제어문은? 다중 if문
직접 해보기! 소수 찾기 특정 숫자를 입력으로 받아서 1부터 입력받은 숫자 사이의 소수를 찾자 에라토스테네스의 체 방법을 사용 찾고자 하는 범위의 자연수를 나열 2부터 시작하여, 2의 배수를 지움 다음 소수의 배수를 모두 지움 필요한 변수는? 입력된 숫자만큼의 크기를 가지는 boolean array WHY? 필요한 제어문은? for문 if문 mod %
THANKS