И Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ: ЛогичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹

ΠžΡΠ½ΠΎΠ²Ρ‹ Π»ΠΎΠ³ΠΈΠΊΠΈ β€” Ρ‡Ρ‚ΠΎ это, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΎΡ‚Π²Π΅Ρ‚

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ Π»ΠΎΠ³ΠΈΠΊΠ° (ΠΎΠ½Π° ΠΆΠ΅ Π±ΡƒΠ»Π΅Π²Π° Π°Π»Π³Π΅Π±Ρ€Π°) являСтся Π½Π΅ΠΎΡ‚ΡŠΠ΅ΠΌΠ»Π΅ΠΌΡ‹ΠΌ Π±Π»ΠΎΠΊΠΎΠΌ Π·Π½Π°Π½ΠΈΠΉ ΠΊΠ°ΠΊ Π² школьном курсС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠΈ, Ρ‚Π°ΠΊ ΠΈ Π² Π•Π“Π­. Π’ чистом Π²ΠΈΠ΄Π΅ Π»ΠΎΠ³ΠΈΠΊΠ° Π² экзамСнС прСдставлСна Π² Π΄Π²ΡƒΡ… заданиях: β„–2 ΠΈ β„–15, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ΄ΡƒΡ‚ ΠΏΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΡŽ слоТности. ΠšΡ€ΠΎΠΌΠ΅ этого, Π»ΠΎΠ³ΠΈΠΊΠ° Π² Ρ‚ΠΎΠΌ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅ встрСчаСтся ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ€Π°Π·Π΄Π΅Π»Π°Ρ… экзамСна – ΠΎΡ‚ кодирования ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π΄ΠΎ программирования.

ЦСль Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΊΠ°ΠΊ Π½Π°ΡƒΠΊΠΈ – ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, истинно ΠΈΠ»ΠΈ Π»ΠΎΠΆΠ½ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ высказываниС, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ связь ΠΌΠ΅ΠΆΠ΄Ρƒ высказываниями ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°. Высказывания ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ΡΡ логичСскими ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ лишь Π΄Π²Π° значСния:

Π˜ΡΡ‚ΠΈΠ½Π° = 1, Π›ΠΎΠΆΡŒ = 0

ЛогичСскиС выраТСния (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ состоят ΠΈΠ· Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ высказывания) Π½Π° СстСствСнном языкС ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ связок «И», Β«Π˜Π›Π˜Β», «НЕ». Π’ матСматичСской Π»ΠΎΠ³ΠΈΠΊΠ΅ Π°Π½Π°Π»ΠΎΠ³ΠΎΠΌ этих связок ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ логичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ – ΠΊΠΎΠ½ΡŠΡŽΠ½ΠΊΡ†ΠΈΡ, Π΄ΠΈΠ·ΡŠΡŽΠ½ΠΊΡ†ΠΈΡ ΠΈ инвСрсия. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ составного логичСского выраТСния, Π½Π°Π΄ΠΎ Π·Π½Π°Ρ‚ΡŒ значСния входящих Π² Π½Π΅Π³ΠΎ логичСских ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… (высказываний). Π§Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ всС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ случаи, Π² Π±ΡƒΠ»Π΅Π²ΠΎΠΉ Π°Π»Π³Π΅Π±Ρ€Π΅ Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚ – Ρ‚Π°Π±Π»ΠΈΡ†Π° истинности. Π’Π°Π±Π»ΠΈΡ†Π° истинности строится ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: Π² столбцах Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ логичСскиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈ само Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π° Π² строках – всСвозмоТныС ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ для Π½ΠΈΡ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выраТСния. Для выраТСния, содСрТащСго n ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, количСство ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΉ для Π½ΠΈΡ… Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π½ΠΎ 2n. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΏΡ€ΠΎ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ истинности написано Π½ΠΈΠΆΠ΅.

ЛогичСскоС ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠšΠΎΠ½ΡŠΡŽΠ½ΠΊΡ†ΠΈΡ

ΠšΠΎΠ½ΡŠΡŽΠ½ΠΊΡ†ΠΈΡ (логичСскоС ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅, логичСскоС «И») ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ объСдинСниС Π΄Π²ΡƒΡ… ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… высказываний Π² ΠΎΠ΄Π½ΠΎ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ истинным Ρ‚ΠΎΠ³Π΄Π° ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° истинны всС входящиС Π² Π½Π΅Π³ΠΎ высказывания. ΠŸΡƒΡΡ‚ΡŒ Π΅ΡΡ‚ΡŒ Π΄Π²Π° высказывания:

Π­Ρ‚ΠΈ высказывания истинны. Π—Π½Π°Ρ‡ΠΈΡ‚, ΠΈΡ… объСдинСниС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠ½ΡŠΡŽΠ½ΠΊΡ†ΠΈΠΈ (Β«Π’ Π•Π“Π­ ΠΏΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ΅ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ И Π»ΠΎΠ³ΠΈΠΊΠ°Β») – истинно.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ ΠΊΠΎΠ½ΡŠΡŽΠ½ΠΊΡ†ΠΈΠΈ Π² Π±ΡƒΠ»Π΅Π²ΠΎΠΉ Π°Π»Π³Π΅Π±Ρ€Π΅ принято ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ Π·Π½Π°ΠΊΠΎΠΌ Β« /\ Β» ΠΈΠ»ΠΈ, Ρ€Π΅ΠΆΠ΅, Β« & Β» (ампСрсанд). ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ логичСского умноТСния, Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡΠ²Π»ΡΡŽΡ‚ΡΡ логичСскиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ А ΠΈ Π’, Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΎΠΉ: A /\ B. Π’Π°Π±Π»ΠΈΡ†Π° истинности для ΠΊΠΎΠ½ΡŠΡŽΠ½ΠΊΡ†ΠΈΠΈ:

ABA /\ B
000
010
100
111

