Regula pentru simplificarea expresiilor booleene folosind SDNF sau CMS

Logica este utilizată pe scară largă în rezolvarea problemelor logice. Varietatea sarcinilor logice este foarte mare. Există, de asemenea, multe modalități de a le rezolva. Dar cele mai frecvente sunt următoarele trei modalități de a rezolva problemele logice:







# 61485; mijloace de algebră a logicii;

# 61485; cu ajutorul raționamentului.

Să ne cunoaștem la rândul lor.

I. Soluția problemelor logice prin algebra logică

Următoarele scheme de soluții sunt utilizate în mod obișnuit:

1. studiul stării problemei;

2. Este introdus un sistem de notații pentru declarații logice;

3. Este construită o formulă logică care descrie conexiunile logice între toate afirmațiile stării problemei;

4. Valorile adevărului acestei formulări logice sunt determinate;

5. Din valorile obținute ale adevărului formulării, se determină valorile de adevăr ale afirmațiilor logice introduse, pe baza cărora se face o concluzie cu privire la soluție.

Sarcina 1 Trei prieteni, fanii cursei de Formula 1, au argumentat despre rezultatele etapei viitoare a cursei.

- Veți vedea, Schumacher nu va veni primul, spuse John. Primul va fi Hill.

- Nu, câștigătorul va fi, ca întotdeauna, Schumacher, exclamă Nick. "Și nu este nimic de spus despre Alesi, el nu ar trebui să fie primul."

Peter, căruia ia adresat Nick, era indignat:

- Hill nu vede primul loc, dar Alesi pilotează cea mai puternică mașină.

La sfârșitul cursei sa dovedit că fiecare dintre cele două ipoteze ale celor doi prieteni a fost confirmată și ambele ipoteze ale celui de-al treilea dintre prieteni au fost greșite. Cine a câștigat stadiul cursei?

Introducem notația pentru propoziții logice: Ш - Schumacher va câștiga; X va câștiga Hill; Și - Alesi câștigă.

Replica lui Nick "Alesi piloți cea mai puternică mașină" nu conține nici o declarație despre locul pe care îl va lua acest cursant, deci în raționamentul ulterior nu este luată în considerare.

Fixați declarațiile fiecăruia dintre prieteni:

Având în vedere că ipotezele celor doi prieteni au fost confirmate și ipotezele celui de-al treilea sunt incorecte, vom scrie și vom simplifica declarația adevărată

Instrucțiunea este valabilă numai pentru W = 1, A = 0, X = 0.

Răspuns. Câștigătorul cursei a fost Schumacher.

II. Rezolvarea problemelor logice în mod tabular

Folosind această metodă, condițiile care conțin sarcina și rezultatele raționamentului sunt fixate cu ajutorul tabelelor special compilate.

Problema 2. Orchestra Simfonică a angajat trei muzicieni: Brown, Smith și Wesson, care știu cum să joace vioară, flaut, viola, clarinet, oboi și trompeta.

1. Smith este cel mai înalt;

2. să cânte la vioară mai puțin decât cel care joacă flautul;

3. cântând vioara și flautul și Brown ca pizza;

4. Când apare o ceartă între violonist și trumpeter, Smith le recompensează;

5. Brown nu știe să joace nici pe conductă, nici pe oboi.

Ce instrumente se joacă fiecare dintre muzicieni, dacă fiecare are două instrumente?

Noi compunem tabelul și reflectă condițiile în care se află problema, umplând celulele corespunzătoare cu cifrele 0 și 1, în funcție de faptul că instrucțiunea corespunzătoare este falsă sau adevărată. Deoarece există trei muzicieni, șase instrumente și fiecare are doar două instrumente, se pare că fiecare muzician joacă pe instrumente pe care alții nu le dețin. Din condiția 4 că Smith nu joacă viola sau trompeta, precum și condițiile 3 și 5 că Brown nu știe cum să joace vioară, flaut, trompeta și oboi. În consecință, instrumentele lui Brown sunt viola și clarinet. Vom pune acest lucru în Tabelul 5.10 și vom umple restul celulelor coloanelor "alt" și "clarinet" cu zerouri.

