General FizzBuzz: Difference between revisions

→‎{{header|Scala}}: Fix sorting bug; improve formatting
No edit summary
(→‎{{header|Scala}}: Fix sorting bug; improve formatting)
Line 3,317:
=={{header|Scala}}==
 
<lang Scala>objectimport GenericFizzBuzzscala.io.{Source, extends App {StdIn}
 
object GeneralFizzBuzz extends App {
val max = io.StdIn.readInt()
val factors = io.Source.stdin.getLines().toSeq.sorted.map(_.split(" ", 2)).map(f => f(0).toInt -> f(1))
.map(_.split(" ", 2))
.map(f => f(0).toInt -> f(1))
.sorted
 
(1 to max ).foreach { i =>
val words = factors .collect { case (k, v) if i % k == 0 => v }
println(if (words.nonEmpty) words.mkString else i)
}
 
}</lang>
 
{{out}}
<pre>
$ scala GenericFizzBuzzGeneralFizzBuzz.scala
20
3 Fizz