
const
n = 15;
var
x: array[1..n] of integer;
i, k, t, min: integer;
begin
Randomize;
Writeln('Исходные элементы массива');
min := 1000;
for i := 1 to n do
begin
x[i] := Random(101) - 50;
Write(x[i]:4);
if min > x[i] then begin
min := x[i];
k := i
end
end;
t := x[k]; x[k] := x[1]; x[1] := t;
Writeln;
Writeln('Результирующие элементы массива');
for i := 1 to n do Write(x[i]:4);
Writeln
end.
Исходные элементы массива
-28 -22 -15 3 27 29 34 -29 -49 -37 -19 31 40 -36 4
Результирующие элементы массива
-49 -22 -15 3 27 29 34 -29 -28 -37 -19 31 40 -36 4
Объяснение:
Чтобы перевести число из десятичной системы в двоичную надо:
целую часть числа делить на 2 нацело, до тех пор пока получившееся неполное частное не станет меньше 2, а затем, начиная с последнего неполного частого (оно всегда будет 1), записать остатки от каждого деления в порядке, обратном получению.(смотри приложение 1);
дробную часть надо умножить на 2, до тех пор пока в дробной части не получится ноль либо не определится период либо до указанной точности, затем выписываем получившиеся целые части в порядке их получения. следует помнить, что умножаем только дробную часть. (смотрит приложение 2) В примере точность не указана и потому я решала до 12 знака
54,677≈1001010,101011010101....
