Дан одномерный массив, отобразить элементы кратные 3 и отсортировать методом обмена - PascalABC.NET

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

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

Привет! Помогите, пожалуйста, решить задачу, никак не могу её решить. Дан одномерный массив, отобразить элементы кратные 3 и отсортировать методом обмена.

Решение задачи: «Дан одномерный массив, отобразить элементы кратные 3 и отсортировать методом обмена»

textual
Листинг программы
  1. uses System.linq;
  2. type
  3.   g=Igrouping<integer,integer>;
  4. var
  5.   a,b:array of integer;
  6. begin
  7.   writeln('введите элементы массива через пробел:');
  8.   a:=ReadString.Split(new string[1](' '),System.StringSplitOptions.RemoveEmptyEntries).
  9.      Select(s->strtoint(s)).ToArray();
  10.      b:=a.Where((i:integer)->i mod 3=0).ToArray();
  11.   writeln('Элементы кратные 3:',b);
  12.   writeln('оригинальный отсортированный массив:',a.GroupBy((i:integer)->i).OrderBy((x:g)->x.key).selectmany(i->i));
  13.   writeln('полученный отсортированный массив:',b.GroupBy((i:integer)->i).OrderBy((x:g)->x.key).selectmany(i->i));
  14. end.

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

Объяснение действий в коде:

  1. Переменная a инициализируется массивом, в который считываются элементы через пробел.
  2. Переменная b инициализируется массивом, в который попадают только элементы, кратные 3.
  3. Выводится сообщение с элементами массива b, которые кратны 3.
  4. Выводится сообщение с оригинальным отсортированным массивом a.
  5. Выводится сообщение с полученным отсортированным массивом b. Пояснение к коду:
  6. В строке a:=ReadString.Split(new string[1](' '),System.StringSplitOptions.RemoveEmptyEntries).Select(s->strtoint(s)).ToArray() считывается строка, разделенная пробелами, и преобразуется в массив целых чисел.
  7. В строке b:=a.Where((i:integer)->i mod 3=0).ToArray() из массива a выбираются только элементы, кратные 3.
  8. В строке writeln('Элементы кратные 3:',b) выводится сообщение с элементами массива b, которые кратны 3.
  9. В строке writeln('оригинальный отсортированный массив:',a.GroupBy((i:integer)->i).OrderBy((x:g)->x.key).selectmany(i->i)) сортируется и выводится оригинальный отсортированный массив a.
  10. В строке writeln('полученный отсортированный массив:',b.GroupBy((i:integer)->i).OrderBy((x:g)->x.key).selectmany(i->i)) сортируется и выводится полученный отсортированный массив b.

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


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

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

14   голосов , оценка 4.071 из 5

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

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

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