OSC 2011 Shimaneの成果!?

まだこのブログを何に使うか決めてないけど、とりあえずこの間の

OSC2010Shimaneの「山陰のIT勉強会」で、うちの子が

@takaokoujiさんに教えてもらいながら

作った、電卓プログラムを載せておく。

 

formular = ""

loop {

type = :unknown

value = nil

print "> "

line = gets

line.chomp!

# check

case line

when /\A\d+\Z/

  type = :number

  value = line.to_i

  formular << value.to_s

when "+"

type = :plus

formular <<  " + "

when "-"

type = :minus

formular <<  " - " 

when "*"

type = :times

formular <<  " * " 

when "/"

type = :divided_by

formular <<  " / "

when "="

type = :equal

else

puts "not support error: #{line}"                                     

next

end

#p type, value

 

case type

 

when :equal

  print "#{formular} = "

  eval "puts(#{formular})"

  formular = ""

end

 

}