• ,

level06.lesson11.bonus03

Выводит всё правильно, но проверку не проходит. В чем может быть причина?
/* Задача по алгоритмам
Задача: Написать программу, которая вводит с клавиатуры 5 чисел и выводит их в возрастающем порядке.
Пример ввода:
3
2
15
6
17
Пример вывода:
2
3
6
15
17
*/

public class Solution
{
    public static void main(String[] args) throws Exception
    {
        BufferedReader reader  = new BufferedReader(new InputStreamReader(System.in));

        ArrayList<Integer> i = new ArrayList<Integer>();
        BufferedReader rd = new BufferedReader(new InputStreamReader(System.in));
        for(int b = 0; b < 5; b++){
            i.add(Integer.parseInt(rd.readLine()));}

        for(int g = i.size() -1; g >= 2; g--)
        {
             boolean check = true;
            for(int j = 0; j < g; j++)
            {

                if(i.get(j) > i.get(j + 1))
                {
                    int temp = i.get(j);
                    i.set(j, i.get(j+1));
                    i.set(j+1, temp);
                    check = false;

                }



            }
            if(check)
                break;


        }
         for(int h = 0; h <=4;h++)
            System.out.println(i.get(h));


    }

}

3 комментария

yozh
  • yozh
  • 0
Выводит всё правильно
А вот и неправильно.
Ввожу:
5
4
3
2
1

Получаю:
2
1
3
4
5
yozh
  • yozh
  • +1
Ошибка у вас в этой строчке:
for(int g = i.size() -1; g >= 2; g--)


А ещё есть Collections.sort();
WinCent
Всё, разобрался)
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.