Программа должна читать входные данные и выводить сумму квадратов чисел с каждой строки, но выдаёт ошибку. Мой код:
import java.util.*;
public class Solution {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int num = in.nextInt(); // Кол-во строк
for (int i = 0; i < num; i++) {
int[] arr = toIntArray(in.nextLine().split(" "));
System.out.print(calculate(arr) + " ");
}
}
static int[] toIntArray(String[] strArr) {
int[] intArr = new int[strArr.length];
for (int i = 0; i < strArr.length; i++) {
intArr[i] = Integer.parseInt(strArr[i]); // Здесь выдаёт ошибку
}
return intArr;
}
static int calculate(int[] arr) {
int sum = 0;
for (int i = 0; i < arr.length; i++) {
sum += arr[i] * arr[i];
}
return sum;
}
}
nextInt()не вычитывает перевод строки, поэтомуnextLine()возвращает пустую строку, аsplit()для нее - массив с одной пустой строкой. Сделайте еще одинnextLine()послеin.nextInt()– zRrr Sep 15 '16 at 16:33