Operatorer og uttrykk: aritmetikk, sammenligning, logikk
Arbeid med aritmetiske operatorer (+, -, *, /, %), sammenligninger (==, !=, , =) og logiske operatorer (&&, ||, !). Forstå presedens og kortslutningsevaluering.
Operatorer og uttrykk: aritmetikk, sammenligning, logikk er en gratis leksjon i C# Academy på CoddyKit. Dette er leksjon 2 av 3. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i C# Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i C# Academy inneholder totalt 3 leksjoner.
Oversikt over operatorer
Mål: Bruk aritmetiske, sammenlignings- og logiske operatorer til å bygge tydelige uttrykk.
- Regn med + - * / %
- Sammenlign verdier
- Kombiner kontroller med && og ||
Grunnleggende aritmetikk
Aritmetikk: / med heltall forkorter resultatet til et heltall; bruk double for resultater med desimaler.
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
}
}
Grunnleggende sammenligning
Sammenligningsoperatorer gir resultater av 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
Kortslutning: && stopper når venstresiden er false, mens || stopper når venstresiden er true. Dette er nyttig for å unngå unødvendig arbeid.
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 resultatene. Legg til parenteser for å gjøre hensikten tydelig og unngå feil.
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);
}
}
Fallgruver du bør unngå
Unngå overraskelser: konverter til double for resultater med desimaler, og stol på kortslutning for å hoppe over kostbare kall.
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
}
}
Slik fungerer kortslutning
Oppsummering
Oppsummering: Bruk aritmetikk til beregninger, sammenligninger til avgjørelser og logiske operatorer til å kombinere kontroller. Foretrekk parenteser for tydelighet, og bruk kortslutning på en gjennomtenkt måte.
Lær deg C# med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 93
- Leksjoner
- 346
Ofte stilte spørsmål
Er leksjonen «Operatorer og uttrykk: aritmetikk, sammenligning, logikk» gratis?
Ja – hele teksten i «Operatorer og uttrykk: aritmetikk, sammenligning, logikk» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av C# Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i C# Academy inneholder totalt 3 leksjoner.
Hva lærer jeg i «Operatorer og uttrykk: aritmetikk, sammenligning, logikk»?
Arbeid med aritmetiske operatorer (+, -, *, /, %), sammenligninger (==, !=, , =) og logiske operatorer (&&, ||, !). Forstå presedens og kortslutningsevaluering. Du øver på C# Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med C# Academy?
Ingen tidligere erfaring er nødvendig. C# Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 3.
Hvor lang tid tar leksjonen «Operatorer og uttrykk: aritmetikk, sammenligning, logikk»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne C# Academy-leksjonen?
Ja. Alle C# Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Verdi kontra referanse; literaler; var-inferens; const/readonly
- Operatorer og uttrykk: aritmetikk, sammenligning, logikk
- Suffikser i praksis; casting kontra konvertering; objektoppretting i C# 6