Дан одномерный массив, отобразить элементы кратные 3 и отсортировать методом обмена - PascalABC.NET
Формулировка задачи:
Привет! Помогите, пожалуйста, решить задачу, никак не могу её решить.
Дан одномерный массив, отобразить элементы кратные 3 и отсортировать методом обмена.
Решение задачи: «Дан одномерный массив, отобразить элементы кратные 3 и отсортировать методом обмена»
textual
Листинг программы
uses System.linq; type g=Igrouping<integer,integer>; var a,b:array of integer; begin writeln('введите элементы массива через пробел:'); a:=ReadString.Split(new string[1](' '),System.StringSplitOptions.RemoveEmptyEntries). Select(s->strtoint(s)).ToArray(); b:=a.Where((i:integer)->i mod 3=0).ToArray(); writeln('Элементы кратные 3:',b); writeln('оригинальный отсортированный массив:',a.GroupBy((i:integer)->i).OrderBy((x:g)->x.key).selectmany(i->i)); writeln('полученный отсортированный массив:',b.GroupBy((i:integer)->i).OrderBy((x:g)->x.key).selectmany(i->i)); end.
Объяснение кода листинга программы
Объяснение действий в коде:
- Переменная
a
инициализируется массивом, в который считываются элементы через пробел. - Переменная
b
инициализируется массивом, в который попадают только элементы, кратные 3. - Выводится сообщение с элементами массива
b
, которые кратны 3. - Выводится сообщение с оригинальным отсортированным массивом
a
. - Выводится сообщение с полученным отсортированным массивом
b
. Пояснение к коду: - В строке
a:=ReadString.Split(new string[1](' '),System.StringSplitOptions.RemoveEmptyEntries).Select(s->strtoint(s)).ToArray()
считывается строка, разделенная пробелами, и преобразуется в массив целых чисел. - В строке
b:=a.Where((i:integer)->i mod 3=0).ToArray()
из массиваa
выбираются только элементы, кратные 3. - В строке
writeln('Элементы кратные 3:',b)
выводится сообщение с элементами массиваb
, которые кратны 3. - В строке
writeln('оригинальный отсортированный массив:',a.GroupBy((i:integer)->i).OrderBy((x:g)->x.key).selectmany(i->i))
сортируется и выводится оригинальный отсортированный массивa
. - В строке
writeln('полученный отсортированный массив:',b.GroupBy((i:integer)->i).OrderBy((x:g)->x.key).selectmany(i->i))
сортируется и выводится полученный отсортированный массивb
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д