본문 바로가기

프로그래밍, 쉽게 배워보자

조건판단 구조와 비교하기!

만약~라면
1. 만약 비가 온다면,
2.          부침개를 만들어 먹는다.
3.           만화책이나 소설책을 읽는다.
4. 청소를 한다.      
* 2~3번의 부분이 들여쓰기되어 있다는 점에 주의하시길. 들여쓰기를 하면 그 부분이 '만약' 구조문의 일부분임을 한 눈에 알기 쉽습니다.
 

조건판단구조

만약~라면..., 그 이외의 경우는
'내일은 책을 읽자. 만약 비가 오면 부침개를 만들어 먹고 책을 읽자구. 그렇지않으면 청소를 하고 책을 읽자.'도 조건판단구조입니다.

'만약'이 많을 때
1. 만약 아이디어 시상식에서 1등이면,
2.          상금 1억원을 받는다.
3. 만약 아이디어 시상식에서 2등이면,
             상금 7천만원을 받는다.
4. 만약 아이디어 시상식에서 3등이면,
              상금 5천만원을 받는다.
5. 모두 다함께 모여 축하 파티를 한다!

조건판단구조조건판단구조를 나타낸 흐름도

조건판단의 중첩
'만약' 안에 다른 '만약' 이 들어간, 다소 복잡한 '조건 판단구조'입니다. 이런 구조를 조건 판단의 중첩(nest)이라고 합니다. '만약 날씨가 좋다면 청소를 한다. 그렇지않다면 부침개를 만들어 먹는다. 그런데 만약 집에 부추가 있다면 부추 부침개를, 부추가 없다면 나머지 재료로 만들어 먹는다.'
1. 만약 날씨가 좋다면,
2.         청소를 한다.
3. 그렇지않다면
4.         부침개를 만들어 먹는다.
5.        만약 집에 부추가 있다면
6.         부추부침개루 만들어 먹는다.
7.        그렇치않다면
8.         나머지 재료로 만들어 먹는다.
9. 집에서 편안히 쉰다.

조건판단의 중첩조건판단의 중첩

컴퓨터는 어떻게 비교할까?
두 개의 조건식을 비교하는 것을 논리 연산, 논리 연산에 사용하는 기호를 논리 연산자라고 합니다. 어려운 말처럼 느께지지만 학교에서 배웠던 집합 부분 -교집합, 합집합, 여집합...-을 떠올리면 아~주 쉬워요!

논리연산, 논리연산자 논리연산의 기초

논리합 : 'A 또는(or) B', A와 B  둘 중 한 조건을 충족하는지 여부를 판단하는 것을 논리합이라 고 합니다. 어느 한 쪽을 만족하면 True, 그렇지 않으면 False!

논리곱 : 'A (and)그리고 B', A와B 둘 모두를 충족하는지 여부를 판단하는 것을 논리곱이라고 합니다. 두 가지 조건을 동시에 만족시킬 때는 True, 그렇지않다면 False!

논리 부정 : 그 조건을 만족시키는 않는 경우. (not)