#define N 10 // определение количества ячеек в одномерном массиве
void setup() {
Serial.begin(115200); // инициализация порта
}
void loop() {
int myArray[N] = {10, 7, 0, 13, 1, 24, 17, 19, 44, 3}; // 1-мерный массив N=10
int len = sizeof(myArray) / sizeof(myArray[0]); // вычисление длины массива
Serial.println("исходный массив");// вывод в порт "исходный массив"
for (int i = 0; i < len; i++) { // цикл от 0 до N
Serial.print(myArray[i]);// вывод в порт
Serial.print(" ");// вывод в порт пробел
}
Serial.println();// вывод в порт return
int temp; // промежуточное значение
int iter; // значение итерации
iter = 0; // начальное значение значение итерации
Serial.println("промежуточные массивы");// вывод в порт "промежуточные массивы"
for (int j = 0; j + 1 < len; ++j) { // цикл итерации
for (int i = 0; i + 1 < len - j; ++i) { // цикл сортировки
if ( myArray[i] > myArray[i + 1]) { // условие перестановки
int temp = myArray[i]; // промежуточное значение большего
myArray[i] = myArray[i + 1]; // перестановка меньшего
myArray[i + 1] = temp; // перестановка большего
}
}
iter = iter + 1; // подсчет итераций
for (int i = 0; i < len; i++) { // цикл от 0 до N
Serial.print(myArray[i]);// вывод в порт промежуточного массива
Serial.print(" ");// вывод в порт пробел
}
Serial.println();// вывод в порт return
}
Serial.println("количество итераций");// вывод в порт "количество итераций"
Serial.println(iter);// вывод в порт итерации
Serial.println("сортированный массив");// вывод в порт "сортированный массив"
for (int i = 0; i < len; i++) { // цикл от 0 до N
Serial.print(myArray[i]);// вывод в порт сортированного массива
Serial.print(" ");// вывод в порт пробел
}
delay(100000); // пауза 100000 мс
}