if 제어문 – 스몰베이직 강좌 5

if 제어문

if 제어문과 루프문을 배우면 이 두가지 개념만으로도 상당히 많은 일을 할 수 있습니다. 이번 포스팅은 먼저 if 제어문에 대해 알아보겠습니다.

if의 개념을 짧게 설명하면 선택입니다. A와 B 중에 선택, A, B, C 중에 선택으로 확장시킬 수 있고 A안에 C와 D의 선택을 중첩하는 방식으로 말하자면 무한의 조건을 만들 수 있는 강력한 도구입니다. 그런 만큼 제대로된 if문이 없으면 프로그램이 잘 안 나옵니다.

좀 어렵게 생각되지만 대부분의 논리라는게 이미 정해져 있어서 이해 자체가 어렵지 않습니다. 예를 들어 비가오면 우산을 쓴다, 배가 고프면 밥을 먹는다 등 상식이 중요합니다. 프로그램 로직도 공감력이 있어야 하는데 이상한 논리는 위화감을 줍니다.

가장 쉬운 것부터 해볼까요? 0보다 크면 양수 0보다 작으면 음수의 논리입니다. 다음 예제는 If 문법입니다. 숫자를 비교하고 그 다음에 Then ~ EndIf 안의 내용을 실행합니다. MS사가 제작해서 비주얼 베이식과도 비슷합니다.

TextWindow.WriteLine("숫자를 입력하시오")
Number = TextWindow.Read()

If Number > 0 Then
  TextWindow.WriteLine(Number + "는 양수입니다")
EndIf
  
If Number < 0 Then
  TextWindow.WriteLine(Number + "는 음수입니다")
EndIf

If Number = 0 Then
  TextWindow.WriteLine(Number + "는 0입니다")
EndIf

이 조건들이 따로따로 있으니까 한번에 처리하는 문법은 다음과 같습니다. If 는 다른 언어들도 비슷한데 If ElseIf Else 세가지 키워드를 조합하면 자유롭게 사용할 수 있습니다.

TextWindow.WriteLine("현재날짜: " + Clock.Date)
TextWindow.WriteLine("숫자를 입력하시오")
Number = TextWindow.Read()

If Number > 0 Then
  TextWindow.WriteLine(Number + "는 양수입니다")
ElseIf Number < 0 Then
  TextWindow.WriteLine(Number + "는 음수입니다")
Else
  TextWindow.WriteLine(Number + "는 0입니다")
EndIf

if 제어문은 루프와 함께 사용할 때 더 강력한 기능을 보여줍니다. If문은 이 정도로 넘어가고 또 루프에서 함께 다루겠습니다.

Leave a Comment