Логика задачи, вроде отрабатывает.
package com.javarush.task.task05.task0532;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/*
Задача по алгоритмам
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
int n = 1;
int maximum = 0;
while (n > 0) {
n = Integer.parseInt(reader.readLine());
if (n > maximum) {
maximum = n;
}
if (n <= 0) {
break;
}
System.out.println(maximum > n ? maximum : n);
}
}
}