#include #include #include int main(void) { int n; printf("Введите размер массива b: "); scanf("%d", &n); int *b = (int*) malloc(n * sizeof(int)); if (!b) { printf("Ошибка выделения памяти.\n"); return 1; } printf("Введите %d элементов массива b:\n", n); for (int i = 0; i < n; i++) { scanf("%d", &b[i]); } // Определяем количество положительных элементов int count = 0; for (int i = 0; i < n; i++) { if (b[i] > 0) { count++; } } // Выделяем память для массива C double *C = (double*) malloc(count * sizeof(double)); if (!C) { printf("Ошибка выделения памяти для массива C.\n"); free(b); return 1; } // Заполняем массив C int j = 0; for (int i = 0; i < n; i++) { if (b[i] > 0) { C[j] = sqrt(b[i]) / 5.0; j++; } } // Сортировка массива C методом выбора for (int i = 0; i < count - 1; i++) { int minIndex = i; for (int k = i + 1; k < count; k++) { if (C[k] < C[minIndex]) minIndex = k; } // Обмен значениями double temp = C[i]; C[i] = C[minIndex]; C[minIndex] = temp; } printf("Отсортированный массив C:\n"); for (int i = 0; i < count; i++) { printf("%f ", C[i]); } printf("\n"); free(b); free(C); return 0; }