Конъюнкция (от лат. conjunctio союз, связь) — логическая операция, по своему применению максимально приближённая к союзу "и". Синонимы: логическое "И", логическое умножение, иногда просто "И".
Конъюнкция может быть бинарной операцией, то есть, иметь два операнда, тернарной операцией, т.е. иметь три операнда или n-арной операцией, т.е. иметь n операндов. Чаще всего встречаются следующие варианты инфиксной записи:
a & b, a ∧ b, a*b, a AND b
По аналогии с умножением в алгебре знак логического умножения может быть пропущен: ab.
Переменные могут принимать значения из множества {0,1} . Результат также принадлежит множеству {0,1}. Вычисление результата производится по простому правилу, либо по таблице истинности. Вместо значений 0, 1 может использоваться любая другая пара подходящих символов, например false, true или F, T или "ложь", "истина".
Правило: результат равен 1, если все операнды равны 1; во всех остальных случаях результат равен 0.
Таблицы истинности:
для бинарной конъюнкции
a b a∧b
0 0 0
0 1 0
1 0 0
1 1 1
для тернарной конъюнкции
X Y Z X∧Y∧Z
0 0 1 0
1 0 1 0
0 1 1 0
1 1 1 0
0 0 0 0
1 0 0 0
0 1 0 0
1 1 0 1
В классическом исчислении высказываний свойства конъюнкции определяются с аксиом. Классическое исчисление высказываний может быть задано разными системами аксиом, и некоторые из них будут описывать свойства конъюнкции. Один из самых распространённых вариантов включает 3 аксиомы для конъюнкции:
a∧b→a
a∧b→b
a → ( b → (a ∧ b ) )
Связь с естественным языком .
Часто указывают на сходство между конъюнкцией и союзом "и" в естественном языке. Составное утверждение "A и B" считается истинным, когда истинны оба утверждения A и B, в противном случае составное утверждение ложно. Это в точности соответствует определению конъюнкции в булевой алгебре, если "истину" обозначать как 1, а "ложь" как 0. При этом часто делают стандартную оговорку о неоднозначности естественного языка. Например, в зависимости от контекста союз "и" может нести дополнительный оттенок "и тогда", "и поэтому", "и потом"..."И" также несет в себе оттенок неопределенного смысла. Отличие логики естественного языка от математической остроумно выразил американский математик Стивен Клини, заметив, что в естественном языке "Мэри вышла замуж и родила ребенка" — не то же самое, что "Мэри родила ребенка и вышла замуж".
// PascalABC.NET 3.3, сборка 1627 от 27.01.2018 // Внимание! Если программа не работает, обновите версию!
begin var n:=ReadInteger('n='); var x:=ReadReal('x='); var s:=x**3+x**5+x**n; Writeln(s) end.
2. Со стандартной функцией возведения в степень
begin var n:=ReadInteger('n='); var x:=ReadReal('x='); var s:=Power(x,3)+Power(x,5)+Power(x,n); Writeln(s) end.
Пример n= 8 x= 2.3523 1022.47383513855
3. С собственной лямбда-функцией возведения в степень
begin var n:=ReadInteger('n='); var x:=ReadReal('x='); var Pow:(real,integer)->real:=(a,b)->Exp(b*Ln(a)); var s:=Pow(x,3)+Pow(x,5)+Pow(x,n); Writeln(s) end.
4. С собственной обычной функцией возведения в степень
function Pow(a:real; b:integer):=Exp(b*Ln(a));
begin var n:=ReadInteger('n='); var x:=ReadReal('x='); var s:=Pow(x,3)+Pow(x,5)+Pow(x,n); Writeln(s) end.
5. На "древнешкольном", в стиле ТурбоПаскаль-1974 языке
function Pow(a:real; b:integer):real; begin Pow:=Exp(b*Ln(a)) end;
var n:integer; x,s:real;
begin Write('n='); Read(n); Write('x='); Read(x); s:=Pow(x,3)+Pow(x,5)+Pow(x,n); Writeln(s) end.
Конъюнкция (от лат. conjunctio союз, связь) — логическая операция, по своему применению максимально приближённая к союзу "и". Синонимы: логическое "И", логическое умножение, иногда просто "И".
Конъюнкция может быть бинарной операцией, то есть, иметь два операнда, тернарной операцией, т.е. иметь три операнда или n-арной операцией, т.е. иметь n операндов. Чаще всего встречаются следующие варианты инфиксной записи:
a & b, a ∧ b, a*b, a AND b
По аналогии с умножением в алгебре знак логического умножения может быть пропущен: ab.
Переменные могут принимать значения из множества {0,1} . Результат также принадлежит множеству {0,1}. Вычисление результата производится по простому правилу, либо по таблице истинности. Вместо значений 0, 1 может использоваться любая другая пара подходящих символов, например false, true или F, T или "ложь", "истина".
Правило: результат равен 1, если все операнды равны 1; во всех остальных случаях результат равен 0.
Таблицы истинности:
для бинарной конъюнкции
a b a∧b
0 0 0
0 1 0
1 0 0
1 1 1
для тернарной конъюнкции
X Y Z X∧Y∧Z
0 0 1 0
1 0 1 0
0 1 1 0
1 1 1 0
0 0 0 0
1 0 0 0
0 1 0 0
1 1 0 1
В классическом исчислении высказываний свойства конъюнкции определяются с аксиом. Классическое исчисление высказываний может быть задано разными системами аксиом, и некоторые из них будут описывать свойства конъюнкции. Один из самых распространённых вариантов включает 3 аксиомы для конъюнкции:
a∧b→a
a∧b→b
a → ( b → (a ∧ b ) )
Связь с естественным языком .
Часто указывают на сходство между конъюнкцией и союзом "и" в естественном языке. Составное утверждение "A и B" считается истинным, когда истинны оба утверждения A и B, в противном случае составное утверждение ложно. Это в точности соответствует определению конъюнкции в булевой алгебре, если "истину" обозначать как 1, а "ложь" как 0. При этом часто делают стандартную оговорку о неоднозначности естественного языка. Например, в зависимости от контекста союз "и" может нести дополнительный оттенок "и тогда", "и поэтому", "и потом"..."И" также несет в себе оттенок неопределенного смысла. Отличие логики естественного языка от математической остроумно выразил американский математик Стивен Клини, заметив, что в естественном языке "Мэри вышла замуж и родила ребенка" — не то же самое, что "Мэри родила ребенка и вышла замуж".
// PascalABC.NET 3.3, сборка 1627 от 27.01.2018
// Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('n=');
var x:=ReadReal('x=');
var s:=x**3+x**5+x**n;
Writeln(s)
end.
2. Со стандартной функцией возведения в степень
begin
var n:=ReadInteger('n=');
var x:=ReadReal('x=');
var s:=Power(x,3)+Power(x,5)+Power(x,n);
Writeln(s)
end.
Пример
n= 8
x= 2.3523
1022.47383513855
3. С собственной лямбда-функцией возведения в степень
begin
var n:=ReadInteger('n=');
var x:=ReadReal('x=');
var Pow:(real,integer)->real:=(a,b)->Exp(b*Ln(a));
var s:=Pow(x,3)+Pow(x,5)+Pow(x,n);
Writeln(s)
end.
4. С собственной обычной функцией возведения в степень
function Pow(a:real; b:integer):=Exp(b*Ln(a));
begin
var n:=ReadInteger('n=');
var x:=ReadReal('x=');
var s:=Pow(x,3)+Pow(x,5)+Pow(x,n);
Writeln(s)
end.
5. На "древнешкольном", в стиле ТурбоПаскаль-1974 языке
function Pow(a:real; b:integer):real;
begin
Pow:=Exp(b*Ln(a))
end;
var
n:integer;
x,s:real;
begin
Write('n='); Read(n);
Write('x='); Read(x);
s:=Pow(x,3)+Pow(x,5)+Pow(x,n);
Writeln(s)
end.