#include #include #define NUM_ELEMENTS 10 int arr[NUM_ELEMENTS]; int n = 0; void printElements(); void keyboardInput(); void oddsX10(); void oddsX_1(); void deleteElement(int delIndex); int findMin(); void Menshe4(); int countElements(); int findLastEven(); int findLastEven4(); int findIndexMin(); int findIndexMax(); void insertElement(int insIndex, int value); void insertElement4(int insIndex, int value); void main() { SetConsoleCP(1251); SetConsoleOutputCP(1251); int item; do { printf("\n"); printf("------------------------------\n"); printf("Содержимое массива:"); printElements(); printf("Выберите нужную вам операцию:\n"); printf("1: Ввести с клавиатуры массив\n"); printf("2: x10 для всех нёчетных элементов\n"); printf("3: Найти минимальный элемент\n"); printf("4: Сколько элементов > 10\n"); printf("5: x2 для последнего четного\n"); printf("6: Сколько чётных левее минимального\n"); printf("7: х10 для нечётных правее минимального\n"); printf("8: перестановка максимального и минимального элемента\n"); printf("9: все четные элементы массива умножить на -1\n"); printf("10: Все элементы массива имеющие значения меньше 4 заменить на 4\n"); printf("11: Bсе четные элементы, стоящие левее минимального, заменить на 0\n"); printf("12: Удалить заданный элемент\n"); printf("13: Вставить новый элемент в заданное место\n"); printf("14: Удалить минимальный элемент\n"); printf("15: Перед минимальным элементом вставить 0\n"); printf("16: После последнего кратного четырем элемента вставить 0\n"); printf("\n"); printf("0: Выйти из программы\n"); printf("Выбранная операция >>>>>> "); scanf_s("%d", &item); switch (item) { case 1: keyboardInput(); break; case 2: oddsX10(); break; case 3: { int min = findMin(); printf("min = %d\n", min); } break; case 4: { int cnt = countElements(); printf(" %d элементов > 10\n", cnt); } break; case 5: { int index = findLastEven(); if (index >= 0) { arr[index] *= 2; } } break; case 6: { int index = findIndexMin(); printf("Индекс минимального элемента = %d\n", index); int cnt = 0; for (int i = 0; i < index; i++) { if (arr[i] % 2 == 0) { cnt++; } } printf("Левее минимального %d четных элементов\n", cnt); } case 7: { int index = findIndexMin(); printf("Индекс минимального элемента = %d\n", index); int cnt = 0; for (int i = index - 1; i < n; i++) { if (arr[i] % 2 == 1) { arr[i] *= 10; } } } break; case 8: { int indexMin = findIndexMin(); printf("Индекс минимального элемента = %d\n", indexMin); int indexMax = findIndexMax(); printf("Индекс максимального элемента = %d\n", indexMax); int tmp = arr[indexMin]; arr[indexMin] = arr[indexMax]; arr[indexMax] = tmp; } case 9: oddsX_1(); break; case 10: Menshe4(); break; case 11: { int index = findIndexMin(); printf("Индекс минимального элемента = %d\n", index); for (int i = 0; i < index; i++) { if (arr[i] % 2 == 0) { arr[i] = 0; } } }break; case 12: { printf("Индекс удаляемого элемента = "); int index; scanf_s("%d", &index); deleteElement(index); } break; case 13: { printf("Перед каким элементом нужно вставить новый? Индекс = "); int index; scanf_s("%d", &index); printf("Значение, которое нужно вставить = "); int value; scanf_s("%d", &value); insertElement(index, value); } break; case 14: { int min = findIndexMin(); deleteElement(min); } break; case 15: { int indexMin = findIndexMin(); printf("Индекс минимального элемента = %d\n", indexMin); insertElement(indexMin, 0); } break; case 16: { int Krat = findLastEven4(); insertElement4(Krat, 0); } break; } } while (item != 0); } void keyboardInput() { printf("n = "); scanf_s("%d", &n); printf("input %d values: ", n); for (int i = 0; i < n; i++) { scanf_s("%d", &arr[i]); } } void oddsX10() { for (int i = 0; i < n; i++) { if (arr[i] % 2 == 1) { arr[i] = arr[i] * 10; } } } void printElements() { printf("< "); for (int i = 0; i < n;i++ ) { printf("%d ", arr[i]); } printf(">\n"); } int findMin() { int min = arr[0]; for (int i = 1; i < n; i++) { if (arr[i] < min) { min = arr[i]; } } return min; } int countElements() { int cnt = 0; for (int i = 0; i < n; i++) { if (arr[i] > 10) { cnt++; } } return cnt; } int findLastEven() { for (int i = n - 1; i >= 0; i--) { if (arr[i] % 2 == 0) { return i; } } return -1; } int findIndexMin() { int min = arr[0]; int indexMin = 0; for (int i = 1; i < n; i++) { if (arr[i] < min) { min = arr[i]; indexMin = i; } } return indexMin; } int findIndexMax() { int max = arr[0]; int indexMax = 0; for (int i = 1; i < n; i++) { if (arr[i] > max) { max = arr[i]; indexMax = i; } } return indexMax; } void oddsX_1() { for (int i = 0; i < n; i++) { if (arr[i] % 2 == 0) { arr[i] = arr[i] * -1; } } } void Menshe4() { for (int i = 0; i < n; i++) { if (arr[i] < 4) { arr[i] = 4; } } } void deleteElement(int delIndex) { for (int i = delIndex; i < n - 1; i++) { arr[i] = arr[i + 1]; } n--; } void insertElement(int insIndex, int value) { for (int i = n; i > insIndex; i--) { arr[i] = arr[i - 1]; } n++; arr[insIndex] = value; } int findLastEven4() { for (int i = n - 1; i >= 0; i--) { if (arr[i] % 4 == 0) { return i; } } return -1; } void insertElement4(int insIndex, int value) { for (int i = n; i > insIndex; i--) { arr[i] = arr[i-1]; } n++; arr[insIndex+1] = value; }