C# keeles on korduslaused ehk tsüklid kontrollstruktuurid, mis võimaldavad programmil teatud tegevusi korrata kas kindla arvu kordi või seni, kuni mingi tingimus on täidetud. Need on hädavajalikud dünaamiliste ja tõhusate rakenduste loomiseks, vältides koodi asjatut kordamist.
Allikate põhjal jaotatakse C# tsüklid neljaks peamiseks tüübiks:
1. for tsükkel
Seda tsüklit kasutatakse siis, kui on täpselt teada, mitu korda soovitakse koodiplokki täita.
- Struktuur: Koosneb kolmest osast: deklareerimine (algväärtustamine), tingimus ja loenduri väljend (tavaliselt suurenemine või vähenemine).
- Näide: Loendamine ühest viieni, kus iga sammuga suurendatakse muutuja väärtust.
2. while tsükkel
See kordab tegevust seni, kuni määratud tingimus on tõene.
- Kasutusvaldkond: Ideaalne olukordades, kus korduste arv ei ole ette teada.
- Oluline märkus: Tingimust kontrollitakse enne koodiploki täitmist. Kui tingimus on alguses väär, ei täideta sisu kordagi.
3. do-while tsükkel
Sarnane while tsüklile, kuid ühe olulise erinevusega: koodiplokk käivitatakse vähemalt üks kord.
- Toimimine: Tingimust kontrollitakse alles pärast koodibloki läbimist.
- Kasutusnäide: Kasutajalt sisendi küsimine seni, kuni sisestatakse korrektne väärtus – küsimus peab ekraanile ilmuma vähemalt ühe korra.
4. foreach tsükkel
See tsükkel on loodud andmekogude (näiteks massiivid või listid) läbimiseks.
- Eelis: See võimaldab töödelda iga elementi kogus ühekaupa, ilma et peaks muretsema elementide indeksite või positsioonide pärast.
- Toimimine: Tsükkel kasutab iteraatorit, et võtta järgmine element, kuni kogu kollektsioon on läbitud.
Tsükli juhtimise laused
Tsüklite tööd saab täpsemalt suunata kahe hüppelausga:
- break: Katkestab tsükli töö koheselt ja väljub sellest, liikudes edasi järgmise koodirea juurde pärast tsüklit.
- continue: Katkestab käimasoleva iteratsiooni (korduse) sisu täitmise ja alustab kohe järgmist tsükli ringi.
Lisaks mainivad allikad iteraatoreid ja märksõna yield return, mida saab kasutada kohandatud iteratsioonide loomiseks kollektsioonide üle.
Näited:
static void Main(string[] args)
{
Console.WriteLine("vali meetod");
Console.WriteLine("1 - for loop");
Console.WriteLine("2 - While meetod");
int valik = int.Parse(Console.ReadLine());
if (valik == 1)
{
ForLoopMeetod();
}
else if (valik == 2)
{
WhileMethod();
}
else
{
Console.WriteLine("vale vastus");
static void ForLoopMeetod()
{
for (int i = 0; i < 3; i++)
{
Console.WriteLine("Hello for");
}
}
static void WhileMethod()
{
int i = 0;
while (i < 3)
{
Console.WriteLine("hello while");
i++;
}


7. Millal kasutada?
| Tsükkel | Kasuta kui |
|---|---|
for | tead korduste arvu ette |
while | kordad kuni tingimus täitub |
do-while | peab vähemalt ühe korra täituma |
foreach | käid massiivi/kollektsiooni läbi |
