C# Academy · Lektion

Operatorer og udtryk: aritmetik, sammenligning, logik

Arbejd med aritmetiske operatorer (+, -, *, /, %), sammenligninger (==, !=, , =) og logiske operatorer (&&, ||, !). Forstå præcedens og short-circuit-evaluering.

Lektion 2 af 38 trin

Operatorer og udtryk: aritmetik, sammenligning, logik er en gratis C# Academy-lektion på CoddyKit. Dette er lektion 2 af 3. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i C# Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. C# Academy-kurset indeholder 3 lektioner i alt.

Oversigt over operatorer

Mål: Brug aritmetiske, sammenlignings- og logiske operatorer til at opbygge tydelige udtryk.

  • Regn med + - * / %
  • Sammenlign værdier
  • Kombinér kontroller med && og ||

Grundlæggende aritmetik

Aritmetik: Division med int-værdier afkorter resultatet; brug double til resultater med decimaler.

using System;

public class Program
{
  public static void Main(string[] args)
  {
    int a = 9;
    int b = 4;
    Console.WriteLine("a + b = " + (a + b));
    Console.WriteLine("a - b = " + (a - b));
    Console.WriteLine("a * b = " + (a * b));
    Console.WriteLine("a / b = " + (a / b)); // integer division
    Console.WriteLine("a % b = " + (a % b)); // remainder
  }
}

Grundlæggende sammenligning

Sammenligningsoperatorer giver resultater af typen bool, som du kan kombinere med logiske operatorer.

using System;

public class Program
{
  public static void Main(string[] args)
  {
    int x = 5;
    int y = 7;
    Console.WriteLine("x == y: " + (x == y));
    Console.WriteLine("x != y: " + (x != y));
    Console.WriteLine("x < y:  " + (x < y));
    Console.WriteLine("x <= y: " + (x <= y));
    Console.WriteLine("x > y:  " + (x > y));
    Console.WriteLine("x >= y: " + (x >= y));
  }
}

Logiske operatorer

Kortslutningsevaluering: && stopper, når venstresiden er false; || stopper, når venstresiden er true. Det er nyttigt for at undgå unødvendigt arbejde.

using System;

public class Program
{
  static bool ExpensiveCheck()
  {
    Console.WriteLine("ExpensiveCheck ran");
    return true;
  }

  public static void Main(string[] args)
  {
    bool ok = false;
    // && short-circuits when the left is false
    if (ok && ExpensiveCheck())
    {
      Console.WriteLine("Both true");
    }
    else
    {
      Console.WriteLine("Left was false, skipped right");
    }

    bool isAdmin = true;
    bool hasTicket = false;

    // || short-circuits when the left is true
    if (isAdmin || hasTicket)
    {
      Console.WriteLine("Allowed");
    }

    // Negation
    Console.WriteLine("!hasTicket = " + (!hasTicket));
  }
}

Prioritet og ()

Operatorprioritet påvirker resultaterne; tilføj parenteser for at gøre hensigten tydelig og undgå fejl.

using System;

public class Program
{
  public static void Main(string[] args)
  {
    int n = 10;
    int m = 3;
    bool r1 = n - m * 2 == 4;        // * before -
    bool r2 = (n - m) * 2 == 14;     // grouped
    Console.WriteLine("r1 = " + r1);
    Console.WriteLine("r2 = " + r2);

    // Logical precedence: && before ||, but use () for clarity
    bool a = true, b = false, c = true;
    bool r3 = a || b && c;           // b&&c first → true
    bool r4 = (a || b) && c;         // grouped → true
    Console.WriteLine("r3 = " + r3);
    Console.WriteLine("r4 = " + r4);
  }
}

Faldgruber, du bør undgå

Undgå overraskelser: Brug double til resultater med decimaler, og stol på kortslutningsevaluering for at springe dyre kald over.

using System;

public class Program
{
  static int Counter = 0;

  static int Next()
  {
    Counter = Counter + 1;
    return Counter;
  }

  public static void Main(string[] args)
  {
    // Integer division pitfall
    int a = 1, b = 2;
    Console.WriteLine("1/2 int = " + (a / b)); // 0
    Console.WriteLine("1/2 double = " + (a / 2.0)); // 0.5

    // Side effects: function called only if needed
    bool cond = false;
    if (cond && Next() > 0)
    {
      Console.WriteLine("Will not run");
    }
    Console.WriteLine("Counter = " + Counter); // 0 because Next() skipped
  }
}

Kortslutningsadfærd

Hurtigt tjek: Hvilket udsagn om && og || er korrekt?

Opsummering

Opsummering: Brug aritmetik til beregninger, sammenligninger til beslutninger og logiske operatorer til at kombinere kontroller. Foretræk parenteser for tydelighed, og brug kortslutningsevaluering med omtanke.

Gratis at komme i gang

Lær C# med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
93
Lektioner
346

Ofte stillede spørgsmål

Er lektionen “Operatorer og udtryk: aritmetik, sammenligning, logik” gratis?

Ja — hele teksten til “Operatorer og udtryk: aritmetik, sammenligning, logik” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af C# Academy-kurset, skal du opgradere til CoddyKit PRO. C# Academy-kurset indeholder 3 lektioner i alt.

Hvad lærer jeg i “Operatorer og udtryk: aritmetik, sammenligning, logik”?

Arbejd med aritmetiske operatorer (+, -, *, /, %), sammenligninger (==, !=, , =) og logiske operatorer (&&, ||, !). Forstå præcedens og short-circuit-evaluering. Du øver dig i C# Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på C# Academy?

Der kræves ingen tidligere erfaring. C# Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 2 af 3.

Hvor lang tid tager lektionen “Operatorer og udtryk: aritmetik, sammenligning, logik”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne C# Academy-lektion?

Ja. Alle C# Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Value kontra reference; literals; var-inferens; const/readonly
  2. Operatorer og udtryk: aritmetik, sammenligning, logik
  3. Suffikser i praksis; casting kontra konvertering; C# 6-oprettelse af objekter
← Tilbage til C# Academy