Почему метод Integer.parseInt(s) суммирует только первое число?( вместо всех вводимых чисел?)
Scanner in = new Scanner(System.in);
System.out.println("Введите число от 1 до 10");
int count = in .nextInt();
System.out.print("Введите" + " " + count + " " + "чисел, через пробел");
Scanner scan = new Scanner(System.in);
String str = scan.next();
String[] numbers = str.split(" ");
int res = 0;
for (int i = 0; i <= count - 1; i++) {
for (String s: numbers) {
res += Integer.parseInt(s);
}
}
System.out.println("Сумма чисел= " + res);
Не очень понятно, зачем вам два цикла. Вместо next() используйте nextLine()
public static void main(String []args){
Scanner in = new Scanner(System.in);
System.out.println("Введите число от 1 до 10");
int count=in.nextInt();
System.out.print("Введите"+" "+count+" "+"чисел, через пробел");
in.nextLine();
String str = in.nextLine();
String[] numbers = str.split(" ");
int res = 0;
for (String s : numbers) {
res += Integer.parseInt(s);
}
System.out.println("Сумма чисел= " + res);
}
Вообще, это ведь не python, чтобы придумывать обходные пути для ввода чисел через пробел. Можно ввести числа через пробел и Scanner будет считывать их друг за другом в цикле.
public static void main(String []args){
Scanner in = new Scanner(System.in);
System.out.println("Введите число от 1 до 10");
int count = in.nextInt();
System.out.print("Введите"+" "+count+" "+"чисел, через пробел");
int res = 0;
for (int i = 0; i < count; i++) {
res += in.nextInt();
}
System.out.println("Сумма чисел= " + res);
}
Сборка персонального компьютера от Artline: умный выбор для современных пользователей