package com.javarush.task.task09.task0921;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
/*
Метод в try..catch
*/
public class Solution {
public static void main(String[] args) {
readData();
}
public static void readData() {
//напишите тут ваш код
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
int d = 0;
while (d<20) {
try {
int a = Integer.parseInt(reader.readLine());
System.out.println(a);} catch (Exception b) {}
d++;
}
}
}
Подскажите , если решать задачу через мое мышление, так как знаний хватает пока только на это
Как мне сделать не 20 вводов (d=0;d<20;d++) , а пускай вводятся данные "все количество раз", например если цифр 100500, но как будет текст (либо словится исключение), то break ;
Подскажите как это будет выглядеть в моем решении и пару слов объяснений
Спасибо !
nescafe
30 уровень
рецензия по решению + помощь в количество ввода
Обсуждается
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Алексей Тонких Backend Developer в Сбербанк
17 февраля 2021, 06:42
Вводить 100500 раз (т.е. бесконечно, пока вводятся цифры) - изменить условие цикла на while(true).
В перехвате исключения (когда не получилось распарсить введенное значение в число) указать break.
+1
nescafe
17 февраля 2021, 06:46
Вот так будет ? IDE нет возможности проверить + задач нерешенных со входными цифрами/строками тоже нет.
0
Алексей Тонких Backend Developer в Сбербанк
17 февраля 2021, 07:03
Согласно Вашему изначальному вопросу - да, решение такое. Но это решение не будет соответствовать условию задачи. Вам необходимо выводить ранее введенные числа не сразу после ввода, а только при возникновении исключения. Т.е. в вашем решении вводимые числа необходимо помещать в массив или список и при возникновении исключения выводить их все разом, сохранив порядок в котором они вводились.
+1
nescafe
17 февраля 2021, 07:10
🤠Суть ясна. Спасибо !
0