7 работа с указателями и динамической памятью
Download 140.13 Kb. Pdf ko'rish
|
ТЕМА:7 РАБОТА С УКАЗАТЕЛЯМИ И ДИНАМИЧЕСКОЙ ПАМЯТЬЮ DINIKULOVA SEVINCH #include #include #include int* generateRandomArray(int size, int min, int max) { int* array = new int[size]; for (int i = 0; i < size; i++) { array[i] = min + rand() % (max - min + 1); } return array; } void removeEvenNumbers(int* array, int size) { int oddCount = 0; // Подсчет количества нечетных чисел в массиве for (int i = 0; i < size; i++) { if (array[i] % 2 != 0) { oddCount++; } } // Создание нового массива только с нечетными числами int* newArray = new int[oddCount]; int index = 0; for (int i = 0; i < size; i++) { if (array[i] % 2 != 0) { newArray[index] = array[i]; index++; } } // Удаление исходного массива и перезапись его ссылки на новый массив delete[] array; array = newArray; } void printArray(int* array, int size) { for (int i = 0; i < size; i++) { std::cout << array[i] << " "; } std::cout << std::endl; } int main() { srand(time(0)); // Инициализация генератора случайных чисел с помощью текущего времени int N; std::cout << "Введите размер массива: "; std::cin >> N; int* A = generateRandomArray(N, -30, 30); std::cout << "Исходный массив: "; printArray(A, N); removeEvenNumbers(A, N); std::cout << "Массив после удаления четных чисел: "; printArray(A, N); delete[] A; return 0; } Download 140.13 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling