В консоли Kotlin не распознает возврат каретки в качестве клавиши ввода. Какой синтаксис я должен использовать, чтобы распознать это как клавишу ввода? - PullRequest
0 голосов
/ 14 апреля 2020
import java.util.Scanner
fun main(args: Array<String>) {
    val sc: Scanner = Scanner(System.`in`)
    var a = sc.nextInt()
    var max= 0.0
    var min= 0.0
    var avg = 0.0
    if(a.equals(0)){
       println(String.format("%.6f %.6f %.6f",max,min,avg))
    }else{
        val numbers = readLine()!!.split(" ").map{ it.toDouble() }
        println(String.format("%.6f %.6f %.6f",numbers.max(),numbers.min(),numbers.sum()/a))
    }

}

это мой код. Если я использую ввод ниже, вывод работает нормально.

4
1.0 2.0 3.0 4.0

Однако, когда я использую следующий ввод, он не выводит должным образом.

4\n1.0 2.0 3.0 4.0

это ошибка.

 Exception in thread "main" java.util.InputMismatchException
            at java.base/java.util.Scanner.throwFor(Scanner.java:939)
            at java.base/java.util.Scanner.next(Scanner.java:1594)
            at java.base/java.util.Scanner.nextInt(Scanner.java:2258)
            at java.base/java.util.Scanner.nextInt(Scanner.java:2212)
            at MainKt.main(main.kt:4)

Как ее решить? Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...