Удалить из последовательности все нечетные элементы, затем отсортировать ее по возрастанию - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Дана последовательность из n целых элементов. Удалить из нее все нечетные элементы, затем отсортировать ее по возрастанию. Вывести на экран исходную последовательность до удаления, после удаления и после сортировки. Подскажите пожалуйста, что-то вообще ничего не понимаю

Решение задачи: «Удалить из последовательности все нечетные элементы, затем отсортировать ее по возрастанию»

textual
Листинг программы
  1. #include <iostream>
  2. #include <ctime>
  3. using namespace std;
  4. void main()
  5. {
  6.     setlocale(LC_ALL,"Russian");
  7.     srand(time(0));
  8.     int n=0;
  9.     printf("Введите n: ");
  10.     scanf("%d", &n);
  11.     int *Mas=new int [n];
  12.     int k=0;
  13.     printf("Массив без изменений: ");
  14.     for(int i=0;i<10;i++)
  15.     {
  16.         Mas[i]=(rand() % 100);
  17.         if(Mas[i]%2==0)
  18.         {
  19.             k++;
  20.         }
  21.         printf("%d ", Mas[i]);
  22.     }
  23.     printf("Массив без нечетных чисел: ");
  24.     int *Mas1=new int [k];
  25.     int i=0;
  26.     int j=0;
  27.     while(i!=10)
  28.     {
  29.         if(Mas[i]%2==0)
  30.         {
  31.             Mas1[j]=Mas[i];
  32.             printf("%d ", Mas1[j]);
  33.             j++;
  34.         }
  35.         i++;
  36.     }
  37.     int temp=0;
  38.     for (int j = 0; j < k; j++)
  39.     {
  40.     for(int i=0;i<k-1;i++)
  41.     {
  42.         if(Mas1[i]>Mas1[i+1])
  43.         {
  44.             temp=Mas1[i];
  45.             Mas1[i]=Mas1[i+1];
  46.             Mas1[i+1]=temp;
  47.         }
  48.     }
  49.     }
  50.     printf("Сортировка по возрастанию: ");
  51.     for(int i=0;i<k;i++)
  52.     {
  53.         printf("%d ", Mas1[i]);
  54.     }
  55. }

Объяснение кода листинга программы

  1. Включаются необходимые заголовочные файлы для работы с языком C++
  2. Устанавливается русскоязычная локаль с помощью функции setlocale
  3. Инициализируется генератор случайных чисел с помощью функции srand и времени с помощью функции time
  4. Объявляется переменная n типа int для хранения количества элементов в массиве
  5. С помощью функции printf выводится сообщение с просьбой ввести значение n
  6. С помощью функции scanf происходит считывание значения n и его сохранение в переменной n
  7. Динамически выделяется память под массив Mas типа int с размером n
  8. Инициализируются первые 10 элементов массива Mas с помощью генератора случайных чисел, при этом нечетные числа не добавляются в массив
  9. Выводится сообщение Массив без изменений: и все элементы массива Mas
  10. Создается новый массив Mas1 типа int размером k, где k - количество четных чисел в массиве Mas
  11. В цикле while заполняется массив Mas1 только четными числами из массива Mas
  12. Выводится сообщение Массив без нечетных чисел: и все элементы массива Mas1
  13. В цикле for производится сортировка массива Mas1 по возрастанию с помощью алгоритма сортировки пузырьком
  14. Выводится сообщение Сортировка по возрастанию: и все элементы массива Mas1

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.083 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы