const
szm = 10;
szn = 10;
var
a: array[1..szm, 1..szn] of integer;
m, n, i, j, count: integer;
begin
m : = 3;
n : = 4;
{ввод массива}
for i : = 1 to m do
for j : = 1 to n do
a[i, j] : = (i - 1) * n + j; //если ввод вручную, тогда read(a[i,j])
{вывод массива}
for i : = 1 to m do
begin
for j : = 1 to n do
write(a[i, j]: 4);
writeln;
end;
{подсчет четных}
for i : = 1 to m do
for j : = 1 to n do
if a[i, j] mod 2 = 0 then count += 1;
write('количество четных: ', count)
end.
переведем 109 в двоичную систему: 1*2^6 + 1*2^5 + 0*2^4 + 1*2^3 + 1*2^2 +0*2^1 + 1*2^0:
0110 1101
в знаковом виде, в старшем разряде (самый левый) хранится знак числа: 0 для +, 1 для минус; остальные разряды - само число.
отрицательное числом может кодироваться в прямом, обратном и дополнительном кодах.
в прямом коде это то же самое положительное, только с другим знаком:
1110 1101
в обратном - все значащие разряды инвертированы:
1001 0010
в дополнительном к обратному коду просто прибавлена единица:
1001 0011
чаще всего в вычислительной техники пользуются дополнительным кодом, так что подозреваю, что он тебе и нужен.
Поделитесь своими знаниями, ответьте на вопрос: