Logiska villkor

Vi använder if-satser för att bestämma de vägar som ett program kan ta. Då kan datorn fatta beslut, och vi får något användbart.

Här ska vi fortsätta på det temat, och se hur vi kan formulera villkor.

If och else

Titta på följande exempel:

ålder = int(input("Hur gammal är du? "))
if ålder >= 18:
    print("Hej, du är vuxen!")

Om du skriver in "20" så berättar programmet att du är vuxen, eftersom villkoret "ålder ≥ 18" är sant. Men om du skriver in "10" så säger programmet ingenting.

Vi kan uttrycka vad som ska hända om villkoret är falskt med hjälp av else.

Sammansatta villkor

De påståenden som används i våra if-satser kan kombineras med flera med hjälp av nyckelorden and, or och not.

Till exempel vill jag köpa en ny dator bara om skärmen är större än 14 tum men mindre än 17 tum. Om vi har flera alternativ och minst ett av dem ska vara sanna kan vi använda or:

screensize = 15
if screensize == 14 or screensize == 15 or screensize == 16:
    print("Köp!")

Varje villkor ska vara komplett. Om jag letar efter en dator med en skärm som är 14, 15, eller 16 tum kan jag inte skriva "if screensize == 14 or 15 or 16:" även om det är så vi människor säger det. Vi måste skriva som ovan.

Om jag vill köpa en dator med minst 14 tum skärm och 8 gb minne? I det här fallet har jag två villkor och jag vill att båda ska vara sanna. Då använder jag and:

screensize = 15
ram = 12
if screensize > 14 and ram >= 8:
    print("Jag köper datorn")

Det sista nyckelordet som är viktigt är not, och det är en viktig del i tvärtomleken.

if not (ram < 8):
    print("Tillräckligt mycket minne")

Detta är samma sak som att skriva

if ram >= 8:
    print("Tillräckligt mycket minne")

Lägg märke till att det är \(\geq\) nu. Varför då? (Vad händer om ram är exakt 8?)

Vad vi gör här är att jobba med logik!

Har du en fråga du vill ställa om Logiska villkor? Ställ den på Pluggakuten.se
Har du hittat ett fel, eller har du kommentarer till materialet på den här sidan? Mejla matteboken@mattecentrum.se
Läs sidan på andra språk

I den här videon använder vi flera inputs, vars svar används i mer komplexa if-satser, för att skriva hälsningar precis som användaren önskar.

  • If-sats: Nyckelordet “if” följt av ett logiskt påstående används för att låta våra program fatta beslut.
  • Logiskt påstående: En jämförelse mellan två värden. Till exempel “ålder > 18” eller “namn == marcus”.