ЛогичСскоС слоТСниС. Π”ΠΈΠ·ΡŠΡŽΠ½ΠΊΡ†ΠΈΡ

Π”ΠΈΠ·ΡŠΡŽΠ½ΠΊΡ†ΠΈΡ (логичСскоС слоТСниС, логичСскоС Β«Π˜Π›Π˜Β») ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ объСдинСниС Π΄Π²ΡƒΡ… ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… высказываний Π² ΠΎΠ΄Π½ΠΎ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ истинным Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° истинно хотя Π±Ρ‹ ΠΎΠ΄Π½ΠΎ входящСС Π² Π½Π΅Π³ΠΎ высказываниС.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ Π΄ΠΈΠ·ΡŠΡŽΠ½ΠΊΡ†ΠΈΠΈ Π² Π±ΡƒΠ»Π΅Π²ΠΎΠΉ Π°Π»Π³Π΅Π±Ρ€Π΅ принято ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ Π·Π½Π°ΠΊΠΎΠΌ Β« \/ Β». ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ логичСского слоТСния, Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡΠ²Π»ΡΡŽΡ‚ΡΡ логичСскиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ А ΠΈ Π’, записываСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΎΠΉ: A \/ B. Π’Π°Π±Π»ΠΈΡ†Π° истинности для Π΄ΠΈΠ·ΡŠΡŽΠ½ΠΊΡ†ΠΈΠΈ:

ABA \/ B
000
011
101
111

ЛогичСскоС ΠΎΡ‚Ρ€ΠΈΡ†Π°Π½ΠΈΠ΅. Π˜Π½Π²Π΅Ρ€ΡΠΈΡ

Π˜Π½Π²Π΅Ρ€ΡΠΈΡ (логичСскоС ΠΎΡ‚Ρ€ΠΈΡ†Π°Π½ΠΈΠ΅, логичСскоС «НЕ») ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΈΠ· истинного высказывания Π»ΠΎΠΆΠ½ΠΎΠ΅ ΠΈ, Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚, ΠΈΠ· Π»ΠΎΠΆΠ½ΠΎΠ³ΠΎ – истинноС. НапримСр, высказываниС «Москва – столица России» истинно, Π° Π΄Π°Π½Π½ΠΎΠ΅ высказываниС, ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ логичСского отрицания («Москва – Π½Π΅ столица России») – Π»ΠΎΠΆΠ½ΠΎ. Π›ΠΎΠΆΠ½ΠΎΠ΅ высказываниС ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ истинным с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ инвСрсии:

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ инвСрсии Π² Π±ΡƒΠ»Π΅Π²ΠΎΠΉ Π°Π»Π³Π΅Π±Ρ€Π΅ принято ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ Π·Π½Π°ΠΊΠΎΠΌ Β« Β¬ Β». ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ логичСского отрицания, Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ являСтся логичСская пСрСмСнная А, записываСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΎΠΉ: Β¬A. Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ логичСского отрицания являСтся Π˜ΡΡ‚ΠΈΠ½Π°, ΠΊΠΎΠ³Π΄Π° Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Π›ΠΎΠΆΡŒ, ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π›ΠΎΠΆΡŒ, ΠΊΠΎΠ³Π΄Π° Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Π˜ΡΡ‚ΠΈΠ½Π°. Π’Π°Π±Π»ΠΈΡ†Π° истинности для инвСрсии:

A¬A
01
10

ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ† истинности логичСских Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ

Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ логичСского выраТСния ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ истинности, которая опрСдСляСт Π΅Π³ΠΎ ΠΈΡΡ‚ΠΈΠ½Π½ΠΎΡΡ‚ΡŒ ΠΈΠ»ΠΈ Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ всСх Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… комбинациях исходных Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ логичСских ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Алгоритм построСния Ρ‚Π°Π±Π»ΠΈΡ† истинности:

  1. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ количСство строк, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Ρ€Π°Π²Π½ΠΎ количСству Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ логичСских ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, входящих Π² логичСскоС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ (Ссли ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… n ΡˆΡ‚ΡƒΠΊ, Ρ‚ΠΎ количСство строк Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π½ΠΎ 2n). Π•Ρ‰Π΅ ΠΎΠ΄Π½Ρƒ строку стоит Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ для указания самих ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΈΡ‚ΠΎΠ³ΠΎ строк Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π±ΡƒΠ΄Π΅Ρ‚ 2n + 1.

  2. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ количСство столбцов, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Ρ€Π°Π²Π½ΠΎ количСству логичСских ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… плюс количСство логичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. Π­Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ логичСского выраТСния поэтапно, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ выполняя всС логичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ исходными ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ.

  3. ΠŸΠΎΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ с ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ количСством столбцов ΠΈ строк ΠΈ внСсти всСвозмоТныС Π½Π°Π±ΠΎΡ€Ρ‹ логичСских ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Наборы Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… рСкомСндуСтся Π·Π°ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

  • Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ столбСц Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΠΏΠΎΠ»Π°ΠΌ ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ нулями, Π° ниТнюю – Π΅Π΄ΠΈΠ½ΠΈΡ†Π°ΠΌΠΈ;

  • Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ столбСц Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π° Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ части ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΠΈ Ρ‡Π΅Ρ€Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈΡΡ Π³Ρ€ΡƒΠΏΠΏΠ°ΠΌΠΈ Π½ΡƒΠ»Π΅ΠΉ ΠΈ Π΅Π΄ΠΈΠ½ΠΈΡ†;

  • ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ столбцов Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π½Π° 8, 16, 32 ΠΈ Ρ‚.Π΄. частСй.

  1. Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ истинности ΠΏΠΎ столбцам, выполняя Π±Π°Π·ΠΎΠ²Ρ‹Π΅ логичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ Π² соотвСтствии с Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ истинности.

ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ выполнСния логичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, содСрТащих ΠΊΠΎΠ½ΡŠΡŽΠ½ΠΊΡ†ΠΈΡŽ, Π΄ΠΈΠ·ΡŠΡŽΠ½ΠΊΡ†ΠΈΡŽ ΠΈ ΠΈΠ½Π²Π΅Ρ€ΡΠΈΡŽ

ΠŸΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ значСния слоТных логичСских Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ стоит ΡΠΎΠ±Π»ΡŽΠ΄Π°Ρ‚ΡŒ строгий порядок выполнСния входящих Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ:

  1. Π˜Π½Π²Π΅Ρ€ΡΠΈΡ

  2. ΠšΠΎΠ½ΡŠΡŽΠ½ΠΊΡ†ΠΈΡ

  3. Π”ΠΈΠ·ΡŠΡŽΠ½ΠΊΡ†ΠΈΡ

  4. Π‘ΠΎΠ»Π΅Π΅ слоТныС логичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Ρ‡ΡƒΡ‚ΡŒ ΠΏΠΎΠ·ΠΆΠ΅.

Аналогично Ρ‚ΠΎΠΌΡƒ, ΠΊΠ°ΠΊ это дСлаСтся Π² Π°Ρ€ΠΈΡ„ΠΌΠ΅Ρ‚ΠΈΠΊΠ΅, ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ выполнСния логичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ скобок.

НапримСр, Ρƒ выраТСния A \/ B /\ (Π‘ \/Β¬D) Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ порядок дСйствий:

1. Β¬D

2. (Π‘ \/Β¬D)

3. B /\ (Π‘ \/Β¬D)

4. A \/ B /\ (Π‘ \/Β¬D)

АлгСбра Π»ΠΎΠ³ΠΈΠΊΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ — Умскул Π£Ρ‡Π΅Π±Π½ΠΈΠΊ

На этой страницС Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅
  • Π§Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ с ΠΈΠΌΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ ΠΈ эквивалСнциСй?
  • КакоС ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π°Π»Π³Π΅Π±Ρ€Π° Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΉΡ‚ΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ?

Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ «АлгСбра Π»ΠΎΠ³ΠΈΠΊΠΈΒ» ΠΌΡ‹ Π²Ρ‹ΡƒΡ‡ΠΈΠ»ΠΈ основы этого нСпростого Ρ€Π°Π·Π΄Π΅Π»Π° ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠΈ. Π Π°Π·ΠΎΠ±Ρ€Π°Π²ΡˆΠΈΡΡŒ Π² Ρ‚ΠΎΠΉ Ρ‚Π΅ΠΌΠ΅, ΠΏΠΎΡ€Π° ΠΏΠΎΠΉΡ‚ΠΈ дальшС ΠΈ Π·Π°Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ Π½Π° понятном ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ языкС β€” языкС программирования.

ЛогичСскиС уравнСния Π² Python
ΠœΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎ Π°Π»Π³Π΅Π±Ρ€Π° Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ истиной ΠΈ лоТью, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ числа 1 ΠΈ 0.

Π’ Python эта Π»ΠΎΠ³ΠΈΠΊΠ° сохраняСтся. Π’ Π½Π΅ΠΌ Π΅ΡΡ‚ΡŒ логичСский Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… bool, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ True ΠΈΠ»ΠΈ False β€” истина ΠΈ лоТь соотвСтствСнно. ПослСдниС Ρ‚Π°ΠΊΠΆΠ΅ эквивалСнтны числам 1 ΠΈ 0.

Как логичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Python ΠΈ Π² Ρ‡Π΅ΠΌ ΠΈΡ… ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅?

ЛогичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Π² Python ΠΌΡ‹ ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΈ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ Β«ΠžΡΠ½ΠΎΠ²Ρ‹ программирования. Π§Π°ΡΡ‚ΡŒ 2Β». Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΈΡ… вспомним:

Π§Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ с ΠΈΠΌΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ ΠΈ эквивалСнциСй?

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ для ΠΈΠΌΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ эквивалСнции Π½Π΅Ρ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… логичСских ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², Π½ΠΎ для Π½ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ матСматичСскиС:
β€” ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ сравнСниС Π½Π° равСнство Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ логичСская эквивалСнция: Π²Π΅Ρ€Π½Π΅Ρ‚ True, Ссли значСния Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅ ΠΈ False Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС.
β€” ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ β€œΠΌΠ΅Π½ΡŒΡˆΠ΅ ΠΈΠ»ΠΈ равно” ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ соотвСтствуСт логичСскому слСдованию: False Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ слСва Π±ΡƒΠ΄Π΅Ρ‚ мСньшС ΠΈΠ»ΠΈ Ρ€Π°Π²Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ справа. А Ссли Π²ΡΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ аналогию логичСских ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ Ρ†Π΅Π»Ρ‹Ρ… чисСл, это ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ситуации 1 <= 0. Π’ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… случаях Π±ΡƒΠ΄Π΅Ρ‚ истина.

Но нСсмотря Π½Π° ΡΡ…ΠΎΠΆΠ΅ΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹, это всС Π΅Ρ‰Π΅ матСматичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹, ΠΈΠ·-Π·Π° Ρ‡Π΅Π³ΠΎ Π½Π°Ρ€ΡƒΡˆΠ°Π΅Ρ‚ΡΡ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ:
β€” ЭквивалСнция ΠΈ импликация Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ€Π°Π²Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π² порядкС ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ. Но ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ логичСских ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈΡ… ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ станСт самым высоким.
β€” Π˜Π½Π²Π΅Ρ€ΡΠΈΡ, ΠΊΠΎΠ½ΡŠΡŽΠ½ΠΊΡ†ΠΈΡ ΠΈ Π΄ΠΈΠ·ΡŠΡŽΠ½ΠΊΡ†ΠΈΡ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ свой Π·Π°ΠΊΠΎΠ½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚.

