Запись в матрицу результатов побитовых операций

Заполнить первые две строки двумерного массива 4×8 случайными нулями и единицами. В третью строку записать результат побитовой операции И над числами в соответствующих столбцах первых двух строк, в четвертую — результат побитовой операции ИЛИ. Например, если в первой ячейке первой строки находится 0, а в первой ячейке второй строки 1, то в первой ячейке третьей строки будет 0 (результат И над 0 и 1), а в первой ячейке четвертой строки 1 (результат ИЛИ).

  1. Заполнить две первые строки матрицы случайными нулями и единицами. При заполнении выводить на экран.
  2. В цикле по столбцам матрицы заполнять третью и четвертую строки результатами побитовых операций И и ИЛИ соответственно над элементами первых двух строк одноименных столбцов.
  3. Вывести на экран две последние строки двумерного массива.
Pascal


var
a: array[1..4,1..8] of integer;
i,j: byte;

begin
randomize;
for i:=1 to 2 do begin
for j:=1 to 8 do begin
a[i,j] := random(2);
write(a[i,j]:4);
end;
writeln;
end;

for j:=1 to 8 do begin
a[3,j] := a[1,j] and a[2,j];
a[4,j] := a[1,j] or a[2,j];
end;

writeln;
for i:=3 to 4 do begin
for j:=1 to 8 do
write(a[i,j]:4);
writeln;
end;
end.



Пример(ы) выполнения программы на языке Pascal:

1 0 1 1 0 1 0 1
0 1 1 1 1 1 0 0

0 0 1 1 0 1 0 0
1 1 1 1 1 1 0 1
Язык Си


#include < stdio.h>

main() {
int a[4][8], i, j;
srand(time(NULL));
for (i=0; i<2; i++) {
for (j=0; j<8; j++) {
a[i][j] = rand()%2;
printf("%4d", a[i][j]);
}
printf("\n");
}
printf("\n");

for (j=0; j<8; j++) {
a[2][j] = a[0][j] & a[1][j];
a[3][j] = a[0][j] | a[1][j];
}

for (i=2; i<4; i++) {
for (j=0; j<8; j++) {
printf("%4d", a[i][j]);
}
printf("\n");
}
}



1 0 0 1 1 0 1 0
1 1 0 1 0 0 1 1

1 0 0 1 0 0 1 0
1 1 0 1 1 0 1 1
Python


from random import random
a = []
for i in range(2):
z = []
for j in range(8):
n = int(random() * 2)
z.append(n)
print("%3d" % n, end='')
print()
a.append(z)
print()

b_and = []
b_or = []
for j in range(8):
b_and.append(a[0][j] & a[1][j])
b_or.append(a[0][j] | a[1][j])
a.append(b_and)
a.append(b_or)

for i in range(2,4):
for j in range(8):
print("%3d" % a[i][j], end='')
print()



0 1 0 0 0 0 1 1
1 1 1 0 0 1 1 0

0 1 0 0 0 0 1 0
1 1 1 0 0 1 1 1
Basic-256


dim a(4,8)
for i=0 to 1
for j=0 to 7
a[i,j] = int(rand*2)
print a[i,j] + " ";
next j
print
next i
print

for j=0 to 7
a[2,j] = a[0,j] & a[1,j]
a[3,j] = a[0,j] | a[1,j]
next j

for i=2 to 3
for j=0 to 7
print a[i,j] + " ";
next j
print
next i



1 0 0 1 1 1 1 0
1 1 0 0 1 1 1 0

1 0 0 0 1 1 1 0
1 1 0 1 1 1 1 0

Оцените статью
Добавить комментарий