Решить с логики: василий сказал: "я - отличник", а николай сказал: "я - отличник". известно, что василий и николай или оба говорят правду или оба лгут. известно также, что каждый из них или отличник или хорошист. выясните, кто из них отличник, а кто хорошист.
Командный пользовательский интерфейс требует более высокой абстракции, профессионализма и подготовки. Графический интерфейс более дружественный к оператору, большую часть работы позволяет перенести на плечи компьютера. Как правило, основные ошибки допускает оператор, а не компьютер. Вероятность ошибки возрастает по экспоненте с ростом количества манипуляций оператора. Как правило, если оператор вынужден вводить с клавиатуры в два раза больше команд, то вероятность ошибки возрастает не в 2 раза, а в 10 раз. Поэтому, как заметил еще Стив Джобс, будущее за графическим интерфейсом, который открыл новую эру в Макинтош. В современном мире эволюция интерфейса не остановилась. Все больше роль в общении с компьютером берет на себя электроника. Компьютер научился определять настроение оператора по улыбке, фотография автоматически фокусируется, на нужном участке, вводятся голосовые команды, команды по сигналам нейронов, температурные инфракрасные датчики... С 13 мая 1997 года, когда компьютер победил Г.Каспарова – чемпиона по шахматам среди людей, человечество незаметно для себя шагнуло в новую эпоху, которая по праву называется информационной. Будущее в лидерстве и прогрессе эволюции уже не определяется однозначно и не принадлежит только человеку, а переходит к своеобразному кентавру человеко-машинному комплексу. Рутинные, громоздкие операции ложатся на плечи автоматики, а ответственность и планирование берет на себя человек.
Объяснение:я его сьела
procedure MatInput(a:array[,] of integer);
begin
Writeln('Вводите элементы матрицы построчно, в конце нажимая Enter');
for var i:=0 to Length(a,0)-1 do begin
Write(i+1,': ');
for var j:=0 to Length(a,1)-1 do Read(a[i,j]);
end
end;
procedure MatPrint(a:array[,] of integer);
begin
for var i:=0 to Length(a,0)-1 do begin
for var j:=0 to Length(a,1)-1 do Print(a[i,j]);
Writeln
end
end;
function IsEqual(a:array[,] of integer; j1,j2:integer;
flag:array of boolean):boolean;
// равны ли столбцы с индексами j1 и j2
begin
if flag[j2]=False then begin
Result:=True;
for var i:=0 to Length(a,0)-1 do
if a[i,j1]<>a[i,j2] then begin Result:=False; Break end;
flag[j2]:=Result
end
end;
begin
var n:=ReadInteger('Задайте число строк (столбцов) матрицы:');
var a:array[,] of integer;
var m:=ArrFill(n,False);
SetLength(a,n,n);
MatInput(a);
Writeln('*** Принятая матрица ***');
MatPrint(a);
var k:=1;
for var i:=0 to n-2 do
for var j:=i+1 to n-1 do
if IsEqual(a,i,j,m) then Inc(k);
if k>1 then Writeln('Количество совпадающих столбцов равно ',k)
else Writeln('нет совпадающих столбцов')
end.
Тестовое решение
Задайте число строк (столбцов) матрицы: 3
Вводите элементы матрицы построчно, в конце нажимая Enter
1: 1 2 2
2: 3 5 5
3: 2 2 2
*** Принятая матрица ***
1 2 2
3 5 5
2 2 2
Количество совпадающих столбцов равно 2