Π‘Π°ΠΌΡ‹ΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΡ‡Π½Ρ‹ΠΉ совСт ΠΏΠΎ записи логичСских ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΉ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ β€” Π½Π΅ ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ скобки, Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ матСматичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹.

НапримСр:

  • простоС логичСскоС ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ· ΠΊΠΎΠ½ΡŠΡŽΠ½ΠΊΡ†ΠΈΠΈ, Π΄ΠΈΠ·ΡŠΡŽΠ½ΠΊΡ†ΠΈΠΈ ΠΈ инвСрсии Π² Π»ΠΈΡˆΠ½ΠΈΡ… скобках Π½Π΅ нуТдаСтся (ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚Π΅Ρ…, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Ρ‡Ρ‚ΠΎ ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ Π² ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΈ):
  • ΠΏΡ€ΠΈ появлСнии ΠΈΠΌΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ эквивалСнции ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ скобки, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΈ этих, ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… логичСских ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:

РСшСниС практичСских Π·Π°Π΄Π°Ρ‡
КакоС ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π°Π»Π³Π΅Π±Ρ€Π° Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΉΡ‚ΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ?

ΠœΠ΅ΠΆΠ΄Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈ Π°Π»Π³Π΅Π±Ρ€ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ установлСн довольно приятный союз:

β€” Π‘ ΠΎΠ΄Π½ΠΎΠΉ стороны, Π² Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΈ Π·Π°ΠΏΡƒΡ‚Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ логичСских зависимостСй, Ρ€Π°ΡΠΏΡƒΡ‚Π°Ρ‚ΡŒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π·Π½Π°Π½ΠΈΠ΅ Π°Π»Π³Π΅Π±Ρ€Ρ‹ Π»ΠΎΠ³ΠΈΠΊΠΈ.
β€” Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ, Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ приятной, β€” ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° смоТСт всС Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π·Π° нас. ЛогичСскиС уравнСния ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ большими ΠΈ Π·Π°ΠΏΡƒΡ‚Π°Π½Π½Ρ‹ΠΌΠΈ. Π—Π°ΠΊΠΎΠ½Ρ‹ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Π½Π°ΠΌ ΠΈΡ… ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ. Π Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с сокращСнным Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ‰Π΅. Но Π·Π°Ρ‡Π΅ΠΌ ΡƒΠΏΡ€ΠΎΡ‰Π°Ρ‚ΡŒ, Ссли ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ достаточно Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ?

НапримСр, ΠΎΡ‡Π΅Π½ΡŒ популярная Π·Π°Π΄Π°Ρ‡Π° Π°Π»Π³Π΅Π±Ρ€Ρ‹ Π»ΠΎΠ³ΠΈΠΊΠΈ β€” построСниС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ истинности. Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° смогла это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ?

А много нам и нС надо:

  1. НуТСн ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ логичСских ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΏΠΎ совсСм Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΎΠΌΡƒ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρƒ β€” ΠΎΡ‚ 0 Π΄ΠΎ 1.
  2. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ записанноС логичСскоС ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π½Π°Π±ΠΎΡ€Π΅ истины ΠΈ Π»ΠΆΠΈ.

Вопрос встаСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. Python β€” ΠΎΡ‡Π΅Π½ΡŒ Π³ΠΈΠ±ΠΊΠΈΠΉ язык. Для Ρ€Π°Π·Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΎΠΊ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ инструмСнты, ΠΏΡ€ΠΈ использовании ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… написаниС ΠΊΠΎΠ΄Π° станСт Π΅Ρ‰Π΅ приятнСС.

НачнСм с ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ β€” построСниС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ истинности. На этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ матСматичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΏΡƒΡ‚Π°ΡŽΡ‚ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ логичСских. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Π΄Π°Π²Π°ΠΉΡ‚Π΅ составим Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ истинности для уравнСния A ≑ B ∧ C β‡’ A.

ΠŸΠ΅Ρ€Π΅Π±ΠΎΡ€ устроим с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»ΠΎΠ² for. Они Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΡ‚ΠΎΠΌ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒΡΡ Π² логичСскоС ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅.

Для удобства Π±ΡƒΠ΄Π΅ΠΌ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ уравнСния Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ, Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ всС Π½Π° экран.


print("A B C")
for A in range(0, 2):
	for B in range(0, 2):
		for C in range(0, 2):
			result = A == ((B and C) <= A)
			print(A, B, C, result)
Π’Ρ‹Π²ΠΎΠ΄:
A B C
0 0 0 False
0 0 1 False
0 1 0 False
0 1 1 True
1 0 0 True
1 0 1 True
1 1 0 True
1 1 1 True

ΠœΡ‹ Π·Π°Ρ€Π°Π½Π΅Π΅ подписали ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ столбСц, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π½Π΅ Π·Π°ΠΏΡƒΡ‚Π°Ρ‚ΡŒΡΡ Π² Π²Ρ‹Π²ΠΎΠ΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ‰Π΅.

Π”Π°, ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Ρ… Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΏΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρƒ нас Π½Π΅Ρ‚. А Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½ΠΈ Π½Π°ΠΌ? Нам Π²Π°ΠΆΠ΅Π½ ΠΈΡ‚ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ β€” ΠΌΡ‹ Π΅Π³ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ.

Π£ мСня Π΅ΡΡ‚ΡŒ ΠΎΡ‰ΡƒΡ‰Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ этот ΠΊΠΎΠ΄ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ красивый. Он ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ, Π½ΠΎ всС-Ρ‚Π°ΠΊΠΈ слишком ΠΌΠ½ΠΎΠ³ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»ΠΎΠ². Как это ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ?

Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ Β«ΠšΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€ΠΈΠΊΠ° Π² ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ΅Β» ΠΌΡ‹ обсуТдали Ρ‚Π°ΠΊΡƒΡŽ Π²Π΅Ρ‰ΡŒ, ΠΊΠ°ΠΊ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ itertools, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ комбинациями. Как Ρ€Π°Π· наш случай β€” ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ 1 ΠΈ 0

