Logiska uttryck och logiska operationer. Booleska (sant och falskt) värden i Perl Vad betyder sant och falskt

För att programmet ska vara icke-linjärt (dvs. beroende på situationen, olika instruktioner) programmeringsspråk använder logiska uttryck, vars resultat kan vara antingen sant (sant) eller falskt (falskt). Resultatet av logiska uttryck används vanligtvis för att bestämma exekveringsvägen för ett program.

Enkla logiska uttryck är resultatet av relationsoperationer mellan två operander (värden). I exemplen nedan är operanderna värdena för variablerna x och y. Operander kan vara siffror, tecken eller andra datatyper. Allt som kan jämföras med varandra. Det rekommenderas dock inte att jämföra reella tal på grund av deras lagring i datorns minne.

Pascal tillhandahåller följande relationsoperatorer:

  • mindre än: x< y
  • större: x > y
  • är lika med: x = y
  • inte lika med: x<>y
  • mindre än eller lika med: x<= y
  • större än eller lika med: x >= y

booleska typer

Resultatet av ett logiskt uttryck är alltid ett booleskt (logiskt) värde. Den booleska datatypen kan bara ha två värden (sant eller falskt). Dessa värden är ordnade enligt följande: falskt< true. Это значит, что данные булевого типа являются не только результатом операций отношения, но и могут выступать в роли операндов операции отношения. Также к ним можно применять функции ord, succ, pred, процедуры inc и dec.

Ett booleskt värde tar upp 1 byte i minnet.

I exemplet tilldelas sex booleska variabler värdena för enkla booleska uttryck. Värdena som lagras i sådana variabler visas sedan på skärmen.

Förutom den booleska typen introducerade Pascal ytterligare tre booleska typer - bytebool (upptar 1 byte), wordbool (upptar 2 byte) och longbool (upptar 4 byte).
För alla booleska typer är false 0 och sant är alla värden som inte är noll. Booleska variabler som tillhör olika booleska typer beter sig olika när operationer utförs på dem. Nedan är ett exempel implementerat i FreePascal (resultatet visas i kommentarerna).

var b: boolean ; wb: wordbool; börja b: = falskt ; b: = pred(b) ; writeln(b, "", ord(b)); // TRUE 255 writeln (b= sant); // TRUE wb: = false ; wb:=pred(wb); writeln(wb, " ", ord(wb)); // TRUE -1 b: = sant ; b:=succ(b); writeln(b, "", ord(b)); // TRUE 2 wb: = sant ; wb:=succ(wb); writeln(wb, " ", ord(wb)); // FALSK 0 slut .

Logiska operationer

Du kan använda logiska operatorer för att skapa komplexa logiska uttryck. Logiska operatorer används ofta i relation till enkla booleska uttryck.

Programmeringsspråket Pascal tillhandahåller följande logiska operationer:

sant xor sant = falskt
sant eller falskt = sant
falskt eller sant = sant
false xor false = false

  • Konjunktion (logisk multiplikation, skärningspunkt) - och. Uttrycken a och b evalueras till sanna endast om a och b är sanna. I alla andra fall är värdet på uttrycken a och b falskt.

    sant och sant = sant sant och falskt = falskt falskt och sant = falskt falskt och falskt = falskt

  • Disjunktion (logiskt tillägg, union) – eller. Uttrycket a eller b evalueras till falskt endast om a och b evalueras till falskt. I alla andra fall är resultatet sant.

    sant eller sant = sant sant eller falskt = sant falskt eller sant = sant falskt eller falskt = falskt

  • Negation (inversion) – inte. Uttrycket inte a har motsatt betydelse av a.

    inte sant = falskt inte falskt = sant

  • Exklusiv ELLER – xor. Uttrycket a xor b evalueras till sant endast om endast en av dess operander evalueras till sant.

Sekvensen för exekvering av logiska operatorer: inte, och, eller.

I Pascal är de första stegen logiska operatorer(och, eller, xor, inte), och först då relationsoperatorer (>, >=,<, <=, <>, =), så glöm inte att placera parenteser i komplexa logiska uttryck.

Komplexa booleska uttryck kanske inte bearbetas helt om fortsatt utvärdering inte ändrar resultatet. Om ett booleskt uttryck måste bearbetas till slut, säkerställs detta genom att inkludera kompileringsdirektivet (B+).

