Дан одномерный массив целого типа. Получить другой массив, состоящий только из чисел...

0 голосов
204 просмотров

Дан одномерный массив целого типа. Получить другой массив, состоящий только из чисел исходного массива, больше 10 и кратных 3, или сообщить, что таких чисел нет. Полученный массив вывести в порядке убывания элементов.


Информатика (15 баллов) | 204 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

// PascalABC.NET 3.0, сборка 1088
begin
  var n:=ReadInteger('Количество элементов: ');
  var a:=ArrRandom(n,1,99);
  a.PrintLn(',');
  var b:=a.Where(x->(x>10) and (x mod 3 = 0)).ToArray;
  if b.Length=0 then Writeln('Нет нужных элементов')
  else b.OrderByDescending(x->x).Println(',')
end.

Тестовое решение:
Количество элементов: 15
54,12,98,26,18,21,10,61,62,22,89,11,1,7,75
75,54,21,18,12

(142k баллов)
0 голосов
(1.7k баллов)
0

Да.... школьная реализация лаконичностью не отличается ))))

0

И, кажется, я где-то ошиблась с процедурой. А Ваш код изучу.

0

Сейчас запущу Ваш код, проверим)

0

Да, сортировка не работает

0

Один var всё испортил, я исправила. Брат подошёл, посмотрел на Ваш код, сказал что он, цитата, "рак", удалился.

0

Брат решил себя назвать раком? С чего такая самокритика?

0

Как Вы уже сказали, в нашем распоряжении только "школьный вариант" решения. Эти процедуры мы видим в первый раз. Наверняка оно ещё и меньше памяти ест.

0

В Вашей сортировке надо сменить знак отношения на обратный, потому что сортировка по убыванию должна быть

0

Ну не огорчайтесь. Когда лет сорок, как я, попишете программы, тоже будете разбираться в программировании)))