Virtauksen hallinta ja ehdolliset lausekkeet
Virtauksen hallinta ja ehdolliset lauseet ovat käytettävissä millä tahansa ohjelmointikielellä ohjelman kulun muuttamiseksi.
Esimerkiksi, jos joku haluaa suorittaa vain tietyn lausejoukon jonkin tietyn logiikan perusteella, Flow-ohjaus ja ehdolliset lauseet ovat hyödyllisiä.
Tulet ymmärtämään paremmin, kun käymme läpi erilaisia lausuntoja, jotka ovat saatavilla C #: ssä.
Huomaa, että kaikki alla olevat koodit on tehty Program.cs-tiedostoon.
Tässä opetusohjelmassa opit-
- Jos lausunto
- Vaihda lause
- Vaikka silmukka
- Silmukkaa varten
1) If-lause
If-käskyä käytetään loogisen lausekkeen arviointiin ennen lausejoukon suorittamista. Jos lauseke arvioi arvon tosi, se suorittaa yhden lausejoukon, muuten se suorittaa toisen joukon lauseita.
Alla olevassa esimerkissämme verrataan muuttujaa, jota kutsutaan arvoksi. Jos muuttujan arvo on alle 10, se suorittaa yhden käskyn tai muuten toisen lauseen.
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Program{static void Main(string[] args){Int32 value = 11;if(value<10){Console.WriteLine("Value is less than 10");}else{Console.WriteLine("Value is greater than 10");}Console.ReadKey();}}}
Koodin selitys
- Määritämme ensin muuttujan nimeltä arvo ja asetamme sen arvoksi 11.
- Käytämme sitten if-käskyä tarkistamaan, onko arvo muuttujan pienempi kuin 10. Tulos on joko tosi tai väärä.
- Jos if-ehto arvioidaan tosi, lähetämme sitten viestin "Arvo on alle 10" konsolille.
- Jos if-tila arvioidaan vääräksi, lähetämme sitten viestin "Arvo on suurempi kuin 10" konsolille.
Jos yllä oleva koodi syötetään oikein ja ohjelma suoritetaan onnistuneesti, seuraava tulos näytetään.
Tuotos:
Voimme selvästi nähdä, että jos-lauseke arvioitiin vääräksi. Siksi viesti "Arvo on suurempi kuin 10" lähetettiin konsolille.
2) Vaihda lause
Switch-käsky on parannus if-käskyyn. Jos sinulla on useita lausekkeita, jotka on arvioitava yhdellä otoksella, useiden 'jos' -lausekkeiden kirjoittamisesta tulee ongelma.
Kytkinlauseketta käytetään lausekkeen arviointiin ja eri lauseiden suorittamiseen lausekkeen tuloksen perusteella. Jos yksi ehto ei ole tosi, kytkinlauseke siirtyy seuraavaan ehtoon ja niin edelleen.
Katsotaanpa, miten tämä toimii alla olevan esimerkin kanssa. Tässä verrataan jälleen arvoksi kutsutun muuttujan arvoa. Sitten tarkistamme, onko arvo yhtä suuri kuin 1 tai 2 tai jotain täysin erilaista.
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Program{static void Main(string[] args){Int32 value=11;switch(value){case 1: Console.WriteLine("Value is 1");break;case 2: Console.WriteLine("Value is 2");break;default: Console.WriteLine("value is different");break;}}}}
Koodin selitys: -
- Määritämme ensin muuttujan nimeltä 'arvo' ja asetamme sen arvoon 11.
- Tämän jälkeen tarkistamme muuttujan 'arvo' käskyllä 'kytkin'.
- Tapauslausekkeita käytetään asettamaan erilaisia ehtoja. Ehtojen perusteella voidaan suorittaa joukko lauseita. Kytkinlausekkeella voi olla useita tapausolosuhteita. Ensimmäisessä tapauslausekkeessa tarkistetaan, onko muuttujan arvo yhtä suuri kuin 1.
- Jos ensimmäinen tapauslauselma on totta, viesti "Arvo on 1" kirjoitetaan konsolille.
- Break-käskyä käytetään katkaisemaan koko kytkinlauseke, kun ehto on tosi.
- Oletusehto on erityisehto. Tämä tarkoittaa vain sitä, että jos mikään tapauslauseke ei ole tosi, suorita lausejoukko oletusehdolle.
Jos yllä oleva koodi syötetään oikein ja ohjelma suoritetaan onnistuneesti, seuraava tulos näytetään. Lähtö tulostaa oletusarvon "Arvo on erilainen", koska mikään ehto ei täyty.
Tuotos:
3) Silmukka
While-silmukkaa käytetään iteratiivisiin tarkoituksiin. Oletetaan, että jos haluat toistaa tietyn joukon lauseita tietyn määrän kertoja, niin kun silmukkaa käytetään.
Alla olevassa esimerkissämme käytämme while-käskyä muuttujan 'i' arvon näyttämiseen. While-käskyä käytetään arvon näyttämiseen 3 kertaa.
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Program{static void Main(string[] args){Int32 value=3,i=0;while(iKoodin selitys: -
- Kaksi kokonaismuuttujaa määritellään, toinen on arvo ja toinen i. Arvomuuttujaa käytetään ylärajana, johon meidän tulisi toistaa while-lauseemme. Ja 'i' on muuttuja, joka käsitellään iteroinnin aikana.
- While-lauseessa i: n arvoa tarkistetaan jatkuvasti ylärajaan nähden.
- Tässä näytetään konsolin i-arvon arvo. Lisäämme myös i: n arvoa.
Jos yllä oleva koodi syötetään oikein ja ohjelma suoritetaan onnistuneesti, seuraava tulos näytetään.
Tuotos:
Täältä näet, että while-lause suoritetaan 3 kertaa ja sitä lisätään samanaikaisesti. Ja joka kerta, se näytti muuttujan 'i' nykyisen arvon.
4) Silmukalle
'For' -silmukkaa käytetään myös iteratiivisiin tarkoituksiin. Oletetaan, että jos haluat toistaa tietyn joukon lauseita tietyn määrän kertoja, käytetään forloopia.
Alla olevassa esimerkissä käytämme 'for' -lauseketta muuttujan 'i' arvon näyttämiseen. 'For' -lauseketta käytetään arvon näyttämiseen 3 kertaa.
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Program{static void Main(string[] args){for(Int32 i=0;i<3;i++){Console.WriteLine(i);}Console.ReadKey();}}}Koodin selitys: -
- Avainsanaa 'for' käytetään aloittamaan 'for loop' -lauseke.
- 'For -silmukassa' määritämme 3 asiaa. Ensimmäinen on alustaa muuttujan arvo, jota käytetään 'for -silmukassa'.
- Toinen on verrata i-arvon arvoa ylärajaan. Meidän tapauksessamme yläraja on arvo 3 (i <3).
- Lopuksi lisäämme i: n arvoa vastaavasti.
- Tässä näytetään konsolin i-arvon arvo.
Jos yllä oleva koodi syötetään oikein ja ohjelma suoritetaan onnistuneesti, seuraava tulos näytetään.
Tuotos:
Täällä voit nähdä, että 'for' -lauseke suoritetaan 3 kertaa. Ja joka kerta, se näytti muuttujan 'i' nykyisen arvon.