Помогите пожалуйста написать программу!!! Дан массив из двух тысяч элементов,найти...

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

Помогите пожалуйста написать программу!!! Дан массив из двух тысяч элементов,найти элементы которые представляют собой двузначные числа и выведите их на экран. Числа в массиве от 0 до 2000(числовой диапазон). Из трёхзначных выбрать кратные трём и вывести на экран в порядке убывания. В Паскале помогите пожалуйста!!!!!


Информатика (16 баллов) | 12 просмотров
Дан 1 ответ
0 голосов

Program n_1;

var i, b, k, y, j:integer; a, c: array [1..2000] of integer;

begin

   y:=1;

   writeln('Введите числа');

   for i:=1 to 2000 do read(a[i]);

   writeln;

   writeln ('Числа, состоящие из 2 разрядов:');

   for i:=1 to 2000 do begin

       b:=a[i];

       k:=0;

       while b>0 do

           begin

           b:=b div 10;

           k:=k+1;

       end;

       if k=2 then write(a[i], ' ');

       if k=3 then begin

           b:=(a[i] mod 10) + ((a[i] div 10) mod 10) + ((a[i] div 100) mod 10);

           if (b mod 3)=0 then begin

               c[y]:=a[i]; y:=y+1;

           end;

       end;

   end;

   for i := 1 to y-1 do

       for j := 1 to y-i do

       if c[j]

           k:=c[j];

           c[j]:= c[j+1];

           c[j+1]:=k;

       end;

   writeln;

   writeln ('Числа, состоящие из 3 разрядов и кратные 3:');

   for i:=1 to y-1 do write(c[i], ' ');

end.

(3.5k баллов)