4 числа => каждое число = 32/4 = 8 бит
1. 11001100.10011000.10111110.01000111
2. 11011110.11000011.10100010.00110010
Сейчас переводим из двоичной в 10 по следующему алгоритму:
Записываем двоичное число: 11001100. Сейчас начиная с ПРАВОГО конца, помечаем разряды(начиная с 0!). Я буду отмечать в фигурных скобках. Получаем:
11001100 = 1{7} 1{6} 0{5} 0{4} 1{3} 1{2} 0{1} 0{0}
И сейчас, чтобы найти десятичный эквивалент двоичному числу, мы считаем сумму вида: берем двоичное число(1 или 0) и умножаем его на 2 в степени разряда. Т.е.:
11001100 = 1*2^7 + 1*2^6 + 0*2^5 + 0*2^4 + 1*2^3 + 1*2^2 + 0*2^1 + 0*2^0 = 128 + 64 + 0 + 0 + 8 + 4 + 0 + 0 = 204
Точно так же делаем для всех оставшихся чисел. Т.е.:
10011000 = 1*2^7 + 1*2^4 + 1*2^3 = 128 + 16 + 8 = 152
10111110 = 1*2^7 + 1*2^5 + 1*2^4 + 1*2^3 + 1*2^2 + 1*2^1 = 128 + 32 + 16 + 8 + 4 + 2 = 190
01000111 = 1*2^6 + 1*2^2 + 1*2^1 + 1*2^0 = 64 + 4 + 2 + 1 = 71
В итоге, получаем IP адрес: 204.152.190.71
Точно так же делаем и для второго адреса:
11011110 = 1*2^7 + 1*2^6 + 1*2^4 + 1*2^3 + 1*2^2 + 1*2^1 = 128 + 64 + 16 + 8 + 4 + 2 = 222
11000011 = 1*2^7 + 1*2^6 + 1*2^1 + 1*2^0 = 128 + 64 + 2 + 1 = 195
10100010 = 1*2^7 + 1*2^5 + 1*2^1 = 128 + 32 + 2 = 162
00110010 = 1*2^5 + 1*2^4 + 1*2^1 = 32 + 16 + 2 = 50
И получаем следующий адрес: 222.195.162.50
N = 20;
Var
A:array[1..N] of integer;
i,M:integer;
Begin
Randomize;
Write('Исходный массив:');
M:=1;
For i:= 1 to N do
Begin
A[i]:=random(N+1);
Write(' ',A[i]);
if A[i] > A[M] then M:=i;
End;
WriteLn;
WriteLn('Max = ',A[M],'[',M,']');
if M < N then
For i:= M to N-1 do
A[i]:=A[i+1];
M:=1;
For i:= 1 to N-1 do
if A[i] < A[M] then M:=i;
WriteLn('Min = ',A[M],'[',M,']');
if M < N then
For i:= M to N-1 do
A[i]:=A[i+1];
Write('После удаления Max и Min:');
For i:= 1 to N-2 do
Write(' ',A[i])
End.
Const
N = 3;
M = 4;
Var
A,B,C:array[1..N,1..M] of shortint;
i,j,Max,t:integer;
Begin
Randomize;
WriteLn('Матрица A:');
For i:= 1 to N do
Begin
For j:= 1 to M do
Begin
A[i,j]:=random(19)-9;
Write(A[i,j]:2,' ')
End;
WriteLn
End;
WriteLn('Матрица B:');
For i:= 1 to N do
Begin
For j:= 1 to M do
Begin
B[i,j]:=random(19)-9;
Write(B[i,j]:2,' ');
End;
WriteLn
End;
WriteLn('A+B:');
For i:= 1 to N do
Begin
For j:= 1 to M do
Begin
C[i,j]:=A[i,j]+B[i,j];
Write(C[i,j]:3,' ');
End;
WriteLn
End;
For i:= 1 to N do
Begin
Max:=i;
For j:= i+1 to M do
if C[1,j] > C[1,Max] then Max:=j;
For j:= 1 to N do
Begin
t:=C[j,Max];
C[j,Max]:=C[j,i];
C[j,i]:=t
End;
End;
WriteLn('Матрица C:');
For i:= 1 to N do
Begin
For j:= 1 to M do
Write(C[i,j]:3,' ');
WriteLn
End;
ReadLn
End.