Control Structures

Ruby는 if나 while 같은 유용한 제어문을 가지고 있습니다. Java, c, Perl 프로그래머들은 이 제어문 바디에 괄호를 뺸 것을 눈치 챗을 것입니다. 대신에 자바는 end라는 키워드로 바디를 구분합니다.

if count > 10
 puts "Try again"
elsif tries == 3
 puts "You lose"
else
 puts "Enter a number"
end

while문도 비슷하게 end를 사용합니다.

while weight < 100 and numPallets <= 30
 pallet = nextPallet()
 weight += pallet.weight
 numPallets += 1
end

Ruby의  statement modifier라는 것을 사용하여 while이나 if문을 줄여 쓸 수가 있습니다. 사용 법은 먼저 딱 한 문장 만 기술을 하고 그 뒤 if나 while 키워드를 사용하고 조건을 명시하면 됩니다.

예를 들어 아래에 한 문장의 간단한 if문이 있습니다.

if radiation > 3000
 puts "Danger, Will Robinson"
end

이것을 아래와 같이 간단히 줄일 수 있습니다.

puts "Danger, Will Robinson" if radiation > 3000

한 문장의 while문이 아래에 있습니다.

while square < 1000
  square = square*square
end

이것도 아래 처럼 줄일 수 있습니다.

square = square*square  while square < 1000