Problem:
Toggling Cases

Write a program which converts uppercase/lowercase letters to lowercase/uppercase for a given string.

Input

A string is given in a line.

Output

Print the converted string in a line. Note that you do not need to convert any characters other than alphabetical letters.

Constraints

The length of the input string < 1200

Sample Input

fAIR, LATER, OCCASIONALLY CLOUDY.

Sample Output

Fair, later, occasionally cloudy.

Solution in Ruby (judge verdict: Accepted)

def switch_case(str)
  switched = str.chars.map do |chr|
    if chr.is_lower?
      chr.upcase
    elsif chr.is_upper?
      chr.downcase
    else
      chr
    end
  end
  return switched.join("")
end

class String
  def is_upper?
    self == self.upcase
  end

  def is_lower?
    self == self.downcase
  end
end

n = gets.chomp
puts switch_case(n)