Const m=10; n=8; var a:array[1..m,1..n] of integer; i,j:integer; p:double;
begin Randomize; Writeln('Исходный массив'); for i:=1 to m do begin for j:=1 to n do begin a[i,j]:=Random(101)-50; Write(a[i,j]:4); end; Writeln end; p:=1; for j:=1 to n do if a[3,j]>0 then p:=p*a[3,j]; Writeln('Искомое произведение: ',p) end.
Сложение одноразрядных двоичных чисел выполняется по следующим правилам:
0 + 0 = 0
1 + 0 = 1
0 + 1 = 1
1 + 1 = 10
В последнем случае, при сложении двух единиц, происходит переполнение младшего разряда, и единица переносится в старший разряд. Переполнение возникает в случае, если сумма равна основанию системы счисления (в данном случае это число 2) или больше его (для двоичной системы счисления это не актуально).
Сложим для примера два любых двоичных числа:
1101
+ 101
10010
Вычитание
Вычитание одноразрядных двоичных чисел выполняется по следующим правилам:
0 - 0 = 0
1 - 0 = 1
0 - 1 = (заем из старшего разряда) 1
1 - 1 = 0
Пример:
1110
- 101
1001
Умножение
Умножение одноразрядных двоичных чисел выполняется по следующим правилам:
0 * 0 = 0
1 * 0 = 0
0 * 1 = 0
1 * 1 = 1
Пример:
1110
* 10
+ 0000
1110
11100
Деление
Деление выполняется так же как в десятичной системе счисления:
m=10;
n=8;
var
a:array[1..m,1..n] of integer;
i,j:integer;
p:double;
begin
Randomize;
Writeln('Исходный массив');
for i:=1 to m do
begin
for j:=1 to n do
begin
a[i,j]:=Random(101)-50;
Write(a[i,j]:4);
end;
Writeln
end;
p:=1;
for j:=1 to n do
if a[3,j]>0 then p:=p*a[3,j];
Writeln('Искомое произведение: ',p)
end.
Тестовое решение:
Исходный массив
35 30 35 -25 -50 8 -20 47
-34 -26 -7 34 -9 -31 10 -46
-17 -21 27 8 27 41 35 -48
30 -44 25 48 30 -20 10 -6
-3 -10 45 -33 3 -38 -11 -8
47 -25 -27 -7 2 -20 -4 -48
-38 32 -29 -41 31 16 46 44
45 33 -4 45 34 -18 -33 37
15 49 -14 -49 -25 -8 1 -30
41 -15 11 1 17 -8 0 -1
Искомое произведение: 8368920
Сложение одноразрядных двоичных чисел выполняется по следующим правилам:
0 + 0 = 0
1 + 0 = 1
0 + 1 = 1
1 + 1 = 10
В последнем случае, при сложении двух единиц, происходит переполнение младшего разряда, и единица переносится в старший разряд. Переполнение возникает в случае, если сумма равна основанию системы счисления (в данном случае это число 2) или больше его (для двоичной системы счисления это не актуально).
Сложим для примера два любых двоичных числа:
1101
+ 101
10010
Вычитание
Вычитание одноразрядных двоичных чисел выполняется по следующим правилам:
0 - 0 = 0
1 - 0 = 1
0 - 1 = (заем из старшего разряда) 1
1 - 1 = 0
Пример:
1110
- 101
1001
Умножение
Умножение одноразрядных двоичных чисел выполняется по следующим правилам:
0 * 0 = 0
1 * 0 = 0
0 * 1 = 0
1 * 1 = 1
Пример:
1110
* 10
+ 0000
1110
11100
Деление
Деление выполняется так же как в десятичной системе счисления:
1110 | 10
|
10 | 111
11
10
10
10
0