Написал, подписал комментарии. Программа ругается
java.lang.NumberFormatException: null at java.lang.Integer.parseInt(Integer.java:542) at java.lang.Integer.parseInt(Integer.java:615) at com.javarush.task.task05.task0532.Solution.main(Solution.java:20) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498)
Ничего не могу понять. Точнее, я догадываюсь что слабым местом может быть процесс считывания остальных строк кроме первой (19 и 20 строка), но как его можно ещё реализовать чтоб он делал n-циклов считывания, подсчёта максимального числа (res) и выводу его на экран?
package com.javarush.task.task05.task0532;
import java.io.*;
/*
Задача по алгоритмам
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String sn = reader.readLine(); // считываем первую строку
int n = Integer.parseInt(sn);
if (n>0) { // запускаем проверку условия что кол-во циклов больше нуля
int res = 0;
int i = 1;
while (i<=n) { // делаем цикл пока кол-во циклов не будет равно n
String sa = reader.readLine(); // считываем следующую строку
int a = Integer.parseInt(sa); // переводим её в число
if (res <= a) res = res + a; // проверяем что введённое число не больше чем res
}
System.out.println(res);
}
else System.out.println("Число не является положительным") ;
}
}