.

БСйчас Π½Π°ΠΌ пригодится функция product, которая создаст Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ ΠΈΠ· ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… элСмСнтов. Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ запишСм ΠΈΡ… Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ массив для удобства:


from itertools import product
print("A B C")
d = [0, 1]
for i in product(d, repeat = 3):
	A, B, C = i
	result = A == ((B and C) <= A)
	print(A, B, C, result)
Π’Ρ‹Π²ΠΎΠ΄:
A B C
0 0 0 False
0 0 1 False
0 1 0 False
0 1 1 True
1 0 0 True
1 0 1 True
1 1 0 True
1 1 1 True

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅, Π½ΠΎ смогли ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ нСкрасивого массива Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»ΠΎΠ². Π‘ Π΅Ρ‰Π΅ большим количСством ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΈ Π±Ρ‹Π»ΠΎ Π±Ρ‹ нагляднСС.Β 

ΠŸΠΎΠΆΠ°Π»ΡƒΠΉ, стоит ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ строку:
A, B, C = i.

ΠœΡ‹ Ρ‚ΠΎΡ‡Π½ΠΎ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ i β€” это массив с 3 элСмСнтами, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π·Π°Π΄Π°Π»ΠΈ созданиС Π½Π°Π±ΠΎΡ€ΠΎΠ² Π΄Π»ΠΈΠ½ΠΎΠΉ 3. Если ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄ Π½ΠΈΠΌ Ρ€ΠΎΠ²Π½ΠΎ ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΆΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΈΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ элСмСнты массива Π² ΠΎΠ΄Π½Ρƒ строку.

Π’Ρ‹ΡˆΠ΅ ΠΌΡ‹ обсуТдали, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π² этом ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΈ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ скобки. Π”Π°Π²Π°ΠΉΡ‚Π΅ Π΄ΠΎΠΊΠ°ΠΆΠ΅ΠΌ это. ΠŸΠΎΡΡ‚Ρ€ΠΎΠΈΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ истинности для Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ уравнСния, Π½ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ скобки.


from itertools import product
print("A B C")
d = [0, 1]
for i in product(d, repeat = 3):
	A, B, C = i
	result = A == B and C <= A
	print(A, B, C, result)
Π’Ρ‹Π²ΠΎΠ΄:
A B C
0 0 0 True
0 0 1 False
0 1 0 False
0 1 1 False
1 0 0 False
1 0 1 False
1 1 0 True
1 1 1 True

НС Π²Ρ‹ΡˆΠ»ΠΎ: ΠΈΡ‚ΠΎΠ³ΠΎΠ²Ρ‹Π΅ значСния Ρ‚Π°Π±Π»ΠΈΡ† истинности Ρ€Π°Π·Π½Ρ‹Π΅. Π—Π½Π°Ρ‡ΠΈΡ‚, ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π°Ρ€ΡƒΡˆΠ°Π΅Ρ‚ΡΡ.

Другая наша возмоТная Ρ†Π΅Π»ΡŒ β€” ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΈ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ истинным всСгда?

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠΌ Π»ΠΈ ΠΌΡ‹ истину ΠΏΡ€ΠΈ любом Π½Π°Π±ΠΎΡ€Π΅ логичСских ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…?

Как ΠΈ Π² ΠΏΡ€ΠΎΡˆΠ»Ρ‹ΠΉ Ρ€Π°Π·, Ρƒ нас Π΅ΡΡ‚ΡŒ Π½Π΅ ΠΎΠ΄ΠΈΠ½ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. Π‘ΡƒΠ΄Π΅ΠΌ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ А ∧ (Π’ ∨ Π‘) ≑ Π’.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚:

  • ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ всСх Π½Π°Π±ΠΎΡ€ΠΎΠ² β€” Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ Ρ†ΠΈΠΊΠ»Π°ΠΌΠΈ ΠΈΠ»ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ product;
  • сохранСниС всСх Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² уравнСния ΠΎΡ‚ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π°;
  • ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½ΠΈ ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ Π±Ρ‹Π»ΠΎ Π»ΠΎΠΆΠ½Ρ‹ΠΌ β€” для сохранСния всСх Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ список.

from itertools import product
d = [0, 1]
all_results = []
for i in product(d, repeat = 3):
	A, B, C = i
	result = (A and (B or C)) == B
	all_results.append(result)
if False not in all_results:
	print("Ѐункция ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ истинна")
else:
	print("Ѐункция истинна Π½Π΅ всСгда")
Π’Ρ‹Π²ΠΎΠ΄: Ѐункция истинна Π½Π΅ всСгда

Python Π½Π΅ Π±Ρ‹Π» Π±Ρ‹ Python, Ссли Π±Ρ‹ Π½Π΅ Π΄Π°Π» Π½Π°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ всС практичСски Π² ΠΎΠ΄Π½Ρƒ строку.

Π’Ρ‚ΠΎΡ€ΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ β€” функция all. Она Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ True, Ссли всС значСния Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½Π΅Π΅ Ρ€Π°Π²Π½Ρ‹ True β€” ΠΊΠ°ΠΊ Ρ€Π°Π· наш случай. Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ максимально ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎ, прямо Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈ ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅, ΠΈ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ Π΅Π³ΠΎ элСмСнтов:


from itertools import product
d = [0, 1]
result = all((A and (B or C)) == B for A, B, C in product(d, repeat = 3))
if result:
	print("Ѐункция ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ истинна")
else:
	print("Ѐункция истинна Π½Π΅ всСгда")

Π—Π΄Π΅ΡΡŒ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ result записываСтся логичСскоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ True, Ссли для всСх Π½Π°Π±ΠΎΡ€ΠΎΠ² А, Π’, Π‘ ΠΈΠ· ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΉ d Π΄Π»ΠΈΠ½ΠΎΠΉ 3 Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ логичСского уравнСния Ρ€Π°Π²Π΅Π½ True. Если ΠΆΠ΅ срСди всСх Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Π΅ΡΡ‚ΡŒ Ρ…ΠΎΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ False β€” функция all даст Π½Π°ΠΌ False.