Standard booleska funktioner

  • udda(x) = sant om x är udda (x är en heltalstyp);
  • eoln(x) = sant om slutet av raden i textfilen x påträffas;
  • eof(x) = sant om slutet av filen x påträffas.

I andra fall tar dessa funktioner värdet false.

Perl har ingen speciell boolesk typ, men dokumentationen nämner ofta att en funktion returnerar ett "booleskt" värde. Ibland skrivs det helt enkelt att funktionen returnerar sant eller falskt.

Så var är sanningen?

Det finns ingen speciell boolesk typ i Perl, men något skalärt värde när det testas med om kommer att returnera sant eller falskt. Så du kan skriva

If ($x ekv "foo") ( )

Om ($x) ( )

det första uttrycket kontrollerar om innehållet i variabeln matchar $x med strängen "foo" och den andra kontrollerar om värdet $x i sig är sant.

Vilka värden anses vara sanna eller falska i Perl?

Det är ganska enkelt. Låt oss titta på dokumentationen:

Siffran 0, strängarna "0" och "", den tomma listan "()" och "undef" anses vara falska i booleskt sammanhang. Alla andra värden anses vara sanna. Negerar den sanna innebörden med "!" eller "inte" returnerar ett speciellt falskt värde. När den används som en sträng anses den vara "", och när den används som siffra anses den vara 0.

Från perlsyn, avsnittet "Sanning och lögn".

Följande skalära värden anses därför vara falska:

  • undef - odefinierat värde
  • 0 är talet 0, även om du skriver det som 000 eller 0,0
  • "" tom rad.
  • "0" är en sträng som innehåller det enda talet 0.

Alla andra skalära värden är sanna, inklusive dessa:

  • 1 vilket nummer som helst annat än noll
  • " " sträng med ett eller flera mellanslag
  • "00" två eller fler nollor på en rad
  • "0\n" 0 och radmatning
  • "Sann"
  • "falskt" ja, även strängen "falskt" anses vara sant.

Jag tror att detta beror på att Larry Wall, skaparen av Perl, har en allmänt positiv syn på världen. Tydligen tror han att väldigt få saker i världen är riktigt dåliga och falska, och de flesta av dem är sanna.

Falskt, a. 1. Yttra falskhet; otrolig; given till svek; dishnest; som ett falskt vittne…… The Collaborative International Dictionary of English

falsk- adj 1: inte äkta, autentisk eller legitim jämför förfalskning 2 a: inte sant eller korrekt; särskilt: avsiktligt eller medvetet osant eller felaktigt skadad av falska anklagelser b: avsett att vilseleda eller vilseleda: vilseleda … Lagordbok

falsk- W3S3 adj ▬▬▬▬▬▬▬ 1¦(osant)¦ 2¦(fel)¦ 3¦(inte äkta)¦ 4¦(inte uppriktig)¦ 5 falsk ekonomi 6 under falska förevändningar 7 falskt drag/steg 8 falskt fängelse/gripande ▬▬▬▬▬▬▬ adj. falskt, falskast 1. inte sant; felaktigt; felaktig; felaktig 2. osanning; liggande; oärlig 3. illojal; otrogen adjektiv ** 1.) inte sant: Rapporten avfärdades som totalt falsk. ett falskt påstående/påstående/anklagelse ─ mittemot SANT 2.) gjord för att se ut som något verkligt: ​​KONSTGIVT: lösögonfransar a) inte äkta och avsedd att lura människor: a... … Användning av ord och fraser på modern engelska

falsk- adjektiv 1. inte sant eller verkligt, men avsett att se verkligt ut för att lura människor: falska och vilseledande annonser. Företag som utfärdar falska intyg kan bli föremål för stämningar. 2. en falsk ekonomi något som du... ... Finansiella och affärsmässiga termer

Den här artikeln handlar om ett Unix-verktyg. En artikel om ett esoteriskt programmeringsspråk kallas FALSE. false (översatt från engelska som "false") är ett konsolkommando för UNIX-kompatibla operativsystem, vars enda åtgärd är att returnera värdet 1, ... ... Wikipedia

Falsk- är antonymen till adjektivet true.False är det andra albumet av Gorefest, False (album).False kan också syfta på: * FALSE, ett esoteriskt stackorienterat programmeringsspråk * falskt, ett Unix-verktyg också* Motsägelse * Falskt * Lögn * Falskt arbete, en... ... Wikipedia

