А переводишь в двоичную с\с =11110111
в тоже самое в двоичную с\с= 11111001
и смотришь какое подходит
ответ 4, проверяй))
Var i, n: integer;
begin
readln(n);
for i:=10 to 99 do
if (i mod 10 + i div 10 = n) then
write(i, ' ')
end.
function IsOrtho(a: array[,] of integer): boolean;
begin
var n := a.RowCount - 1;
for var row1 := 0 to n do
for var row2 := 0 to n do
begin
var s := 0;
for var col := 0 to n do
s += a[row1, col] * a[row2, col];
if (row1 = row2) and (s <> 1) then
begin
IsOrtho := False;
Exit
end;
if (row1 <> row2) and (s <> 0) then
begin
IsOrtho := False;
Exit
end
end;
IsOrtho := True
end;
begin
var n := 5;
var a := ReadMatrInteger(n, n);
if IsOrtho(a) then
Println('Ортонормированная')
else
Println('Не ортонормированная')
end.
На pascalabc.net