JavaRush/Java блог/Архив info.javarush/Не проходит тестирование
vovaroma
9 уровень

Не проходит тестирование

Статья из группы Архив info.javarush
участников
package com.javarush.test.level05.lesson12.bonus03; import java.io.*; import java.util.Scanner; /* Задача по алгоритмам Написать программу, которая: 1. вводит с консоли число N > 0 2. потом вводит N чисел с консоли 3. выводит на экран максимальное из введенных N чисел. */ public class Solution { public static void main(String[] args) throws Exception { BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); int maximum = 0; Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); if (n > 0) { int[] arr = new int[n]; for (int i = 0; i < n; i++) { arr[i] = scanner.nextInt(); maximum = arr[0]; if (maximum <= arr[i]) maximum = arr[i]; }//напишите тут ваш код System.out.println(maximum); } } }
Комментарии (8)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
vovaroma
Уровень 9
23 сентября 2016, 07:41
Да с BufferedReader я погорячил.
Обнуление в цикле maximum = arr[0]; убрал.
Спасибо за помощь.
t952
Уровень 32
22 сентября 2016, 23:37
Потому что у вас на каждой итерации в цикле максимальное значение сбрасывается:
maximum = arr[0];

Вынесите начальную инициализацию maximum перед циклом, а затем проходите цикл от i = 1 до i < n
Core
Уровень 35
22 сентября 2016, 23:52
Дак уже вынесено))) Сразу за зачем-то созданным BufferedReader reader. Просто из цикла нужно убрать одну строчку и этого будет достаточно. Ну и ненужный ридер, раз уж один сканер используется
t952
Уровень 32
22 сентября 2016, 23:57
Учитывая что N>0, можно инициализировать maximum следующим образом:
int maximum = scanner.nextInt();
t952
Уровень 32
23 сентября 2016, 00:00
инициализация maximum = 0 не очень хороша, т.к. все введенные числа могут быть отрицательными
Core
Уровень 35
23 сентября 2016, 00:13
Да я тоже об этом подумал.
int maximum = Integer.MIN_VALUE;

и убрать одну лишнюю строку в цикле. И будет счастье.
t952
Уровень 32
23 сентября 2016, 00:21
Можно и так )
Core
Уровень 35
22 сентября 2016, 23:26
Непонятно, в чем суть проблемы: не принимает решение, которое вам кажется правильным или что? Чтоб код был более читаем, можно воспользоваться тэгом <>. Какой вывод у вашей программы? Ну и бегло прочитав, возник сразу вопрос, зачем вы создали BufferedReader reader