Я написал эту программу, чтобы расположить числа в порядке возрастания. Но это не дает желаемого результата. Я правильно проанализировал программу и знаю, что не могу правильно реализовать функцию sort
(ниже) . Пожалуйста, предложите, что нужно сделать, чтобы эта программа выводила корректно:
Я дал пример выходных данных под кодом:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
class sorter
{
static int biggest;
static int arr[];
static int sortedArray[];
static int count;
public static void main(String args[]) throws IOException
{
System.out.print("How many numbers you want to enter : ");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String x = br.readLine();
try
{
count = Integer.parseInt(x);
}
catch (Exception exc)
{
System.out.println(exc);
}
arr = new int[count];
for (int i = 0; i < arr.length; i++)
{
System.out.print("Enter the " + (i + 1) + " number : ");
BufferedReader br2 = new BufferedReader(new InputStreamReader(System.in));
try
{
arr[i] = Integer.parseInt(br2.readLine());
}
catch (Exception exc)
{
System.out.println(exc);
}
}
System.out.println("We'll sort the numbers now !");
sortedArray = new int[count];
biggest = getBiggest(arr[0]); // get The biggest number
for (int i = 0; i < arr.length; i++)
{
sortedArray[i] = sort(arr[0]);
}
for (int i = 0; i < sortedArray.length; i++)
{
System.out.println("SortedArray is : " + sortedArray[i]);
}
}
public static int getBiggest(int big)
{
for (int i = 1; i < arr.length; i++)
{
if (big < arr[i])
{
big = arr[i];
}
}
return big;
}
public static int sort(int small)
{
for (int i = 1; i < arr.length; i++)
{
if (small > arr[i])
{
small = arr[i];
System.out.println("BIGGEST-->" + biggest);
arr[i] =
++biggest; // i replace the smallest number with the biggest number after storing the smallest number in small
biggest++;
}
}
return small;
}
}
В этом я не получаю желаемый результат. Я не могу выполнить эту задачу. Самая большая проблема в этой программе - работа функции сортировки. Как я могу улучшить это работает? чтобы он выводил мне желаемый результат
Вот некоторые примеры выходных данных из программы:
How many numbers you want to enter : 4
Enter the 1 number : 6
Enter the 2 number : 7
Enter the 3 number : 8
Enter the 4 number : 1
We'll sort the numbers now !
BIGGEST-->8
SortedArray is : 1
SortedArray is : 6
SortedArray is : 6
SortedArray is : 6
How many numbers you want to enter : 6
Enter the 1 number : 6
Enter the 2 number : 8
Enter the 3 number : 55
Enter the 4 number : 99
Enter the 5 number : 44
Enter the 6 number : 557
We'll sort the numbers now !
SortedArray is : 6
SortedArray is : 6
SortedArray is : 6
SortedArray is : 6
SortedArray is : 6
SortedArray is : 6