DEV Community

Elshod Ibodullayev
Elshod Ibodullayev

Posted on

C# da if, switch, for, while — eng sodda va amaliy qo'llanma

C# da if, switch, for, while — eng sodda va amaliy qo'llanma

Dastur oqimini boshqarish uchun eng ko‘p ishlatiladigan to‘rt operator: if, switch, for, while. Keling, ularni eng sodda misollar va izohlar bilan ko‘rib chiqamiz.


✅ if / else — shart bo‘yicha qaror

Qachon? Bitta yoki bir nechta shartni tekshirish kerak bo‘lsa.

int age = 20; if (age >= 18) { Console.WriteLine("Kirish mumkin"); } else { Console.WriteLine("Kirish mumkin emas"); } 
Enter fullscreen mode Exit fullscreen mode

Past-past shartlar (else if)

int score = 72; if (score >= 90) Console.WriteLine("A"); else if (score >= 80) Console.WriteLine("B"); else if (score >= 70) Console.WriteLine("C"); else Console.WriteLine("F"); 
Enter fullscreen mode Exit fullscreen mode

Tez xatolar

  • { } qo‘ymaslik oqibatida noto‘g‘ri blok bajarilishi mumkin.
  • Shartlarni tartibli joylashtirmaslik (>= 90 dan avval >= 70 yozish kabi).

✅ switch — qiymatga ko‘ra tanlash

Qachon? Bitta o‘zgaruvchining qiymatini bir nechta variant bilan solishtirish qulay bo‘lsa.

int day = 3; switch (day) { case 1: Console.WriteLine("Dushanba"); break; case 2: Console.WriteLine("Seshanba"); break; case 3: Console.WriteLine("Chorshanba"); break; default: Console.WriteLine("Noma'lum kun"); break; } 
Enter fullscreen mode Exit fullscreen mode

C# pattern matching (zamonaviy usul)

object input = 42; switch (input) { case int n when n > 0: Console.WriteLine($"Musbat butun: {n}"); break; case string s when s.Length > 0: Console.WriteLine($"Matn: {s}"); break; default: Console.WriteLine("Boshqa tur"); break; } 
Enter fullscreen mode Exit fullscreen mode

Tez xatolar

  • break; ni unutib, keyingi case’ga “oqib ketish” (fall-through) — C# da default ruxsat emas, lekin goto case bilan nazoratli o‘tish mumkin.
  • default ni qo‘ymaslik (nomalum holat qolib ketadi).

✅ for — aniq marta takrorlash

Qachon? Takrorlash soni oldindan ma’lum bo‘lsa.

for (int i = 0; i < 5; i++) { Console.WriteLine($"i = {i}"); } 
Enter fullscreen mode Exit fullscreen mode

Ichma-ich for (nested)

for (int r = 1; r <= 3; r++) { for (int c = 1; c <= 3; c++) { Console.Write($"({r},{c}) "); } Console.WriteLine(); } 
Enter fullscreen mode Exit fullscreen mode

Tez xatolar

  • Cheksiz sikl: shart hech qachon false bo‘lmaydi.
  • i++ o‘rniga noto‘g‘ri yangilash (i-- yoki umuman yangilamaslik).

✅ while — shart bajarilgunga qadar takrorlash

Qachon? Necha marta takrorlanishi oldindan noma’lum, shart bilan to‘xtatiladi.

int n = 5; while (n > 0) { Console.WriteLine(n); n--; } 
Enter fullscreen mode Exit fullscreen mode

do/while — kamida bir marta bajarish

string input; do { Console.Write("Son kiriting (stop - to'xtash): "); input = Console.ReadLine(); } while (input != "stop"); 
Enter fullscreen mode Exit fullscreen mode

Tez xatolar

  • Shart ichidagi o‘zgaruvchini yangilamaslik → cheksiz sikl.
  • do/while da ; ni unutish.

🧪 Kichik mashqlar

1) FizzBuzz

1 dan 100 gacha: 3 ga bo‘linsa — Fizz, 5 ga — Buzz, ikkisiga — FizzBuzz, aks holda sonning o‘zi.

for (int i = 1; i <= 100; i++) { if (i % 15 == 0) Console.WriteLine("FizzBuzz"); else if (i % 3 == 0) Console.WriteLine("Fizz"); else if (i % 5 == 0) Console.WriteLine("Buzz"); else Console.WriteLine(i); } 
Enter fullscreen mode Exit fullscreen mode

2) Parol tekshirish (3 urinish)

while bilan 3 marta parol so‘rang, to‘g‘ri bo‘lsa kirish, aks holda bloklash xabari.

3) Menu switch bilan

switch orqali 1-Add, 2-Sub, 3-Mul, 4-Div — har biriga amal yozing, defaultda xato.


🧠 Qachon qaysi biri?

  • if — murakkab/ko‘p shartli mantiq (or/and bilan).
  • switch — bitta qiymat ko‘plab variantlarga bo‘linadi.
  • for — takrorlash soni aniq.
  • while — takrorlash soni noma’lum, shartga bog‘liq.

⚙️ Tezkor shablonlar (snippet)

if/else

if (condition) { // todo } else { // else-part } 
Enter fullscreen mode Exit fullscreen mode

switch

switch (value) { case A: // ... break; case B: // ... break; default: // ... break; } 
Enter fullscreen mode Exit fullscreen mode

for

for (int i = 0; i < count; i++) { // loop body } 
Enter fullscreen mode Exit fullscreen mode

while

while (condition) { // loop body // update condition variables } 
Enter fullscreen mode Exit fullscreen mode

Savollar yoki takliflar bormi? Izohlarda yozib qoldiring! ✍️
ElshodDev GitHub Profilim
Telegram channel

Top comments (0)