boolean

Din motive tehnice _Bool redirecționează aici. Despre _Bool pot fi găsite aici: stdbool.h.

Logic tip de date. (. Din Boolean engleză sau tipul de date logice) sau boolean sau de tip boolean - un tip de date primitiv în informatică. luând două valori posibile, uneori numit adevărat (true) și fals (false). Este prezent în marea majoritate a limbilor de programare ca o entitate independentă sau realizată prin tipul de date numerice. În unele din valoarea limbajele de programare se bazează adevăr 1, valoarea se află - 0.

Numele de tipul boolean este numit după matematicianul britanic și logicianul George Boole. printre altele, se ocupă cu probleme de logică matematică în mijlocul secolului 19.

Funcțiunile disponibile cu acest tip de date

Acest tip de date următoarele operațiuni sunt aplicabile, sunt indicate în paranteze se referă la operațiunile simbolice în unele dintre cele mai populare limbaje de programare:

  • ȘI (multiplicare logică) (AND. . *)
  • OR (adaos logic) (OR | .. +),
  • XOR (add cu carry) (XOR. NEQV. ^),
  • echivalență (egalitate) (eqv. =. ==)
  • inversiune NU (.

Mai poate fi utilizat, și alte operații de algebra booleană. de exemplu, tija de ac sau Pierce Schaeffer. Cele mai multe limbaje de programare permit utilizarea de variabile boolean și constante în aritmetică, de pre-aducându-l la un tip numeric, în conformitate cu normele acceptate ale limbii în conversie de tip.

utilizarea convențională a boolean tip de date este setat la „da“ / „nu“ rezultat în ceea ce privește compararea numerelor în operațiuni mai complexe.

Toate operațiunile compară două valori - variabile sau constante reale și întregi cu variabile (egal, mai mare, mai mic), accesorii de testare funcția apariție a unui element din setul și verificați intersecția este seturi de non-gol returnează un boolean.

Punerea în aplicare în diferite limbaje de programare

Ada limbaj de programare definește un pachet standard boolean ca un enum cu o valoare în cazul în care Fals Fals și Adevărat

Operatorii înrudite (=. / =. <. <=.>.> =) Se aplică tuturor tipurilor de numerotare, inclusiv Boolean. operatori booleeni și. sau. XOR și nu se aplică la orice subtipuri Boolean și anunțate de tip. Operatorii booleeni sunt aplicabile matricele conținând valori boolean, de asemenea.

Algol 60 are un tip de date boolean, iar operatorii corespunzători sunt stabilite în Algol 60. Specificarea tipului de date a fost redus la bool în ALGOL 68.

În limbajul de programare C. care nu sunt furnizate valori Boolean în C89 (dar introduce C99) valori în loc de valori reale / fals a fost găsit comparat cu zero. De exemplu, codul:

A fost corect pentru tipul de date întreg (număr întreg); Cu toate acestea, valorile binare de numere reale cu virgulă (virgulă mobilă) au fost aproximativ la valorile zecimale afișate pe ecran și acest lucru a dat erori în comparație. În mod tradițional, conțin întreg una (sau mai multe) unei variabile booleene (câte una pentru fiecare număr întreg bit).

În Haskell limbaj boolean tip de date este implementat ca un simplu tip de date algebrice:

Modulul standard pentru el Data.Bool definit funcții . || și nu.

În Python, tipul de date boolean este denumit bool. pentru a aduce celălalt la un tip de date boolean există funcția bool (). de lucru pe următoarele acorduri:

  • line: o linie goală - o minciună, un rând care nu este gol - adevărul;
  • Număr: zero, numărul - o minciună, un număr de zero (inclusiv mai putin unul) - adevărul;
  • liste și tupluri: o listă goală (tuplu) - se află goale (chiar și conținând un singur element, cum ar fi un tuplu gol) - adevărul;
  • Funcția - întotdeauna adevărat.

Pentru alte obiecte ale rezultatului se calculează prin metoda __nonzero__. care în mod ideal ar trebui să returneze o valoare de Adevărat sau fals.

Boolean date în următoarele tipuri de date:

  • string: „Adevărat“ pentru adevăr, „fals“ să mintă;
  • numeric (built-in tipuri de int, lung, float): 1 pentru adevărat, 0 pentru fals.

Alte tipuri de date boolean omise.

În Python 2.6 are o caracteristică interesantă - puteți trece la Adevărat la False, și vice-versa, doar prin scris:

sau o opțiune pentru întreaga gamă

ceea ce poate duce la un comportament destul de neașteptat al interpretului sau IDLE. În Python 3, această posibilitate a fost eliminată - Adevărat și fals sunt rezervate, după cum cuvântul Niciunul.

aritmetică Boolean nu este permis, dar tolerat operații logice: Nu, si, sau, XOR, operatorii relaționali = (egal cu) <> (Nu este egal) și funcția Ord, Pred, Succ.

În Ruby boolean reprezentată de două variabile predefinite. adevărat și fals. Se pare ca urmare a unei operații logice booleene sau tehnici logice de apel. Conform tradiției, numele metodelor logice (de exemplu, metode care returnează o valoare de adevărat sau fals) se termină cu „?“.

Ca fals poate fi un zero. precum și adevărat - orice obiect. inclusiv o variabilă cu o valoare de „0“ sau un șir gol. care este de multe ori o surpriză pentru nou-veniți.

articole similare