Răspuns: Brown joacă violul și clarinetul, Smith - flautul și oboiul, Wesson - vioara și trâmbița.

III. Rezolvarea problemelor logice prin raționament

Această metodă este de obicei rezolvată prin sarcini logice simple.

Problema 3. Vadim, Serghei și Mihail studiază diferite limbi străine: chineză, japoneză și arabă. Întrebat ce limbă fiecare dintre ei studiază, unul a răspuns: "Vadim studiază chinezii, Serghei nu studiază chinezii, iar Michael nu studiază arabă". Mai târziu, sa dovedit că în acest răspuns, doar o afirmație este adevărată, iar celelalte două sunt false. Ce limbă studiază fiecare dintre tineri?

Există trei declarații:

1. Vadim studiază limba chineză;

2. Serghei nu studiază limba chineză;

3. Michael nu studiază arabă.

Dacă prima afirmație este adevărată, atunci a doua este adevărată, deoarece tinerii studiază limbi diferite. Aceasta contrazice condiția problemei, astfel încât prima afirmație este falsă. Dacă a doua afirmație este adevărată, atunci prima și a treia trebuie să fie false. Se pare că nimeni nu studiază chinezi. Aceasta contrazice condiția, deci a doua afirmație este de asemenea falsă. Rămâne să se considere că a treia afirmație este adevărată, iar prima și a doua sunt false. În consecință, Vadim nu studiază chinezii, studiile chineze Serghei.

Răspuns: Serghei studiază chinezii, Michael este japonez, Vadim este arabă.

Rezolva problemele: 1. Kolya, Borya, Vova și Yura au luat primele 4 locuri în competițiile sportive. Când au fost întrebați ce au avut loc, au spus: a) Nick nu a luat, nici prima, nici a patra b) Boria a avut loc a doua c) Vova nu a fost ultima. 2. Trei prieteni de Belov, Chernov și Ryzhov s-au întâlnit la cafenea. "Este minunat că toți avem culori de păr diferite, dar niciunul nu are același nume", a observat omul cu părul negru. - Ai dreptate, spuse Belov. Ce culoare este părul lui Ryzhov? 3. Este cunoscut faptul că una dintre cele două propoziții, „regele de pică și regina de pică din minte“ și „regina de pică din mintea lui“ - este adevărat, iar al doilea este fals. Află cine e în mintea ta. 4. La stația, scorul primei poarta are inscripția „Vologda“, scorul de-al doilea - „Pskov sau Novgorod“, scorul a treia -. „Pskov“ Din plângerile pasagerilor au fost primite că trenurile nu merg acolo unde inscripțiile indică. Pe care platformă era trenul. 5. Care dintre studenții A, B, C, D joacă și care nu joacă șah, dacă se știe că a) dacă joacă A sau B, atunci C nu joacă; b) dacă B nu se joacă, atunci C și D joacă; c) redarea C.

Tema 6.1 Conceptul algoritmului. Proprietățile algoritmului. Metode de înregistrare a algoritmilor.

Concepte de bază: algoritm, proprietăți algoritm, diagramă bloc, cod, pseudocod, limbaj de programare.







Secvența acțiunilor.

Pseudo-codul nu utilizează reguli sintactice stricte pentru scrierea comenzilor care sunt inerente în limbile oficiale, ceea ce face mai ușor să scrie algoritmul în faza de proiectare și face posibilă utilizarea unui set mai larg de comenzi concepute pentru un artist abstract. Cu toate acestea, în pseudocod, cel mai adesea există câteva construcții inerente în limbile formale, ceea ce facilitează trecerea de la scrierea pe pseudocod la scrierea unui algoritm în limba oficială. De exemplu, în pseudocod, și în limbi oficiale, există cuvinte de serviciu, a căror semnificație este definită odată pentru totdeauna.

De exemplu, algoritmii în limbajul algoritmic sunt scrise cu ajutorul cuvintelor de serviciu prezentate în Tabelul 1.7.

Tabelul 1.7. Cuvinte de serviciu ale limbajului algoritmic.

Vedere generală a algoritmului:

