Difference between r1.3 and the current
@@ -1,8 +1,84 @@
[새싹교실/2017/꽃밭/0328|◀이전수업]▒▒▒▒▒[새싹교실/2017/꽃밭/0404|다음수업▶]
[[TableOfContents]]
= 수업 내용 =
== 조건문 ==
프로그램을 만들다보면 '옵션'을 주고 싶을 때가 있습니다.
예를 들어 계산기를 만들 때, 다음과 같이 만든다고 칩시다.
attachment:cond_1.png?width=600&height=220
별 문제 없는 프로그램이지만, 입력을 할 때마다 사칙 연산 결과를 전부 보여주는 것은 어쩐지 불필요해 보입니다.
사용자는 곱셈 결과만 원할 수도 있고, 덧셈 결과만 원할 수도 있지요.
그럴 때 조건문을 쓰면 사용자에게 어떤 연산을 할지 선택하도록 할 수 있습니다.
attachment:cond_2.png?width=600&height=350
조건문의 구조는 이렇습니다.
attachment:cond_3.png?width=400&height=240
else문에는 조건이 붙지 않습니다. 왜냐하면 if도, else if도 아닐 때 실행되는 부분이기 때문이죠.
그 어느 조건도 맞지 않을 때 실행됩니다.
저 3개를 꼭 다 써야하는 건 아니구요, if만 쓸수도, else if까지만 쓸 수도 있습니다.
그리고 else if문은 여러 개 추가해서 쓸 수 있습니다.
이것을 벤 다이어그램으로 나타내 보았어요.
attachment:cond_diagram.png?width=220&height=200
그런데, if문 괄호 안의 '''조건'''은 어떻게 쓸까요??
그 때 사용하는 것이 바로 {{{{color:red}'''연산자'''}}}입니다.
== 연산자 ==
조건문을 작성하는 데 필요한 연산자들입니다.
'''관계, 비교''' 연산자이죠.
{{{
if( val < 3 ) // val이 3보다 작으면
if( val <= 3 ) // val이 3보다 작거나 같으면
if( val == 3 ) // val이 3이면(반드시 '=' 가 아닌 '=='를 써야한다!)
if( val != 3 ) // val이 3이 아니면
}}}
AND, OR, NOT 연산자도 있습니다.
'''논리''' 연산자라고 하죠.
{{{
if( 조건1 && 조건2 ) // 조건1과 조건2가 모두 참일 때
if( 조건1 || 조건2 ) // 조건1 혹은 조건2가 참일 때
if( !조건3 ) // 조건3가 거짓일 때
}}}
논리 연산자는 주로 관계비교 연산자와 결합해서 사용합니다.
{{{
if( (val > 1) && ( val < 3) ) // val가 1보다 크고 3보다 작을 때(1<val<3)
if( (val < 1) || ( val > 3) ) // val가 1보다 작거나 3보다 클 때
if( !(val == 2) ) // val가 2가 아닐 때; if( val != 2)와 동일한 의미
}}}
= 실습 =
사용자가 숫자 N을 입력하면
1부터 N까지 차례로 출력하되,
N의 약수 옆에는 'V'를 출력하는 프로그램을 작성하세요.
attachment:coding.png?width=220&height=200
* 슈도 코드
{{{
for( i : 1 ~ N )
i 출력
if( N % i == 0 )
옆에 V 표시
}}}
== 유진 ==
저번에 한 건 좀 어려웠는데, 오늘은 딱 적당한 난이도 였던거 같아요....ㅎㅎ
매번 잘 가르쳐 주셔서 감사하고, 열심히 할게요...ㅎ== 현지 ==
이번에 배운건 적절한 난이도여서 좋았고 재밌었어요!!
계속 열심히 배우겠습니당
== 혜민 ==수업시간에 교수님이 조건문에 대해서 말씀하실때 너무 다 알고 있다는 가정하에 수업하시는 것 같아서 이해가 안되었는데 오늘 조건문을 배우고 나니 정말 별거 아니였다는 것을 알게 되었다. 쉽게 이해가 되었고 생각보다 쉬운 내용인것 같다.
수업 피드백:이해가 쉽게 잘 되고 머리속에 쏙쏙 들어와요 ㅎㅎ
------------
[새싹교실/2017/꽃밭/0328|◀이전수업]▒▒▒▒▒[새싹교실/2017/꽃밭/0404|다음수업▶]
[새싹교실/2017] [새싹교실/2017/꽃밭]
1.1. 조건문 ¶
프로그램을 만들다보면 '옵션'을 주고 싶을 때가 있습니다.
예를 들어 계산기를 만들 때, 다음과 같이 만든다고 칩시다.
예를 들어 계산기를 만들 때, 다음과 같이 만든다고 칩시다.
[PNG image (34.99 KB)]
별 문제 없는 프로그램이지만, 입력을 할 때마다 사칙 연산 결과를 전부 보여주는 것은 어쩐지 불필요해 보입니다.
사용자는 곱셈 결과만 원할 수도 있고, 덧셈 결과만 원할 수도 있지요.
그럴 때 조건문을 쓰면 사용자에게 어떤 연산을 할지 선택하도록 할 수 있습니다.
사용자는 곱셈 결과만 원할 수도 있고, 덧셈 결과만 원할 수도 있지요.
그럴 때 조건문을 쓰면 사용자에게 어떤 연산을 할지 선택하도록 할 수 있습니다.
[PNG image (47.66 KB)]
조건문의 구조는 이렇습니다.
[PNG image (14.15 KB)]
else문에는 조건이 붙지 않습니다. 왜냐하면 if도, else if도 아닐 때 실행되는 부분이기 때문이죠.
그 어느 조건도 맞지 않을 때 실행됩니다.
그 어느 조건도 맞지 않을 때 실행됩니다.
저 3개를 꼭 다 써야하는 건 아니구요, if만 쓸수도, else if까지만 쓸 수도 있습니다.
그리고 else if문은 여러 개 추가해서 쓸 수 있습니다.
그리고 else if문은 여러 개 추가해서 쓸 수 있습니다.
이것을 벤 다이어그램으로 나타내 보았어요.
[PNG image (14.28 KB)]
그런데, if문 괄호 안의 조건은 어떻게 쓸까요??
그 때 사용하는 것이 바로 연산자입니다.
그 때 사용하는 것이 바로 연산자입니다.
1.2. 연산자 ¶
조건문을 작성하는 데 필요한 연산자들입니다.
관계, 비교 연산자이죠.
논리 연산자라고 하죠.
관계, 비교 연산자이죠.
if( val < 3 ) // val이 3보다 작으면 if( val <= 3 ) // val이 3보다 작거나 같으면 if( val == 3 ) // val이 3이면(반드시 '=' 가 아닌 '=='를 써야한다!) if( val != 3 ) // val이 3이 아니면AND, OR, NOT 연산자도 있습니다.
논리 연산자라고 하죠.
if( 조건1 && 조건2 ) // 조건1과 조건2가 모두 참일 때 if( 조건1 || 조건2 ) // 조건1 혹은 조건2가 참일 때 if( !조건3 ) // 조건3가 거짓일 때논리 연산자는 주로 관계비교 연산자와 결합해서 사용합니다.
if( (val > 1) && ( val < 3) ) // val가 1보다 크고 3보다 작을 때(1<val<3) if( (val < 1) || ( val > 3) ) // val가 1보다 작거나 3보다 클 때 if( !(val == 2) ) // val가 2가 아닐 때; if( val != 2)와 동일한 의미