Для ΠΏΠΎΡ…ΠΎΠΆΠ΅ΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ β€” Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ всС значСния уравнСния Π±Ρ‹Π»ΠΈ Π»ΠΎΠΆΠ½Ρ‹ΠΌΠΈ β€” ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ

any. Бинтаксис Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅, Ρ€Π°Π·Π½ΠΈΡ†Π° Π΅ΡΡ‚ΡŒ Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹. any Π²Π΅Ρ€Π½Π΅Ρ‚ True, Ссли срСди всСх ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π΅ΡΡ‚ΡŒ Ρ…ΠΎΡ‚ΡŒ ΠΎΠ΄Π½ΠΎ истинноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.


from itertools import product
d = [0, 1]
result = any((A and (B or C)) == B for A, B, C in product(d, repeat = 3))
if result:
	print("Ѐункция Π½Π΅ всСгда Π»ΠΎΠΆΠ½Π°")
else:
	print("Ѐункция всСгда Π»ΠΎΠΆΠ½Π°")
Π’Ρ‹Π²ΠΎΠ΄: Ѐункция Π½Π΅ всСгда Π»ΠΎΠΆΠ½Π°

Python β€” Π³ΠΈΠ±ΠΊΠΈΠΉ язык. Если Π²Π°ΠΌ Π²Π°ΠΆΠ½Π΅Π΅ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠ΄Π° Π±ΠΎΠ»Π΅Π΅ явно β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ Ρ†ΠΈΠΊΠ»Ρ‹, массивы для хранСния Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ Π±ΡƒΠ΄ΡŒΡ‚Π΅ Π±ΠΎΠ»Π΅Π΅, Ρ‡Π΅ΠΌ Π½Π° 100% ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ шагС. Если ΠΆΠ΅ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ инструмСнты для сокращСния объСма ΠΊΠΎΠ΄Π° ΠΈ, ΠΊΠ°ΠΊ слСдствиС, Π±ΠΎΠ»Π΅Π΅ быстрого Π΅Π³ΠΎ написания β€” Π²Π°ΠΌ Π² ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ product ΠΈΠ· itertools ΠΈ инструмСнты массовой ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ all ΠΈ any.

Π€Π°ΠΊΡ‚Ρ‡Π΅ΠΊ
  • Для ΠΈΠΌΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ эквивалСнции Π² Python ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ матСматичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ сравнСния, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π½Π°Ρ€ΡƒΡˆΠ°Π΅Ρ‚ ΠΈΡ… ΠΎΠ±Ρ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ скобок.
  • ЗначСния истины ΠΈ Π»ΠΆΠΈ Π² Python ΡΠ²Π»ΡΡŽΡ‚ΡΡ логичСским Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ True ΠΈΠ»ΠΈ False ΠΈ соотвСтствуСт 1 ΠΈ 0.
  • Ѐункция all провСряСт, всС Π»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹Π΅ Π΅ΠΉ значСния истинны. Ѐункция any провСряСт, Π΅ΡΡ‚ΡŒ Π»ΠΈ срСди всСх ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ…ΠΎΡ‚ΡŒ ΠΎΠ΄Π½ΠΎ истинноС.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒ сСбя

Π—Π°Π΄Π°Π½ΠΈΠ΅ 1.
Для выраТСния А ∨ Π’ ∧ Β¬(Π’ ∧ А) Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π²Π΅Ρ€Π½ΡƒΡŽ запись Π½Π° языкС Python (с сохранСниСм порядка дСйствий):

  1. A and B or not B or A
  2. A and B or not (B or A)
  3. A or B and not B and A
  4. A or B and not (B and A)

Π—Π°Π΄Π°Π½ΠΈΠ΅ 2.
Для выраТСния ¬А β‡’ Π’ ≑ А ∧ Π’ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Π²Π΅Ρ€Π½ΡƒΡŽ запись Π½Π° языкС Python (с сохранСниСм порядка дСйствий):

  1. not (А <= Π’ == А and Π’)
  2. not А <= Π’ == (А and Π’)
  3. ((not A) <=Β  B) == (A and B)
  4. (not А) <= (Π’ == (А and Π’))

Π—Π°Π΄Π°Π½ΠΈΠ΅ 3.
Π§Π΅ΠΌΡƒ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π΅Π½ послСдний столбСц Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ истинности для уравнСния:Β 
A ∧ B β‡’ C ∧ D ∨ D ∧ A?

  1. 11101101
  2. 11101111
  3. 00000011
  4. 11000111

Π—Π°Π΄Π°Π½ΠΈΠ΅ 4.
Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΎ всСх случаях ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ истины:

  1. ¬(A ∧ B) ∧ ¬(C ∧ ¬A)
  2. ¬(A ∧ B) ∨ ¬(C ∧ ¬A)
  3. A ∧ B ∧ ¬(C ∧ ¬A)
  4. ¬(A ∧ B) ∨ ¬(C ∧ A)

ΠžΡ‚Π²Π΅Ρ‚: 1. β€” 4; 2. β€” 3; 3. β€” 1; 4. β€” 2.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ И Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ…?

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ И связываСт Ρ„Ρ€Π°Π·Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Β«ΠΈΒ» Π² ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅. НапримСр, Β«Π”ΠΆΠΎΠ½ ΠΈ ДТулия пошли Π² ΠΊΠΈΠ½ΠΎΒ». ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ истину, ΠΊΠΎΠ³Π΄Π° ΠΎΠ±Π° Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… значСния истинны. Π’Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Ρ‚ΠΈΠΏ значСния 0x1, Ρ‚Π°ΠΊΠΆΠ΅ извСстный ΠΊΠ°ΠΊ Boolean. ΠžΡΡ‚Π°Π²Π°ΠΉΡ‚Π΅ΡΡŒ с Π½Π°ΠΌΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ большС ΠΎΠ± ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ И Π² ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ΅!

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ И?

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ И β€” это логичСский ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сравниваСт Π΄Π²Π° значСния ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ «истина», Ссли ΠΎΠ±Π° значСния истинны. И символ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Β« ΠΈ Β».

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ AND ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ с логичСскими значСниями, Π½ΠΎ Π΅Π³ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ числа ΠΈ строки.

