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

Ответы

Ответ дал: Nobunaga
0
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]<a[j+1] then
      begin
        x:=a[j+1];
        a[j+1]:=a[j];
        a[j]:=x;
        end;
end;

begin;
randomize;
k:=0;
writeln('First array:');
for i:=1 to 10 do
 begin;
  ar[i]:=random(100);
  write(ar[i]:4);
  if (ar[i]>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.
Ответ дал: Nobunaga
0
Один var всё испортил, я исправила. Брат подошёл, посмотрел на Ваш код, сказал что он, цитата, "рак", удалился.
Ответ дал: Аноним
0
Брат решил себя назвать раком? С чего такая самокритика?
Ответ дал: Nobunaga
0
Как Вы уже сказали, в нашем распоряжении только "школьный вариант" решения. Эти процедуры мы видим в первый раз. Наверняка оно ещё и меньше памяти ест.
Ответ дал: Аноним
0
В Вашей сортировке надо сменить знак отношения на обратный, потому что сортировка по убыванию должна быть
Ответ дал: Аноним
0
Ну не огорчайтесь. Когда лет сорок, как я, попишете программы, тоже будете разбираться в программировании)))
Похожие вопросы