Дан одномерный массив целого типа. Получить другой массив, состоящий только из чисел исходного массива, больше 10 и кратных 3, или сообщить, что таких чисел нет. Полученный массив вывести в порядке убывания элементов.
Дан одномерный массив целого типа. Получить другой массив, состоящий только из чисел исходного массива, больше 10 и кратных 3, или сообщить, что таких чисел нет. Полученный массив вывести в порядке убывания элементов.
Ответ(ы) на вопрос:
Гость
// 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
Гость
Const
n=10;
type
MyArr=array[1..10] of integer;
var ar:MyArr;
ar2:MyArr;
i,k:integer;
procedure SortMin(var a: MyArr;n:Integer);
var i,j,x:integer;
begin;
for I:=1 to n do
for j:=1 to n-1 do
if a[j]10) and (ar[i] mod 3=0) then
begin;
inc(k);
ar2[k]:=ar[i];
end;
end;
if k=0 then
begin;
writeln('Нет подходящих элементов');
exit;
end;
SortMin(ar2,k);
writeln;
writeln('Final array:');
for i:=1 to k do
write(ar2[i]:4);
end.
Не нашли ответ?
Похожие вопросы