ΠŸΡ€ΠΈ использовании с логичСскими значСниями ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ И Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true, Ссли ΠΎΠ±Π° ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° ΠΈΠΌΠ΅ΡŽΡ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true, ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ false, Ссли хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ΠΎΠ² ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ false.

Π’Π°Π±Π»ΠΈΡ†Π° истинности для ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° AND ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½ΠΈΠΆΠ΅:

A B A AND B

—————————–

T T T

T F F

F T F

F F ​​F

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ И?

Β«ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ И Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… β€” это логичСский ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ИБВИНА, Ссли ΠΎΠ±Π° ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° ИБВИНА, ΠΈ Π›ΠžΠ–Π¬ Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС. ΠžΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ логичСскими выраТСниями, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ»ΠΈ константами».

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ И β€” это логичСский ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ИБВИНА, Ссли ΠΎΠ±Π° ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° ИБВИНА, ΠΈ Π›ΠžΠ–Π¬ Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС. ΠžΠΏΠ΅Ρ€Π°Π½Π΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ логичСскими выраТСниями, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ»ΠΈ константами.

НапримСр, Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ (A && B) Π²Π΅Ρ€Π½Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ TRUE, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли ΠΎΠ±Π° значСния A ΠΈ B Ρ€Π°Π²Π½Ρ‹ TRUE. Если Π»ΠΈΠ±ΠΎ A, Π»ΠΈΠ±ΠΎ B Ρ€Π°Π²Π½ΠΎ FALSE, Ρ‚ΠΎ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π²Π΅Ρ€Π½Π΅Ρ‚ FALSE.

ΠšΠ°ΠΊΠΎΠ²Ρ‹ прСимущСства использования ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° И?

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ И β€” это логичСский ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Π²Π°ΠΌ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π²Π° ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ условий для создания Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ поиска. НапримСр, Ссли Π²Ρ‹ ΠΈΡ‰Π΅Ρ‚Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΡƒΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ «кошки», Ρ‚Π°ΠΊ ΠΈ «собаки», Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ И ΠΌΠ΅ΠΆΠ΄Ρƒ двумя Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°ΠΌΠΈ.

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° использования ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° И Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²Π°ΠΌ ΡΡƒΠ·ΠΈΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ поиска ΠΈ быстрСС Π½Π°ΠΉΡ‚ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Ρ€Π΅Π»Π΅Π²Π°Π½Ρ‚Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ. Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡ€ΠΈ логичСском поискС, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ Π½Π°ΠΉΡ‚ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ критСриям.

Как я ΠΌΠΎΠ³Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ И Π½Π° своСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅?

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ AND β€” это логичСский ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ AND ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π΄Π²Π° логичСских значСния ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΠ΄Π½ΠΎ логичСскоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΡΠ²Π»ΡΡŽΡ‰Π΅Π΅ΡΡ ΠΊΠΎΠ½ΡŠΡŽΠ½ΠΊΡ†ΠΈΠ΅ΠΉ Π΄Π²ΡƒΡ… Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Ссли ΠΎΠ±Π° Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… значСния истинны, Ρ‚ΠΎ ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ истинным. Если ΠΎΠ΄Π½ΠΎ ΠΈΠ· Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π»ΠΎΠΆΠ½ΠΎ, Ρ‚ΠΎ ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΎΠΆΠ½Ρ‹ΠΌ.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ И ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ. НапримСр, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Ρ‚ΠΎΠ³ΠΎ, Π²Π΅Ρ€Π½Ρ‹ Π»ΠΈ ΠΎΠ±Π° условия, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ дСйствия. Π•Π³ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для объСдинСния Π΄Π²ΡƒΡ… ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ логичСских Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² ΠΎΠ΄Π½ΠΎ составноС логичСскоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ языков программирования ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ И прСдставлСн символом && (Π΄Π²Π° ампСрсанда).

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ И являСтся ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· самых основных ΠΈ Π²Π°ΠΆΠ½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Он позволяСт ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π²Π° логичСских значСния для получСния ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ значСния. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, ΠΎΠ½ позволяСт Π²Π°ΠΌ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Π²Π΅Ρ€Π½Ρ‹ Π»ΠΈ ΠΎΠ±Π° условия. Если Π²Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° AND β€” ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ шаг.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Noon β€” это бСсплатноС ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠ½Π»Π°ΠΉΠ½-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для учащихся, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΄Π΅Π»Π°Π΅Ρ‚ процСсс обучСния ΡƒΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ. Π‘ Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ 10 000 Π»Π΅ΠΊΡ†ΠΈΠΉ, доступных Π² Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π»Π΅Π³ΠΊΠΎ ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ ΠΈΠ· любой Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΌΠΈΡ€Π°. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, благодаря возмоТности Π½Π°ΠΉΡ‚ΠΈ ΡƒΡ‡ΠΈΡ‚Π΅Π»Π΅ΠΉ ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ процСсс обучСния Π² соотвСтствии со своими потрСбностями. И Ρ‚Π°ΠΊ, Ρ‡Π΅Π³ΠΎ ΠΆΠ΅ Ρ‚Ρ‹ ТдСшь? Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Noon прямо сСйчас ΠΈ Π½Π°Ρ‡Π½ΠΈΡ‚Π΅ ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ!

java — Какая польза ΠΎΡ‚ & Π² языках программирования?