nume de algoritm (argumente și rezultate)

sunt date condițiile pentru aplicabilitatea algoritmului

este necesar să se îndeplinească algoritmul

începutul descrierii valorilor intermediare

secvența de comenzi (corpul algoritmului)

O parte a algoritmului de la cuvântul ALG la cuvântul început se numește antet, iar porțiunea învelită între cuvinte care încep și con - algoritm de corp.

O singură sau o abordare formală la determinarea codului pseudo nu există, prin urmare, utilizați diferite pseudo set diferit de cuvinte funcționare și construcție de bază (de bază).

Forma de program de reprezentare a algoritmilor presupune că un algoritm destinat execuției pe un calculator trebuie să fie scris într-o limbă care să fie ușor de înțeles. În acest caz, limba pentru scrierea algoritmilor trebuie formalizată. Această limbă este denumită de obicei un limbaj de programare, iar algoritmul este scris în acest program de limbă.

Etape de creare a algoritmilor:

1. Algoritmul trebuie prezentat într-o formă ușor de înțeles pentru persoana care o dezvoltă.

2. Algoritmul trebuie prezentat într-o formă ușor de înțeles pentru acel obiect (inclusiv persoana), care va efectua acțiunile descrise în algoritm.

Executorul algoritmului este obiectul care efectuează algoritmul.

Executorii ideali sunt mașini, roboți, calculatoare.

Artistul poate efectua numai un număr limitat de echipe. Prin urmare, algoritmul este dezvoltat și detaliat astfel încât să conțină numai acele comenzi și structuri pe care artistul interpret poate să le îndeplinească.

Executorul, ca orice obiect, se află într-un anumit mediu și poate efectua numai acțiunile admise în el. Dacă executorul întâlnește o comandă necunoscută în algoritm, algoritmul va înceta să ruleze.

Calculatorul este un executor automat al algoritmilor.

Un algoritm scris pe un limbaj de programare "prietenos cu calculatorul" este numit un program.

Programarea este procesul de realizare a unui program pentru calculator. Pentru primele calculatoare, programele au fost scrise sub forma unei secvențe de operații elementare. A fost o muncă foarte laborioasă și ineficientă. Prin urmare, mai târziu au dezvoltat limbi de programare speciale. În prezent, există multe limbi artificiale pentru programare. Cu toate acestea, nu a fost posibil să se creeze un limbaj ideal care să se potrivească tuturor.

Tema 6.2 Construcții algoritmice de bază.

Concepte de bază: algoritm liniar, ramificare, branșare complet sau incomplet, round robin cu o pre-ciclu, ciclu cu postconditie, cu ciclul de opțiune ..

- înainte de a citi textul

Exemplul 2. Faceți o diagramă a algoritmului pentru a calcula perimetrul unui triunghi dreptunghiular de la picioarele a și c.

2. Structura ramificării. În funcție de rezultatul testului, condiția ("da" sau "nu") selectează una dintre căile alternative de lucru ale algoritmului. Fiecare dintre căi conduce la o ieșire comună, astfel încât algoritmul va continua să funcționeze indiferent de calea selectată. Structura "ramificării" poate fi de patru tipuri: "cumva"; "Dacă altceva"; „Alegerea“; "Alegerea este diferită".

dacă condițiile, atunci acțiunile sunt toate

Exemplul 1. Determinarea valorii variabilei a după executarea fragmentului de algoritm pentru a = 5 și a = 10.

Efectuați sarcini: 1. Având în vedere lungimea laturilor triunghiului A, B, C. Găsiți zona triunghiului S. Faceți o schemă logică a sarcinii. 2. Sunt date coordonatele vârfurilor triunghiului ABC. Găsiți zona. Faceți o diagramă a algoritmului pentru rezolvarea problemei. 3. Într-o cameră pătrați de lățime A și înălțime B există o fereastră și o ușă cu dimensiunile C pe D și respectiv M pe N. Calculați suprafața pereților pentru a le lipi cu tapet. Faceți o diagramă a algoritmului pentru rezolvarea problemei. 4. Se calculează traseul parcurs cu barca în cazul în care viteza sa în continuare apă v km / h, viteza v1 debitului râului km / h, timpul de mișcare de-a lungul orelor de lac t1, ​​și împotriva fluxului de râu. - T2 h Faceti o diagramă flux pentru a rezolva această problemă . 5. Dana organigrame: Identificarea rezultatul algoritmului sub anumite valori ale datelor inițiale, de exemplu, la x = 16 și y = 2. 6. Ce este calculat prin acest algoritm: a) Ao + Bo = a + b; b) Ao + Bo = a - b; c) Ao + Bo = - a + b; d) Ao + Bo = - a - b. 7. O diagramă este prezentată mai jos:

