这是我的代码:
object theater extends App {
val m = readInt
val n = readInt
val a = readInt
val c1 = m/a + (if(m%a == 0) 0 else 1)
val c2 = n/a + (if(n%a == 0) 0 else 1)
print(c1 + c2)
}
但输入格式为:同一行中的3个整数。但是对于一行中的3个整数,scala会将其视为字符串。如何读取该字符串并获取3个分离变量中的3个值?
答案 0 :(得分:24)
您可以使用以下代码读取一行并使用前3个空格分隔的标记作为输入。 (期望例如“1 2 3”作为一行的输入)
val Array(m,n,d) = readLine.split(" ").map(_.toInt)
答案 1 :(得分:0)
您可以在scala程序中使用Java.util.Scanner。 这支持java中可用的Scanner功能
import java.util.Scanner;
object Addition{
def main(args: Array[String]){
var scanner = new Scanner(System.in); //defining scanner object
println("Enter two numbers : ");
var a = scanner.nextInt(); //reading space separated input
var b = scanner.nextInt();
println("The result is : "+(a+b));
}
}