[Powered by Google Translate] Vipul Shekhawat: Hej. I denne video vil jeg være at indføre dig til en af ​​de mest grundlæggende begreber i logik og programmering, boolesk værdi. Hvis du er nysgerrig navnet, booleske værdier og betingelser er opkaldt efter George Boole, en 19. århundrede matematiker, som pioner hvad der nu kaldes Boolesk logik, som er baseret i gruppering og sammenligning af booleske værdier. Så hvad er en boolesk værdi? En boolesk værdi er en variabel, der bare har to mulige forhold, sandt og falsk. Du kan tænke på det som en lyskontakt. Det kan enten være tændt eller slukket, sandt eller falsk. Tilsvarende kan binære tal være enten en eller nul, hvilket er analog med det samme, sande eller falske. Enkel, right? Begrebet en boolesk variabel er let at forstå, men de måder, hvorpå du kan manipulere og kombinere dem giver mulighed for langt større kompleksitet. Ud over de to grundlæggende booleske værdier, der er mange booleske operatorer, som kan kombinere to Booleske værdier til en enkelt. To af de mest basale, men vigtigst operatører, er AND og OR. De OG operatør resulterer i en værdi på kun sandt, hvis begge de værdier, det tager, er sandt, så falsk og sandt er falsk. Ligeledes falsk OG falsk er falsk. Eneste sande og ægte lig sandt. Operatoren OR resulterer i værdien af ​​sand, hvis en af værdier, det tager, er sande. Så falsk eller falsk er falsk, men sandt eller falsk, er sandt, og Sandt eller sand er også sandt. Operatoren NOT simpelthen tager en boolesk variabel og giver man det modsatte af det. Så sandt bliver falsk og falsk bliver sandt. Hvis du lægger det hele sammen, variable med erhvervsdrivende, skal du oprette en boolsk udtryk. Lad os nu se på et eksempel på nesting disse booleske udtryk. Kan du huske rækkefølgen af ​​operationer? Som med numre, kan booleske udtryk grupperes efter bruge parenteser. Så der er grundlæggende tre udtryk her, IKKE z, y eller IKKE z og x og y eller IKKE z. Vi kan finde ud af værdierne af disse ved at se på inde og arbejde vores vej ud. Så lad os antage x er sandt, y er sandt, og z er også sandt. Hvad ville IKKE z evalueres til? Da vi starter med sand, ville IKKE z simpelthen være falsk. Så nu har vi falske eller y. Hvis man ser på toppen, kan du se, at y er sandt, Y eller falsk ville stadig bare være sandt. Endelig har vi, har x og sande. Så hvad er x og sandt? x er sand og sand er også rigtigt, så det hele evalueres til sand. Næste, lad os se på, hvordan disse boolske udtryk kan faktisk anvendes i et programmeringssprog. I C, er syntaksen for booleske operationer en smule anderledes fra ordene og, eller og ikke. Lad os dække syntaksen. For at bruge OG operatør, vi skriver en dobbelt-tegn. Operatoren OR er en dobbelt rørledning karakter. Det er den lige lodret linje, som du kan sandsynligvis finde over Enter tasterne på tastaturet. Og operatoren NOT er simpelthen et udråbstegn. Så for at omskrive det udtryk, vi havde før, vi ville bare Skriv dette x && y | |! z. Det tager bare præcis, hvad vi havde før og dreje det ind i C-syntaks. Nu da vi har oversat vores Boolesk udtryk i kode, hvordan får vi rent faktisk bruger det? Lad os sige, at vi har noget kode, der kun udføres, hvis en vis udtryk er sandt. Til dette formål, stort set alle programmeringssprog understøtte hvis betingelse. Lad os sige, at vi har en boolesk variabel, x, og vi vil have nogle kode for at udføre, hvis x er sand. Vi ville simpelthen skrive ordet, hvis sætte parenteser, og læg det booleske udtryk inden for disse parentes. Efter at wrap vi den kode, vi ønsker at eksekvere i krøllede parenteser. Hvad hvis der er noget kode, du gerne vil udføre, hvis x ikke er sandt? Du skal blot skrive ordet ellers efter hvis erklæring, wrap den anden kode i krøllede parenteser, og derefter denne kode vil udføre, hvis x ikke er sandt. En anden nyttig sprog konstruktion er ellers hvis. Antag der er to Booleans du gerne vil overveje, lad os kalde dem x og y. Vi erklærer disse variabler til at være sandt og falsk. Hvis x og y er sande, du udfører den første blok af kode inden for disse krøllede parenteser. Else, hvis x eller y er sande, du udfører den næste blok af kode, og ellers kan du udføre den sidste blok af kode. Arbejde med booleske værdier som dette er nyttigt, men du virkelig kun begrænset til nogle få betingelser. Booleans kan blive meget mere kraftfuld, når du indfører sammenligninger. Disse er måder at sammenligne værdier, der er oprindeligt ikke Boolean. For at se om to værdier er ens, kan du bruge lig lig, hvilket er sandt, hvis de er lige og falsk, hvis de er ikke. Andre almindelige sammenligninger er mindre end, større end, mindre end eller lig med og større end eller lig med. Alt, hvad jeg har dækket hidtil har været temmelig abstrakt, så Lad os indføre disse sammenligninger i en sidste konkret eksempel. Antag at der er to variable, temperatur og isHungry. Temperaturen er et decimaltal, så den kan få decimaler. Du programmerer et meget enkelt program, som fortæller nogen, hvad at spise afhængig af temperaturen. Hvis du er sulten, og og temperaturen er større end eller svarende til 100, kan du udskrive spise is. Else, hvis du er sulten og og temperaturen er lavere end eller lig med nul, kan du printf ("spise krydret mad"). Endelig, hvis du ikke er sulten overhovedet, kan du udskrive "ikke spise noget. " Jeg er Vipul Shekhawat, og dette er CS50.