Regula pentru simplificarea expresiilor booleene folosind SDNF sau CMS
Determinați rezultatul algoritmului pentru anumite valori ale datelor inițiale, de exemplu pentru x = -6. 8. Se dă o diagramă: determinați rezultatul executării algoritmului pentru anumite valori ale datelor inițiale, de exemplu pentru A = 7; B = 8; C = 9. 9. Valoarea variabilei S calculată pe grafic este 1,6; 2. 8; 3. 10; 4. 12. organigrame 10. Asigurați organigrama, prin care se dispune valorile două variabile X și Y, în ordine crescătoare. 11. Fa un flowchart pentru a găsi cea mai mare valoare dintre cele trei valori: A, B și C. 12. Valoarea organigrame Face funcție 13. calcularea Efectuarea unui organigrame a determina dacă un anumit triunghi cu laturile a, b și c isoscel. 14. Desenați o diagramă bloc a algoritmului care determină dacă există un triunghi cu laturile a, b și c date. 15. Se dă o diagramă: determinați rezultatul executării algoritmului pentru anumite valori ale datelor inițiale, de exemplu, pentru n = 4. 16. Se oferă o diagramă:
Regula pentru simplificarea expresiilor booleene folosind SDNF sau CMS
Ce valoare va avea z la ieșire dacă x = 2? 17. Valoarea variabilei K calculată pentru datele de intrare 2, 11, 3 este egală cu a) 1; b) 2; c) 4; d) 8. Diagrama bloc a algoritmului: 18. Ce este calculat prin acest algoritm:
Regula pentru simplificarea expresiilor booleene folosind SDNF sau CMS
a) rezultatul împărțirii întregi a b de către a; b) restul împărțirii a cu b; c) rezultatul divizării întregi a lui b; d) restul de a împărți b cu a. 19. Ce se calculează prin acest algoritm:
Regula pentru simplificarea expresiilor booleene folosind SDNF sau CMS
a) suma primelor termeni C ai progresiei aritmetice cu primul termen egal cu A și diferența B; b) suma primelor termeni C ai progresiei aritmetice cu primul termen egal cu B și diferența A; c) suma primilor termeni A ai progresiei aritmetice cu primul termen egal cu B și diferența C; d) suma primelor termeni B ale progresiei aritmetice cu primul termen egal cu A și diferența C? 20. Crearea flowchart funcția de calcul yk = sin (kx) + cos (k / x), k = 1, 2. 50 Be organigrame funcția calcul y = 3 / (a ​​+ 2 x 2) pentru x, variind de la 0 la 3 în incremente de 0,1.

SPIRINA Tatiana Venedikova, TROITSKAYA Elena Anatolyevna

MATEMATICĂ ȘI INFORMATICĂ

Manual în 2 părți

[1] Diamond cuprinde șapte linii:
prima și a șaptea rânduri sunt substantive - antonime;
a doua linie este un adjectiv care descrie primul substantiv;
a treia linie conține trei verbe legate de primul substantiv;
al patrulea rând conține patru substantive, două dintre ele se referă la primul substantiv, celelalte două la cel de-al doilea substantiv;
al cincilea rând conține trei verbe aparținând celui de-al doilea substantiv;
a șasea linie - două adjective care descriu cel de-al doilea substantiv.
exemplu:
zi;
Bright, bucuros;
Straluceste, se incalzeste;
Zori, soare, umbră, lege;
Cools, alarme, abordări;
Misterios, întunecat;
Noapte.







Trimiteți-le prietenilor: