7 работа с указателями и динамической памятью


Download 140.13 Kb.
Pdf ko'rish
Sana19.06.2023
Hajmi140.13 Kb.
#1619266


ТЕМА:7 РАБОТА С УКАЗАТЕЛЯМИ И ДИНАМИЧЕСКОЙ ПАМЯТЬЮ 
DINIKULOVA SEVINCH 
#include  
#include  // Для использования функций rand и srand 
#include  // Для генерации случайного seed 
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