소프트웨어가 정상적으로 동작하기 위하여 미리 약속한 방법을 ‘소프트웨어 구조’라고 합니다. 그중 첫 번째 구조는 일을 순서대로 처리하는 ‘순차 구조’이지요. 그리고 두 번째 구조인 ‘선택 구조’가 있습니다. ‘조건’에 따라 처리해야 할 일의 내용이 달라지는 구조이지요.
선택 구조는 순차 구조보다는 복잡하고 어렵게 보입니다. 사람들이 어떤 일을 처리하는 것은 대부분 조건에 따라서 하게 되나, 이때 확인해야 하는 다양한 조건들은 숨어 있는 경우가 많습니다. 그렇기 때문에 숨어 있는 조건을 찾아내어 적절히 표현하는 것은 단순하지 않은 일이지요.
집을 나서려고 하는데 비가 오면, 우산을 챙겨야 합니다. 그리고 비가 많이 내릴 경우, 신발이 젖지 않도록 장화를 신을 수 있으며, 옷이 젖지 않도록 비옷을 입을 수도 있지요. 우산을 챙기고 장화를 신으며 비옷을 입는 것은 “비가 오는가?”와 “비가 많이 오는가?”의 조건을 만족할 때 행하는 것입니다. 이와 같이 우산을 챙기고 경우에 따라서는 장화를 신고 비옷을 입도록 하는 것은 자연스럽게 할 수 있는 것입니다. 그러나 이러한 행동을 할 수 있도록
조건을 찾아서 글로 표현하는 것은 쉬운 것이 아니지요. 조건을 잘 못 찾거나, 조건에 따른 행동을 잘못 표현할 경우에는 엉뚱한 결과를 초래할 수 있으니까요.
코딩의 경우도 마찬가지입니다. 의도하는 일을 처리하기 위하여 숨어 있는 조건을 찾은 후에, 조건에 따라 처리할 일(명령어)을 구분하여 표현해야 합니다. 이때 사용하는 명령어가 ‘조건문’이지요. 프로그램 구조 중 하나인 선택 구조를 표현하는 조건문을 자유자재로 사용할 수 있다면 코딩이 쉬워질 것입니다.
숨어 있는 조건을 찾고, 조건에 따라서 처리할 내용을 구분하며, 이러한 내용들을 표현하는 코딩은 아이들에게 생활 속의 안목도 심어 줄 것입니다.