var a: array[1..n]of integer; i, j, k, max: integer;
begin max := -MaxInt; for i := 1 to n do begin write('a[', i, ']= '); readln(a[i]); if a[i] > max then max := a[i]; end; writeln(' максимальный элемент массива = ', max); //сортировка методом пузырька for i := 1 to n - 1 do for j := 1 to n - i do if a[j] < a[j + 1] then begin k := a[j]; a[j] := a[j + 1]; a[j + 1] := k end; //вывод массива for i := 1 to n do write(a[i]:4); end.
Для того, чтобы перевести целое число из десятичной в двоичную систему счисления, необходимо разделить его на два, а затем делить на два каждое полученное частное до тех пор, пока не получится единица. Искомое двоичное число записывается как последовательность цифр, равных последнему частному (единице) и всем полученным остаткам, начиная с последнего.
Надо перевести сначала 21 в двоичную, потом 2 в двоичную и потом 2002 в двоичную
Получается вот так: 21 = 10101 2=10 2002 = 11111010010
n = 8;
var
a: array[1..n]of integer;
i, j, k, max: integer;
begin
max := -MaxInt;
for i := 1 to n do
begin
write('a[', i, ']= ');
readln(a[i]);
if a[i] > max then max := a[i];
end;
writeln(' максимальный элемент массива = ', max);
//сортировка методом пузырька
for i := 1 to n - 1 do
for j := 1 to n - i do
if a[j] < a[j + 1] then begin
k := a[j];
a[j] := a[j + 1];
a[j + 1] := k
end;
//вывод массива
for i := 1 to n do write(a[i]:4);
end.
Тестовое решение:
a[1]= 12
a[2]= 4
a[3]= 6
a[4]= 23
a[5]= 4
a[6]= 7
a[7]= 8
a[8]= 1
максимальный элемент массива = 23
23 12 8 7 6 4 4 1
Надо перевести сначала 21 в двоичную, потом 2 в двоичную и потом 2002 в двоичную
Получается вот так:
21 = 10101
2=10
2002 = 11111010010
В итоге:
10101.10.11111010010