yxwz
Объяснение:
Чтобы значение функции (¬x ≡ z) → (y ≡ (w ∨ x)) было ложным, выражение ¬x ≡ z должно быть истинным, а выражение y ≡ (w ∨ x) – ложным. Чтобы первое выражение было истинным, переменные x и z должны иметь противоположные значения: 0 и 1 или 1 и 0.
Рассмотрим третью строку таблицы. Три переменных равны нулю, F = 0. Значит, оставшаяся переменная (переменная 2 в таблице) равна 1, и это z или x. Тогда y = 0, w = 0, и чтобы выражение y ≡ (w ∨ x) было ложным, необходимо, чтобы x = 1. Значит, второй столбец – x. Другой подходящей комбинации с тремя нулями быть не может, значит, в пустых клетках в первой и второй строках таблицы должны стоять единицы.
Поскольку x и z должны иметь разные значения, а x – это переменная 2, из первой и второй строк таблицы видим, что z – переменная 4.
Рассмотрим вторую строку. В ней x = 1, тогда w ∨ x= 1 независимо от значения w, и чтобы выражение y ≡ (w ∨ x) было ложным, необходимо, чтобы y = 0. Получается, что y – переменная 1, w – переменная 3.
mass = array[1..10, 1..10] of real;
var
a, b, c: mass;
n, m, i, j, n1, m1: integer;
procedure MatrA(var a: mass);
var
i, j: integer;
begin
for i := 1 to n do
for j := 1 to m do
begin
writeln('a[', i, ',', j, ']: ');
readln(a[i, j])
end
end;
procedure MatrB(var b: mass);
var
i, j: integer;
begin
for i := 1 to n1 do
for j := 1 to m1 do
begin
writeln('b[', i, ',', j, ']: ');
readln(b[i, j])
end
end;
procedure Sum(a, b: mass; var c: mass);
var
i, j: integer;
begin
for i := 1 to n do
for j := 1 to m do
c[i, j] := a[i, j] + b[i, j];
end;
begin
writeln('Введите n,m матрицы A');
readln(n, m);
MatrA(a);
writeln('Введите n,m матрицы B');
readln(n1, m1);
MatrB(b);
if (n1 <> n) and (m1 <> m) then
writeln('Матрицы сложить нельзя')
else begin
Sum(a, b, c);
writeln('A+B');
for i := 1 to n do
begin
for j := 1 to m do
write(c[i, j]:1:3, ' ');
writeln
end
end;
readln;
end.