<span>Предлагаю автоматический поиск и проверку логических функций
на Excel</span>
Копируя логические элементы собираем необходимую функцию,
строим таблицу, в листе СДНФ (жмем на ярлык внизу) находим СДНФ функции, затем
в листах 1 строим логическую схему и упрощаем, проверяем
F=¬(A&B)v¬(Bv¬C)
Упрощаем
<span>F =¬Av¬B</span>
Собираем схему проверяем
<span>
</span>
// F#
[<EntryPoint>]
let main argv =
let getArray =
let rand = new System.Random();
[1..4] |> Seq.map (fun x -> rand.Next 10)
let A = getArray;
let B = getArray;
let C = A |> Seq.mapi (fun i a -> a * a - (B |> Seq.nth i))
printf "%s" (Seq.fold (fun sum x -> sprintf "%s %d" sum x) "" C)
System.Console.ReadKey true |> ignore
0
Вот так можно решить
Program M;
var i : integer = 0;
pologitelnie : integer = 0;
otricatelnie : integer = 0; a : array[0..100] of Integer;
begin
repeat
begin
read (a[i]);
if (a[i]>=0) then
pologitelnie := pologitelnie + 1
else
otricatelnie := otricatelnie + 1;
i := i + 1;
end;
until a[i-1] = 0;
writeln('положительных: ', pologitelnie);
writeln('отрицательных: ', otricatelnie);
end.
x1 x2 x3 x1 и не x2 и x3 x1 и x2 и не x3 не x3
0 0 0 0 0 1
0 0 1 0 0 0
0 1 0 0 0 1
0 1 1 0 0 0
1 0 0 0 0 1
1 0 1 1 0 0
1 1 0 0 1 1
1 1 1 0 0 0
F(1,1,0)=1,F(1,0,1)=1,F(1,0,0)=1,F(0,1,0)=1,F(0,0,0)=1