falsk- fȯls adj, fals·er; falsk·est 1) som inte motsvarar sanningen eller verkligheten ett test för hiv som gav falska resultat 2) konstgjorda löständer 3) av ett slag som är relaterat till eller liknar ett annat slag som är usu. utsedd av... ... Medicinsk ordbok

Böcker

  • False Delicacy, a Comedy, Kelly Hugh. Boken är en nytryckt upplaga. Trots att ett seriöst arbete har gjorts för att återställa den ursprungliga kvaliteten på publikationen kan vissa sidor innehålla...
  • False Dmitri, en rysk romans och tragedi som beskrivs av brittiska ögonvittnen, 1604-1612, Howe Sonia E. Boken är en nyutgåva. Trots att ett seriöst arbete har gjorts för att återställa den ursprungliga kvaliteten på publikationen kan vissa sidor innehålla...

Sant-falskt [͵tru:ʹfɔ:ls] a logga.

sanningsenlig; att ha sanningsvärden "sant" och "falskt"

sant-falskt frågor - "ja-nej"-frågor


Ny stor engelsk-rysk ordbok. 2001 .

Se vad "sant-falskt" är i andra ordböcker:

    sant falskt- adjektiv som erbjuder en serie påståenden som vart och ett ska bedömas som sant eller falskt ett sant falskt test Ant: flervals * * * sant falskt "TROO FLS", adjektiv. har att göra med eller innehåller påståenden som måste markeras som antingen... ... Användbar engelsk ordbok

    sant falskt- Adjektiv Tillåter endast svaren sanna eller falska. På något sätt fick han en sann falsk fråga fel av tjugo ... Wiktionary

    sant-falskt test- sant′ falskt′ test n. edu ett test som kräver att man markerar påståenden som antingen sanna eller falska Etymologi: 1920–25 … Från formell engelska till slang

    sant-falskt test- ☆ sant falskt test n. ett test, som det vanligtvis ges i skolan, som består av en serie påståenden som ska identifieras som antingen "sant" eller "falskt" ... English World dictionary

    Sant/falskt filmfestival- Infobox Filmfestivalens namn = Sant/falskt filmfestivalens bildtext = öppning = avslutande = mottagna priser = utmärkelser = filmer = regissörer = producenter = författare = huvudrollen = programledare = Ragtag-programmering för film och mediakonst datum = nummer = 40 50… … Wikipedia

    sant-falskt test- (ˈ) ̷ ̷ˈ ̷ ̷ substantiv: ett objektivt test som består av en serie påståenden som vart och ett ska markeras som antingen sant eller falskt * * * /trooh fawls /, Educ. ett test som kräver att man markerar påståenden som sanna eller falska. * * * n. ett test... ...Användbar engelsk ordbok

    sant-falskt test- substantiv Datum: 1924 ett test som består av en serie påståenden som ska markeras som sant eller falskt ... New Collegiate Dictionary

    sant-falskt test- /trooh fowls/, Educ. ett test som kräver att man markerar påståenden som sanna eller falska. * * * …Universalium

    Den sanna falska identiteten- Infobox Album | Namn = The True False Identity Typ = Album Artist = T Bone Burnett Utgiven = 2006 Inspelad = Genre = Rock Längd = 59:30 Label = DMZ Producent = T Bone Burnett Recensioner = * Allmusic Rating|3.5|5… … Wikipedia

    Falsk- är antonymen till adjektivet true.False är det andra albumet av Gorefest, False (album).False kan också syfta på: * FALSE, ett esoteriskt stackorienterat programmeringsspråk * falskt, ett Unix-verktyg också* Motsägelse * Falskt * Lögn * Falskt arbete, en... ... Wikipedia

    sant-falsktest- sant falskt test (tro͞oʹfôlsʹ) n. Ett test där påståenden ska markeras som antingen sanna eller falska. * * * …Universalium

Böcker

  • De sanna blå lagarna i Connecticut och New Haven och de falska blå lagarna som uppfanns av Rev. Samuel Peters som läggs exemplar av lagarna och... blå lagarna i England under James I, Trumbull J Hammonds regeringstid. Boken är en nytryckt upplaga. Trots att ett seriöst arbete har gjorts för att återställa den ursprungliga kvaliteten på publikationen kan vissa sidor innehålla...