Здравствуйте, подскажите пожалуйста в чем ошибка, смотрю не могу понять. Цифры выводятся, но они вообще хаотично расположены, вместо того чтобы быть по убыванию.
Они сортируются, но по логике которую я не пытался задать .
Вот поясню как это для меня сейчас видится:
public static void sort(int[] array) {
for(int a = 0; a < 19; a++){ //создаем условие при котором цикл пройдет нужное количество раз, так еще делал(a < array.length)
int i = 0;
if(array[a] < array[a+1]){ //проверяем меньше ли массив с индексом 0, массива с индексом 1 и тд по аналогии все элементы
i = array[a]; // если условие оказалось верным и значение массива с меньшим индексом оказалось больше следующего то мы заносим его в переменную i
array[a] = array[a+1];
меняем элементы местами
array[a+1] = i;
}
else{
continue;
}
}
}
package com.javarush.task.task07.task0728;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/*
В убывающем порядке
*/
public class Solution {
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
int[] array = new int[20];
for (int i = 0; i < 20; i++) {
array[i] = Integer.parseInt(reader.readLine());
}
sort(array);
for (int x : array) {
System.out.println(x);
}
}
public static void sort(int[] array) {
for(int a = 0; a < 19; a++){
int i = 0;
if(array[a] > array[a+1]){
i = array[a];
array[a] = array[a+1];
array[a+1] = i;
}
else{
continue;
}
}
}
}