Я добавил код, чтобы он отображался по мере продвижения.Пытаясь следовать желаемому выводу, я добавил функцию очистки консоли, которая очищает консоль перед тем, как в нее будет записан какой-либо текст.Это позволяет увидеть порядок упорядочения массива, как только будут введены новые числа.
Я также добавил функцию отображения, которая вызывает clearConsole (), displayArray () и другую добавленную мной функцию, называемую displaySize ().Эта функция обеспечивает удобочитаемость, определяя размер массива каждый раз, когда любая предыдущая информация будет удалена с помощью clearConsole ().
#include <iostream>
void insertionsort(int A[], int n)
{
int value, hole, i;
for (int i = 1; i < n; i++)
{
value = A[i];
hole = i;
while (hole > 0 && A[hole - 1] > value)
{
A[hole] = A[hole - 1];
hole = hole - 1;
}
A[hole] = value;
}
}
void displayarray(int A[], int n)
{
for (int i = 0; i < n; i++)
std::cout << A[i] << ";";
}
void clearConsole()
{
std::cout << std::flush;
system("CLS");
}
void displaySize(int size)
{
std::cout << "An array of size: " << size << "\n" << std::endl;
}
void display(int A[], int n, int size)
{
clearConsole();
displaySize(size);
displayarray(A, n);
}
int main()
{
int n;
std::cin >> n;
clearConsole();
displaySize(n);
int *A = new int[n];
for (int i = 0; i < n; i++)
{
std::cin >> A[i];
insertionsort(A, i+1);
display(A, i+1, n);
}
insertionsort(A, n);
displayarray(A, n);
return 0;
}