спросил

ИзмСнСно 11 Π»Π΅Ρ‚, 10 мСсяцСв Π½Π°Π·Π°Π΄

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΎ 3ΠΊ Ρ€Π°Π·

Π― Π²ΠΈΠ΄Π΅Π» использованиС ΠΈ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… языках программирования, ΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ я ΠΎΡ‡Π΅Π½ΡŒ люблю groovy, я ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈ :

 ​a = 1;
println a & 2​
 

Π― ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽ Π²Ρ‹Π²ΠΎΠ΄ ΠΊΠ°ΠΊ 0 . Когда я мСняю значСния Π½Π° , я ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹.

Π˜Ρ‚Π°ΠΊ, ΠΊΡ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Π² Ρ‡Π΅ΠΌ польза ΠΈ Π² языках программирования, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Groovy, Π½Π° простом английском, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, с простым ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ Π½Π° любом языкС?

Π—Π°Ρ€Π°Π½Π΅Π΅ спасибо.

  • Java
  • ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΉ
6

ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ±ΠΈΡ‚ΠΎΠ²ΠΎΠ΅ И (для цСлочислСнных Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²), Π»ΠΈΠ±ΠΎ логичСскоС И Π±Π΅Π· ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ³ΠΎ замыкания (для логичСских Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²).

bitwise-and Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΡΠ΅Ρ€ΠΈΡŽ Π±ΠΈΡ‚ΠΎΠ² (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ прСдставляСмых ΠΊΠ°ΠΊ Ρ‚ΠΈΠΏ int ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±ΠΈΡ‚Ρ‹ Π² ΠΎΠ±Ρ‰Π΅ΠΌ Π½Π°Π±ΠΎΡ€Π΅

 18 == 10010
6 == 00110
18 ΠΈ 6 == 2 == 00010
 

ΠŸΠΎΡ…ΠΎΠΆΠ΅, это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ происходит Π² вашСм ΠΊΠΎΠ΄Π΅ Groovy. 1 ΠΈ 2 == 0 , Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ 1 ΠΈ 2 Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ±Ρ‰ΠΈΡ… Π±ΠΈΡ‚ΠΎΠ².

Π›ΠΎΠ³ΠΈΠΊΠ° Π±Π΅Π· ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ³ΠΎ замыкания ΠΈ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Π° && , Π½ΠΎ

 if (f() && g()) // g вызываСтся, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли f Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ false
if (f() & g()) // g вызываСтся, Π΄Π°ΠΆΠ΅ Ссли f Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ false
 

Π’ языках, Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‰ΠΈΡ… ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ°Π»ΠΈ ΠΈ для выполнСния пСрСсСчСния мноТСств ΠΈΠ»ΠΈ поэлСмСнтного Π±ΠΈΡ‚ΠΎΠ²ΠΎΠ³ΠΎ пСрСсСчСния.

ΠŸΡ€ΠΈ поискС «Groovy Operator» Π² Google ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π΄Π°Π΅Ρ‚: http://groovy.codehaus.org/Operators

Π’ Ρ†Π΅Π»ΠΎΠΌ всС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ Π² Java, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹ Π² Groovy.

Π”Π°Π»Π΅Π΅ Π² http://download.oracle.com/javase/tutorial/java/nutsandbolts/operators.html:

 ΠΏΠΎΠ±ΠΈΡ‚ΠΎΠ²ΠΎΠ΅ И &
 

ΠŸΡ€ΠΈ поискС Β«ΠŸΠΎΠ±ΠΈΡ‚ΠΎΠ²ΠΎΠ΅ И» Π² Google ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: http://en.wikipedia.org/wiki/Bitwise_operation#AND

И

ΠŸΠΎΠ±ΠΈΡ‚ΠΎΠ²ΠΎΠ΅ И ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π΄Π²Π° Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… прСдставлСния ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹ ΠΈ выполняСт Π»ΠΎΠ³ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ И Π½Π°Π΄ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°Ρ€ΠΎΠΉ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π±ΠΈΡ‚ΠΎΠ². Для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°Ρ€Ρ‹ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π²Π΅Π½ 1, Ссли ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π±ΠΈΡ‚ Ρ€Π°Π²Π΅Π½ 1 И Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π±ΠΈΡ‚ Ρ€Π°Π²Π΅Π½ 1; Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π²Π΅Π½ 0. НапримСр:

 0101 (дСсятичноС число 5)
И 0011 (дСсятичноС число 3)
  = 0001 (дСсятичная 1)
 

это Π·Π°ΠΉΠΌΠ΅Ρ‚ ΠΌΠ΅Π½Π΅Π΅ 5 ΠΌΠΈΠ½ΡƒΡ‚.

Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΈΠ»ΠΈ Π²ΠΎΠΉΠ΄ΠΈΡ‚Π΅ Π² систСму

Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Google

Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‡Π΅Ρ€Π΅Π· Facebook

Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΡƒΡŽ ΠΏΠΎΡ‡Ρ‚Ρƒ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π³ΠΎΡΡ‚ΡŒ

ЭлСктронная ΠΏΠΎΡ‡Ρ‚Π°

ВрСбуСтся, Π½ΠΎ Π½Π΅ отобраТаСтся

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π³ΠΎΡΡ‚ΡŒ

ЭлСктронная ΠΏΠΎΡ‡Ρ‚Π°

ВрСбуСтся, Π½ΠΎ Π½Π΅ отобраТаСтся

НаТимая Β«ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ свой ΠΎΡ‚Π²Π΅Ρ‚Β», Π²Ρ‹ ΡΠΎΠ³Π»Π°ΡˆΠ°Π΅Ρ‚Π΅ΡΡŒ с нашими условиями обслуТивания ΠΈ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π»ΠΈ ΠΈ поняли Π½Π°ΡˆΡƒ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΡƒ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ кодСкс повСдСния.

ΠžΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *