Var A,B,n,M:integer; Begin Write('A = ');ReadLn(A); While A<>0 do Begin if (A mod 10) mod 2 = 0 then Begin M:=1; For n:= 0 to n do M:=M*10; B:=(A mod 10)*M+B; n:=n+1; End; A:=A div 10; End; WriteLn(B div 10); End.
//PascalABC.Net 3.2 begin var s:=readstring('Введите число: '); var i:=1; var m:=['2', '4', '6', '8', '0']; while i<=length(s) do begin if s[i] in m then delete(s, i, 1); inc (i); end; write (s); end.
При кодировании первым для хранения номера одного инструмента требуется log(2)180 ≈ 8 бит. Второй X=2, количество инструментов в группе = 180/2 = 90 Объем памяти для кодирования = log(2)2+log(2)90 ≈ 1+7 = 8 бит. X=3, количество инструментов в группе = 180/3 = 60 Объем памяти для кодирования = log(2)3+log(2)60 ≈ 2+6 = 8 бит. X=4, количество инструментов в группе = 180/4 = 45 Объем памяти для кодирования = log(2)4+log(2)45 ≈ 2+6 = 8 бит. X=5, количество инструментов в группе = 180/5 = 36 Объем памяти для кодирования = log(2)5+log(2)36 ≈ 3+6 = 9 бит. ответ: X=5
При кодировании первым для хранения номера одного инструмента требуется log(2)180 ≈ 8 бит. Второй X=2, количество инструментов в группе = 180/2 = 90 Объем памяти для кодирования = log(2)2+log(2)90 ≈ 1+7 = 8 бит. X=3, количество инструментов в группе = 180/3 = 60 Объем памяти для кодирования = log(2)3+log(2)60 ≈ 2+6 = 8 бит. X=4, количество инструментов в группе = 180/4 = 45 Объем памяти для кодирования = log(2)4+log(2)45 ≈ 2+6 = 8 бит. X=5, количество инструментов в группе = 180/5 = 36 Объем памяти для кодирования = log(2)5+log(2)36 ≈ 3+6 = 9 бит. ответ: X=5
Begin
Write('A = ');ReadLn(A);
While A<>0 do
Begin
if (A mod 10) mod 2 = 0 then
Begin
M:=1;
For n:= 0 to n do
M:=M*10;
B:=(A mod 10)*M+B;
n:=n+1;
End;
A:=A div 10;
End;
WriteLn(B div 10);
End.
Пример:
A = 123456789
2468