fork download
  1. object Main extends App {
  2.  
  3. val f:(String=>Any)=s=>{val n=(_:String)filter(_.isDigit)toInt;(Seq("").tail/:s.split(",").tail)((a,&)=> &match{case&if&contains "v"=>a:+"x/="+n(&)
  4. case&if&contains "d"=>a:+"x+="+n(&)
  5. case&if&contains "y"=>a:+"x*="+n(&)
  6. case&if&contains "f"=>a:+"x="+n(&)+"-x"
  7. case&if&contains "s"=>a:+"x-="+n(&)
  8. case p=>a:+a.last})mkString("var x=readInt;",";",";print(x)")}
  9.  
  10. println(f("think of a number"))
  11. println(f("Think of a number, divide by 5, subtract from 9."))
  12. println(f("Think of a number, add 5, add 10, multiply by 2, subtract 15, repeat, divide by 2."))
  13. println(f("Think of a number, subtract 1, repeat, repeat."))
  14.  
  15.  
  16. }
Success #stdin #stdout 0.39s 4382720KB
stdin
Standard input is empty
stdout
var x=readInt;;print(x)
var x=readInt;x/=5;x=9-x;print(x)
var x=readInt;x+=5;x+=10;x*=2;x-=15;x-=15;x/=2;print(x)
var x=readInt;x-=1;x-=1;x-=1;print(x)