Замечание надеемся, что вы еще не забыли о позиционном принципе записи чисел в любых системах счисления (значение цифр, количество которых ограничено, зависит от положения в числе, от ее позиции).в данный момент мы делаем шаг в сторону абстрагирования от конкретных значений цифр и начинаем считать только количество знакомест (позиций), которое в принято называть "разрядом", а совокупность разрядов (знакомест) — "разрядностью". определение разряд в арифметике — это место, занимаемое цифрой при записи числа. например, в десятичной системе счисления цифры первого разряда — это единицы, второго разряда — десятки и т. д. но арифметические законы, которые кажутся привычными в десятичной системе счисления, все без исключения действительны и для двоичной системы счисления. двоичные числа также можно складывать, вычитать, перемножать и делить с использованием тех же приемов школьного курса арифметики. отличие заключается только в том, что используются всего две цифры. кроме того, как мы уже выяснили, в двоичной системе счисления каждый разряд — это бит и его значение зависит от позиции и равно соответствующей степени числа "2". определение разрядность двоичного числа — это количество знакомест (разрядов) или количество битов, заранее отведенных для записи числа. пример десятичное число "2" может быть записано различными способами в зависимости от разрядности двоичного числа: как "10", если разрядность равна двум; как "0010", если разрядность равна четырем; как "00000010", если разрядность равна восьми. обратите внимание, что последний вариант соответствует записи десятичного числа "2" в пределах одного байта информации. разрядность двоичного числа интересует нас в связи с тем, что это количество разрядов (позиций или знакомест) обеспечивает определенный набор возможных двоичных чисел, которые, как мы уже договорились, могут служить , с которых происходит кодирование любых видов информации: собственно чисел, текстов, графических и цветных изображений, звуков, анимации и видео. осталось только выяснить, каким образом разрядность влияет на количество информации (двоичных кодов), котоую можно получить с определенного количества разрядов. однако прежде следует учесть одну особенность двоичных чисел, нашедшую применение в компьютерных технологиях, — это фиксированные значения разрядности двоичных чисел.
Uses crt; const mn1: array[1..5] of byte =(5,6,1,2,3); {Объявляем наши наборы} const mn2: array[1..5] of byte =(5,8,6,0,3); {Объявляем наши наборы}
var i,c,n:integer;
begin clrscr; write('Набор1 до обработки:'); for i:=1 to 5 do write(mn1[i]:3); {Выводим на экран набор 1} writeln; writeln;
write(' Набор2 до обработки: :'); for i:=1 to 5 do write(mn2[i]:3); {Выводим на экран набор 2}
writeln; writeln;
n:=1; c:=0; while (n<=5) do {В цикле сравниваем n-й элемент набора1 с} Begin {каждым элемент набора2 } for i:=1 to 5 do begin if (mn1[n]=mn2[i]) then begin c:=c+1; {Если нашли совпадение до увеличиваем кол-во совпадающих пар чисел} mn1[n]:=0; {И записываем на их место нули} mn2[i]:=0;
break; {переходим к след элементу набора1} end; end;
Inc(n); End;
{Выводим результаты обработки}
write('Количество совпадающих пар чисел:',c);
writeln; write(' Набор1 после обработки :'); for i:=1 to 5 do write(mn1[i]:3); writeln; writeln;
write(' Набор2 после обработки :'); for i:=1 to 5 do write(mn2[i]:3); readkey; {пауза до нажатия на любую клавишу} end.
Uses crt;
const mn1: array[1..5] of byte =(5,6,1,2,3); {Объявляем наши наборы}
const mn2: array[1..5] of byte =(5,8,6,0,3); {Объявляем наши наборы}
var i,c,n:integer;
begin
clrscr;
write('Набор1 до обработки:');
for i:=1 to 5 do write(mn1[i]:3); {Выводим на экран набор 1}
writeln;
writeln;
write(' Набор2 до обработки: :');
for i:=1 to 5 do write(mn2[i]:3); {Выводим на экран набор 2}
writeln;
writeln;
n:=1; c:=0;
while (n<=5) do {В цикле сравниваем n-й элемент набора1 с}
Begin {каждым элемент набора2 }
for i:=1 to 5 do begin
if (mn1[n]=mn2[i]) then
begin
c:=c+1; {Если нашли совпадение до увеличиваем кол-во совпадающих пар чисел}
mn1[n]:=0; {И записываем на их место нули}
mn2[i]:=0;
break; {переходим к след элементу набора1}
end;
end;
Inc(n);
End;
{Выводим результаты обработки}
write('Количество совпадающих пар чисел:',c);
writeln;
write(' Набор1 после обработки :');
for i:=1 to 5 do write(mn1[i]:3);
writeln;
writeln;
write(' Набор2 после обработки :');
for i:=1 to 5 do write(mn2[i]:3);
readkey; {пауза до нажатия на любую клавишу}
end.