Lecții №5

Direct legate de programare este o disciplină numită logică matematică. Baza logicii matematice de algebră a logicii sau a calculilor propozițiilor. În conformitate cu declarația se referă la orice declarație, cu privire la care este posibil să spunem sigur dacă este adevărat sau fals. De exemplu, "Luna - satelit Earth" - adevărat; "5> 3" - true; „București - capitala Chinei“ - este falsă; "1 = 0" - este fals. Adevărat sau fals sunt valori logice. Valorile logica propozitiilor identificate în mod unic de mai sus; cu alte cuvinte, valorile lor sunt constante logice.

Valoarea Boolean inegalitate x <0, где х — переменная, является переменной величиной. В зависимости от значения х оно может быть либо истиной, либо ложью. В связи с этим возникает понятие логической переменной.

Pe baza logicii matematice formale create în mijlocul secolului al XIX-lea. Matematicianul englez Dzhordzh Bul. În onoarea sa, calculul propozitional se numește algebra booleană și valori booleene - boolean.

Single exprimare pot fi combinate într-un compus cu formula logica folosind operații logice.

Există trei operații logice de bază: negație, conjuncție (multiplicare logică) și disjuncție (adaos Boolean).

operațiune negația este notată în matematică simbol logica ¬ și nu citește ca o particulă. Această operațiune unică.

De exemplu, ¬ (x = y) se citește „nu (x este egal cu y)». Rezultatul va fi adevărat dacă x nu este egal cu y, și fals în cazul în care x este y. Negatie modifică valoarea valorii logica la opusul.

Funcționarea este indicată de conjuncția și este citită ca o particulă și. Această operație dublă. De exemplu, (x> 0) (x <1) читается «х больше 0 и х меньше 1». Данная логическая формула примет значение истина, если х

(0,1), și se află - în caz contrar. Prin urmare, rezultatul unei conjuncții - adevărat dacă ambii operanzi sunt adevărate. operațiune disjuncție semn v citește ca o particulă sau. De exemplu, (x = 0) v (x = 1), se citește "x este 0 sau x este 1". Formula dă adevăr, dacă x - o cifră binară (0 sau 1). În consecință, disjunctia are ca rezultat adevărat, dacă cel puțin un operand este - adevărul.

identificator de tip Pascal valorile logice sunt notate cuvinte oficiale false (fals) și adevărat (TRUE), și logic - boolean.

Cantități suplimentare (constante și variabile) de tip boolean boolean false relație adevărată de a primi operații.

operații relaționale (Fig. 18), se realizează compararea a două operanzi și determinarea adevărate sau false relație corespunzătoare între acestea.

Lecții №5

Exemple de relații de înregistrare: x<у; a+b>= C / d; abs (m-n)<=l. Примеры вычисления значений отношений:

Lecții №5

Operațiile logice sunt efectuate pe operanzi de tip boolean. Există patru operații logice: Nu - negare; Și - multiplicarea logică (conjuncția); Sau - adăugarea logică (disjuncție). În plus față de cele trei operații obligatorii în Turbo Pascal are mai operare - XOR. semnul ei - funcția XOR cuvânt. Această operație dublă, care are ca rezultat o valoare de adevărat dacă ambii operanzi au diferite valori logice.

Tranzacțiile sunt enumerate în ordinea descrescătoare a priorității. Rezultatele operațiilor logice pentru diferite valori ale operanzilor prezentate în tabelul. 3.5.

Lecții №5

operațiunile de relații au cea mai mică prioritate. Prin urmare, în cazul în care operanzii de funcționare logică este relația, atunci ele ar trebui să fie închise în paranteze. De exemplu, inegalitatea matematică 1 ≤ x ≤ 50 corespunde următoarei expresiei logice:

Expresia logică este o formulă logică, scrisă într-un limbaj de programare. Expresia booleană constă din operanzi logice asociate operațiilor logice și paranteze. Rezultatul calculului expresiei logice este o valoare Boolean (fals sau adevărat). operanzi logice sunt logice constante, variabile, funcții, operații, relații. Un operand logic separat este cea mai simplă formă a unei expresii logice.

Exemple de expresii logice (aici, d, b, c - variabile logice, x, y - variabile reale; k - variabile întregi):

Dacă d = true; b = false; c = true; x = 3,0; y = 0,5; k = 5, atunci rezultatele calculului sunt următoarele:

În exemplul utilizat logic funcția nui (k). Aceasta este o funcție a argumentului întreg k, care ia valoarea reală, în cazul în care valoarea lui k este impar, și fals, în cazul în care k este chiar.

Instrucțiunea de atribuire logică are structura prezentată în Fig. 19.

Lecții №5

Exemple de declarații de atribuire logice:

2) b: = (x> y) și (k<>0);

3) c: = d sau b și nu (nui (k) și d).

ramificare de programare în Pascal

Principalele teme ale acestei secțiuni:

♦ ramificare operator în Pascal;
♦ programarea ramificare complet și incomplet;
♦ Programare ramură imbricat;
♦ operații logice;
♦ expresii logice complexe.

ramificare operator în Pascal

În Pascal există ramificare declarație. Un alt nume - o declarație condiționată, formatul complet de ramificare declarație este după cum urmează:

dacă <логическое выражение> atunci <оператор1>

Aici, în cazul în care - «dacă», apoi - că «», altfel - «diferit».

Programarea ramificare complete și incomplete

Comparați algoritmul de înregistrare BID1 din secțiunea anterioară cu programul corespunzător.

Lecții №5

Foarte similar cu traducerea din română în engleză. Notă următoarele diferențe: programul este nici un cuvânt oficial special pentru sfârșitul sucursalei. Aici semnul sfârșitul declarației de ramificare este o virgulă. (Desigur, lăsați o linie goală în program nu este necesar. Aceasta se face numai din motive de claritate.)

O formă simplă de expresie logică este un operator relațional. Ca și în AH, în Pascal este deschis tuturor tipurilor de relații (de mai jos indică semnele lor):

<(меньше);>= (Mai mare sau egal);
> (Mai mare decât); = (Egal);
<= (меньше или равно); <> (Nu este egal).

Acum zaprogrammiruem Pascal BID2 algoritm, în care ramificarea incomplet aplicat.

Lecții №5

Din nou, toate foarte asemănătoare. sucursală Else în declarația de ramificare poate fi omisă.

Programare ramură imbricat

Scriem programul Pascal determinarea mai mare dintre cele trei numere, schema bloc prezentată în Fig. 6.6. Structura acestui algoritm - ramura imbricate. Algoritmul AH (Bit2) este prevăzută în paragraful precedent.

Lecții №5

Lecții №5

Rețineți că, înainte de altceva nu este atribuită și virgulă. Toate ramificare parte structura a algoritmului se termină la un punct după virgulă operatorul D: = C.

Scrieti un program pentru a simplifica valorile a două variabile.

Lecții №5

Acest exemplu ilustrează următoarea regulă de Pascal: dacă unele din ramuri este operatorul de ramură mai mulți operatori succesive, acestea trebuie să fie înregistrate între cuvinte oficiale începe și se termină. Design-ul acestui tip:

începe <последовательность операторов> capăt

Se numește o declarație compus. În consecință, în forma generală descrisă mai sus ramification <оператор1> și <оператор2> pot fi simple (unul) și operatorii compozit.

În cele din urmă, o altă formă a treia versiune a definiției programului a unui număr mai mare de trei.

Nu este greu de înțeles sensul programului. trei ramificare incomplete consecutive folosit aici. A condiții de branșare sunt expresii complexe logice care implică operarea logică și (ii). Cu operațiile logice pe care sa întâlnit, de lucru cu baze de date și foi de calcul.

Să ne amintim că și operațiunea se numește o multiplicare logică sau conjuncție. Rezultatul său - „true“ în cazul în care valoarea ambelor operanzi - „Adevărul“. Evident că, în cazul în care A> B și A> C, A are cea mai mare valoare, și așa mai departe toate cele trei operații logice majore prezente în Pascal ..:

și - AND (conjuncția)
sau - OR (disjuncție)
nu - NU (negație).

expresii logice complexe

Rețineți că relația care leagă operațiile logice, închise în paranteze. Deci, trebuie să facem întotdeauna! De exemplu, este necesar să se determine dacă oricare dintre numerele A, B, C și cel puțin unul negativ. Această problemă este rezolvată prin următoarea declarație de ramificare:

dacă (A<0) or (B<0) or (C<0)
apoi a scrie ( 'DA') scrie altceva ( 'NO');

Exprimarea adevărată pentru numere negative pot fi scrise, de asemenea, ca:

Cele mai importante caracteristici

Operatorul de ramură (declarație condițională) Pascal arata ca:

dacă <логическое выражение>
atunci <оператор1> altfel <оператор2>

declarații simple sau compuse pot fi pe ramurile unei declarații condiționată. Compusul declarație - o secvență de instrucțiuni închise prin cuvintele auxiliare începe și se termină.

În expresii logice complexe utilizate operații logice: și, sau, nu.

Întrebări și Sarcini

1. Cum este programat în Pascal ramificare complet și incomplet?
2. Care este declarația compus? În unele cazuri, o declarație compus este utilizat în declarația de ramificare?
3. Faceți toate programele de pe computer care sunt enumerate în această secțiune.
4. Efectuarea de cel puțin trei versiuni ale programului determină cea mai mică dintre cele trei numere date.
5. Asigurați valori program de sortare ascendentă a trei variabile: A, B, C.
6. Fa un program pentru a calcula rădăcinile unei ecuații pătratice în conformitate cu valorile coeficienților săi.

articole similare