JavaRush
Акция
Университет
Java FullStack
Python FullStack
AI Native Developer
new
Web FullStack
Обучение
Курсы
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема
Вопрос
  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Все вопросы
JavaRush/Помощь по Java задачам/Что я сделал не правильно?
Zheleznyak Maxim
4 уровень
  • 12.10.2021
  • 718просмотров
  • 5комментариев

Что я сделал не правильно?

Вопрос по задаче Минимальный байт
Java Core,  8 уровень,  3 лекция
Обсуждается

Ввести с консоли имя файла.
Найти минимальный байт в файле, вывести его на экран.
Закрыть поток ввода-вывода.

Требования:
  • Программа должна считывать имя файла с консоли.
  • Для чтения из файла используй поток FileInputStream.
  • В консоль должен выводиться минимальный байт, считанный из файла.
  • Поток чтения из файла должен быть закрыт.
package com.javarush.task.task18.task1802; import java.io.BufferedReader; import java.io.FileInputStream; import java.io.InputStream; import java.io.InputStreamReader; import java.util.Scanner; /* Минимальный байт */ public class Solution { public static void main(String[] args) throws Exception { Integer current = Integer.MAX_VALUE; Scanner scanner = new Scanner(System.in); String console = scanner.nextLine(); FileInputStream inputStream = new FileInputStream(console); while (inputStream.available()>0){ if (inputStream.read() < current) { current = inputStream.read(); } } inputStream.close(); System.out.println(current); } }
0
Комментарии (5)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
KIRAРазработчик в prosv.ruExpert
12 октября 2021, 14:54
А что вы тут делаете? if (inputStream.read() < current) { current = inputStream.read(); }
+1
Zheleznyak Maxim
Уровень 4
12 октября 2021, 16:45
Мне тоже казалось сомнительным это место в коде, однако этот способ работает. Дословно читается так: если int меньше предыдущего минимального int, присвоить новое значение переменной current
0
KIRAРазработчик в prosv.ruExpert
12 октября 2021, 16:51
тут важный момент в том что вы делаете, в этом месте ошибка
0
Ksenia VolkovaJava Developer в DXCMaster
12 октября 2021, 18:04
Если у тебя этот способ работает - значит, ты плохо тестируешь. Каждый вызов read считывает новый байт. Проверяешь ты один, а в переменную заносишь другой.
+1
Zheleznyak Maxim
Уровень 4
13 октября 2021, 08:23
то есть считывается два байта за цикл, а проверяется один?
0
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush