Удалить нечетные элементы из массива сдвигом влево - C (СИ)
Формулировка задачи:
Сформировать массив из 50 случайных чисел, попадающих в заданный промежуток А. . В. Напечатать сформирован массив. Затем удалить из него все нечетные элементы. Напечатать массив после сокращения. Подсказка: для извлечения сдвигать все последующие элементы массива влево.
Помогите исправить и дописать код
Заранее спасибо!
#include#include // Для використання "rand()" #include // для використання 'srand (time (0))' int main() { const int n = 50; int i; int a[n]; srand(time(0)); for(i = 0; i < n; i++) { a[i]=rand()%50; printf("%d\n", a[i]); if(a[i] % 2 != 0){ printf("%d << 1 == %d\n",a[i], a[i] << 1); } } return 0; }
Решение задачи: «Удалить нечетные элементы из массива сдвигом влево»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> // Для використання "rand()" #include <time.h> // для використання 'srand (time (0))' int main() { const int n = 50; int i; int a[n]; srand(time(0)); for(i = 0; i < n; i++) { a[i]=rand()%50; printf("%d\n", a[i]); } printf("New\n"); for(i = 0; i < n; i++) { if(a[i] % 2 != 0){ a[i]=a[i] << 1; printf("%d\n", a[i]); } } return 0; }
Объяснение кода листинга программы
В этом коде выполняются следующие действия:
- Включаются необходимые заголовочные файлы:
stdio.h
используется для работы с функциями ввода-вывода;stdlib.h
используется для работы со случайными числами;time.h
используется для получения текущего времени, которое используется как семя для генерации случайных чисел.
- Определяется константа n, которая задает размер массива.
- Задается начальное значение i перед циклом.
- Создается массив a с помощью оператора
int a[n];
. - Запускается генератор случайных чисел с помощью функции
srand(time(0))
. - Цикл заполняет массив a случайными нечетными числами с помощью цикла
for
и функцииrand()%50
. Каждое сгенерированное число выводится на экран с помощью функцииprintf()
. - Выводится сообщение
New
с помощью функцииprintf(
New\n);
. - Цикл проходит по массиву a с помощью цикла
for
и проверяет, является ли элемент массива нечетным с помощью оператора%
. Если это так, то элемент сдвигается влево на 1 с помощью оператора<<
и выводится на экран с помощью функцииprintf()
. - Возвращается 0, чтобы указать, что программа успешно завершилась.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д