If

💡 Vad är if-satser?

If-satser är som att vara en beslutsfattare för din kod! 🧠

Tänk dig att du står framför garderoben på morgonen:

  • OM det regnar utomhus → Ta med paraply ☔
  • OM det är kallt → Ta jacka 🧥
  • OM det är soligt → Ta solglasögon 😎

If-satser fungerar precis likadant - de hjälper din kod att fatta beslut baserat på olika villkor.

🎯 TL;DR

If = “OM detta är sant, GÖR det här”. C-Sharp kollar villkoret och väljer vad som ska hända. Sant = kör koden, falskt = hoppa över.

📋 Efter att ha läst detta kommer du att kunna

  • Förstå hur if-satser fungerar som beslutsfattare 🤔
  • Skriva enkla if-villkor med jämförelseoperatorer 📊
  • Använda else och else if för fler alternativ 🔀
  • Undvika vanliga if-misstag 🚫
  • Kombinera flera villkor med && och 

🔧 Grundprinciper

If-satsens anatomi:


if (VILLKOR)
{
    // Kod som körs OM villkoret är sant
}

Så fungkar det:

  1. Kolla villkoret - är det sant eller falskt?
  2. Sant: Kör koden i { }
  3. Falskt: Hoppa över koden i { }

🚀 If-satser i praktiken

🟢 Grundläggande if-sats


int age = 18;       // ålder

if (age >= 18)
{
    Console.WriteLine("🎉 Du är myndig!");
}

Console.WriteLine("Koden fortsätter här...");

Vad händer:

  • Om age är 18 eller mer → skriver “🎉 Du är myndig!”
  • Om age är under 18 → hoppar över meddelandet
  • Koden efter if körs alltid

🟡 If med Else (antingen eller)


int score = 75;     // poäng

if (score >= 70)
{
    Console.WriteLine("✅ Godkänd!");
}
else
{
    Console.WriteLine("❌ Ej godkänd. Försök igen!");
}

Nu händer alltid något:

  • Om score ≥ 70 → “Godkänd!”
  • Annars → “Ej godkänd”

🔴 If-Else if-Else (flera alternativ)


int temperature = 22;   // temperatur

if (temperature > 25)
{
    Console.WriteLine("😎 Väldigt varmt!");
}
else if (temperature > 15)
{
    Console.WriteLine("😊 Lagom varmt!");
}
else if (temperature > 0)
{
    Console.WriteLine("🥶 Lite kallt!");
}
else
{
    Console.WriteLine("🥶 Fruktansvärt kallt!");
}

📊 Jämförelseoperatorer

OperatorBetydelseExempelResultat
==Lika med5 == 5true
!=Inte lika med5 != 3true
>Större än7 > 5true
<Mindre än3 < 8true
>=Större eller lika5 >= 5true
<=Mindre eller lika4 <= 6true

Praktiska exempel:


string password = "hejsan123";  // lösenord

if (password == "hejsan123")
{
    Console.WriteLine("🔓 Rätt lösenord!");
}

int count = 0;      // antal
if (count != 0)
{
    Console.WriteLine("Det finns något här!");
}
else
{
    Console.WriteLine("📭 Tomt!");
}

⚡ Logiska operatorer (kombinera villkor)

&& (OCH) - Båda måste vara sanna


int age = 20;           // ålder
bool hasLicense = true; // har körkort

if (age >= 18 && hasLicense == true)
{
    Console.WriteLine("🚗 Du får köra bil!");
}

|| (ELLER) - Minst en måste vara sann


string day = "lördag";  // dag

if (day == "lördag" || day == "söndag")
{
    Console.WriteLine("🎉 Helg! Dags att vila!");
}

! (INTE) - Vänder på sant/falskt


bool isSick = false;    // är sjuk

if (!isSick)  // Samma som: isSick == false
{
    Console.WriteLine("🏃 Du kan träna idag!");
}

⚠️ Vanliga misstag

Misstag 1: = istället för ==


// 🚨 FEL - tilldelar värdet istället för att jämföra
if (age = 18)  // Sätter age till 18

// ✅ RÄTT - jämför värden
if (age == 18)  // Kollar om age är 18

Misstag 2: String-jämförelser


string name1 = "Marcus";    // namn1
string name2 = "marcus";    // namn2

// 🚨 FEL - skiljer på stora/små bokstäver
if (name1 == name2)  // false

// ✅ RÄTT - ignorera stora/små bokstäver
if (name1.ToLower() == name2.ToLower())  // true

Misstag 3: Komplexa villkor utan paranteser


// 🚨 FEL - svårt att förstå
if (a > 5 && b < 10 || c == 3)

// ✅ RÄTT - tydligt med paranteser
if ((a > 5 && b < 10) || c == 3)

🎆 If-satser i praktiken

Användningsområden:

  • 📝 Validering: Kontrollera användarinput
  • 🚕 Programflöde: Styra vad som händer näst
  • 🔁 Loopar: Kontrollersa när loopen ska sluta
  • 🚨 Felhantering: Hantera fel och undantag
  • 🎮 Spellogik: AI-beslut i spel

Praktiskt exempel - Enkelt spel:


Console.WriteLine("🎲 Gissa ett nummer mellan 1-10!");
int secretNumber = 7;           // hemligt nummer
int guess = int.Parse(Console.ReadLine());  // gissning

if (guess == secretNumber)
{
    Console.WriteLine("🎉 Rätt! Du vann!");
}
else if (guess < secretNumber)
{
    Console.WriteLine("🔼 För lågt! Försök igen!");
}
else
{
    Console.WriteLine("🔽 För högt! Försök igen!");
}

📚 Sammanfattning

If-satser = beslutskraft för din kod:

  • if - Gör något om villkoret är sant
  • else - Alternativ när villkoret är falskt
  • else if - Flera alternativ att välja mellan
  • Jämförelseoperatorer (==, >, <, etc.) - Kollar värden
  • Logiska operatorer (&&, ||, !) - Kombinerar villkor

🎯 Övningar

  1. 🟢 Grundläggande: Skriv en if-sats som kollar om ett tal är positivt
  2. 🟡 Utmanande: Skapa en “betygs-kalkylator” med flera if-else if
  3. 🔴 Expert: Bygg ett “sten-sax-påse” spel med logiska operatorer

😄 Obligatorisk dad joke

Varför är if-satser så bra på att fatta beslut?

För att de alltid har en else i ärmen! 🃏😄


Undersidor


    Upp

    Upp


    Licens: Apache 2.0 | © 2023 Marcus Medina, Campus Mölndal. Alla rättigheter förbehållna.
    Du får använda och modifiera detta verk enligt villkoren i Apache License, Version 2.0. Du får inte använda detta verk för kommersiella ändamål utan tillstånd från upphovsmannen.