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:
- Kolla villkoret - är det sant eller falskt?
- Sant: Kör koden i { }
- 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
| Operator | Betydelse | Exempel | Resultat |
|---|---|---|---|
== | Lika med | 5 == 5 | true |
!= | Inte lika med | 5 != 3 | true |
> | Större än | 7 > 5 | true |
< | Mindre än | 3 < 8 | true |
>= | Större eller lika | 5 >= 5 | true |
<= | Mindre eller lika | 4 <= 6 | true |
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 santelse- Alternativ när villkoret är falsktelse if- Flera alternativ att välja mellan- Jämförelseoperatorer (
==,>,<, etc.) - Kollar värden - Logiska operatorer (
&&,||,!) - Kombinerar villkor
🎯 Övningar
- 🟢 Grundläggande: Skriv en if-sats som kollar om ett tal är positivt
- 🟡 Utmanande: Skapa en “betygs-kalkylator” med flera if-else if
- 🔴 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! 🃏😄