Считать с консоли имя файла.
Найти в файле информацию, которая относится к заданному id, и вывести ее на экран в виде, в котором она записана в файле.
Программа запускается с одним параметром: id (int).
Закрыть потоки.
В файле данные разделены пробелом и хранятся в следующей последовательности:
id
Поиск данных внутри файла
- 20
- Недоступна
Комментарии (412)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Максим Дудин 19 уровень, Калининград
13 января, 14:24
Да ладно, прям раз и квас...
Создаете BufferedReader.
В цикле читаете строку
Потом строку дробите на массив по пробелу.// именно потом, так проще будет вывести на экран
"Сравниваете (equals) первый элемент массива и первый переданный аргумент." //лично я сравнивал
Int' ы первого элемента массива и первого аргумента (убоявшись условия id(int) в задании), но это, как показывают комменты ниже, не обязательно.
Если совпадают выводим считанную строку
Прерываем цикл.// считаем, что в нашем списке id уникальный
P.S. а в эталонном решении ещё прикольней
0
Виктор 19 уровень
30 декабря 2020, 16:37
Просто порезал все split(" ") и сравнил первый элемент массива (то есть id) с переданным параметром.
Если совпадает вывести на экран строку. Все.
0
Андрей 22 уровень, Волгоград
16 декабря 2020, 13:33
Кто юзает startsWith, обратите внимание.
12 productName price quantity
121 productName price quantity
Может сэкономить попытки.
+2
Kes Чайник в Банк
13 декабря 2020, 01:56
По формулировке не совсем ясно, на экран надо выводить всю строку или только то ,что после id.
Ответ: всю строку
+1
Kozzy Rock Программист 1С в Фриланс
6 декабря 2020, 19:50
Если в первых задачах по прайсам не допёр, что нужно через объекты делать, то тут сделал копипастом из первых за 5 минут. А когда посмотрел правильное решение, оказалось, что это излишне))
0
Cypriiz 20 уровень
1 декабря 2020, 19:26
Пробел после аргумента решает все проблемы
0
Сергеев Алексей 20 уровень, Москва
29 ноября 2020, 22:03
А я с регулярками разбираюсь на таких заданиях, удобная штука однако)
+1
Mikhail Belyaev Software Developer
21 ноября 2020, 22:06
На заметку, вдруг кому-то пригодится.
У меня валидатор не принимал вот такой вариант:
Валидатор принял только после того, как я переделал так:
+1
𝔐𝔢𝔱𝔞𝔪𝔬𝔯𝔭𝔥𝔬𝔤𝔢𝔫𝔢𝔰𝔦𝔰 20 уровень, Житомир
21 ноября 2020, 12:31
Тот же результат, что у Станислава до меня. Но подход еще проще:
проверьте, начинается ли считанная строка с [ аргумента + " " ], если да - выводите ее
String.startsWith(String)
+2
Станислав 19 уровень, Москва
20 ноября 2020, 11:48
Вы решили задачу лучше, чем 61% учеников. Вам удалось ее решить с 1 попытки. Среднее количество попыток для этой задачи 3.12. Всего эту задачу решили 15895 учеников.
Создаете BufferedReader и читаете построчно.
Строку дробите на массив по пробелу.
Сравниваете (equals) первый элемент массива и первый переданный аргумент.
Если совпадают первые строки - выводим все содержимое массива.
Прерываем цикл.
+1
Максим Дудин 19 уровень, Калининград
13 января, 14:16
а я уже лучше чем 60% и 16361 ученик...
0