C# Academy · Oppitunti

Operaattorit ja lausekkeet: aritmetiikka, vertailu ja logiikka

Käyttäkää aritmeettisia operaattoreita (+, -, *, /, %), vertailuja (==, !=, , =) ja loogisia operaattoreita (&&, ||, !). Perehtykää prioriteettiin ja oikosulkuarviointiin.

Oppitunti 2/38 vaihetta

Operaattorit ja lausekkeet: aritmetiikka, vertailu ja logiikka on ilmainen C# Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/3. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu C# Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. C# Academy-kurssilla on yhteensä 3 oppituntia.

Operaattorien yleiskatsaus

Tavoite: Käytä aritmeettisia, vertailu- ja loogisia operaattoreita selkeiden lausekkeiden rakentamiseen.

  • Matemaattiset laskut operaattoreilla + - * / %
  • Arvojen vertaileminen
  • Tarkistusten yhdistäminen operaattoreilla && ja ||

Aritmetiikan perusteet

Aritmetiikka: kokonaisluvuilla jakolasku katkaisee tuloksen; käytä double-tyyppiä murtolukujen säilyttämiseen.

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
  }
}

Vertailun perusteet

Vertailuoperaattorit tuottavat bool-arvoja, joita voi yhdistää loogisilla operaattoreilla.

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));
  }
}

Loogiset operaattorit

Oikosulkuarviointi: && lopettaa arvioinnin, kun vasen operandi on false; || lopettaa arvioinnin, kun vasen operandi on true. Tämä auttaa välttämään tarpeetonta työtä.

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));
  }
}

Etusijajärjestys ja ()

Etusijajärjestys vaikuttaa tuloksiin; lisää sulkeet tekemään tarkoitus selväksi ja virheiden välttämiseksi.

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);
  }
}

Vältettävät sudenkuopat

Vältä yllätykset: käytä double-tyyppiä murtolukutuloksiin ja hyödynnä oikosulkuarviointia kalliiden kutsujen ohittamiseen.

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
  }
}

Oikosulkuarvioinnin toiminta

Pikatarkistus: Mikä &&- ja ||-operaattoreita koskeva väittämä on oikein?

Kertaus

Kertaus: Käytä aritmetiikkaa laskuihin, vertailuja päätöksentekoon ja loogisia operaattoreita tarkistusten yhdistämiseen. Suosi sulkeita selkeyden vuoksi ja hyödynnä oikosulkuarviointia harkiten.

Aloita maksutta

Opi C# tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
93
Oppitunnit
346

Usein kysytyt kysymykset

Onko oppitunti ”Operaattorit ja lausekkeet: aritmetiikka, vertailu ja logiikka” ilmainen?

Kyllä – oppitunnin ”Operaattorit ja lausekkeet: aritmetiikka, vertailu ja logiikka” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko C# Academy-kurssin, päivitä CoddyKit PROhon. C# Academy-kurssilla on yhteensä 3 oppituntia.

Mitä opin oppitunnilla ”Operaattorit ja lausekkeet: aritmetiikka, vertailu ja logiikka”?

Käyttäkää aritmeettisia operaattoreita (+, -, *, /, %), vertailuja (==, !=, , =) ja loogisia operaattoreita (&&, ||, !). Perehtykää prioriteettiin ja oikosulkuarviointiin. Harjoittelet C# Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni C# Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin C# Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/3.

Kuinka kauan ”Operaattorit ja lausekkeet: aritmetiikka, vertailu ja logiikka”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä C# Academy-oppitunnilla?

Kyllä. Jokainen C# Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Arvo- ja viitetyypit, literaalit, var-päättely, const ja readonly
  2. Operaattorit ja lausekkeet: aritmetiikka, vertailu ja logiikka
  3. Jälkiliitteet käytännössä, tyypinmuunnos ja konversio, C# 6:n olioiden luonti
← Takaisin: C# Academy