Məzmuna keç
Educora
Başlanğıc13 dəq5 / 27

Şərtlər: if, else və switch

Proqrama qərar verməyi öyrət: `if`, `else if`, `else`, üçlü operator və `switch`.

Özünü yoxla
Bu dərsdə öyrənəcəksən
  • if, else if və else ilə budaqlanan kod yazmaq
  • Şərtləri && və || ilə birləşdirmək
  • Üçlü operator və switch üçün uyğun vəziyyətləri seçmək

Hər gün onlarla qərar verirsən: yağış yağırsa, çətir götürürsən; saat gecdirsə, taksi çağırırsan; balansında pul azdırsa, alışı təxirə salırsan. Proqramlar da belə qərarlar verir — şərt operatorlarının köməyi ilə.

if: şərt doğrudursa

if açar sözündən sonra mötərizədə şərt yazılır, fiqurlu mötərizələr { } içində isə şərt doğru olduqda icra olunacaq kod — blok. Şərt yalandırsa, blok ötürülür və proqram davam edir.

JavaScript
const temperature = 28;

if (temperature > 25) {
  console.log('It is hot. Drink some water!');
}

console.log('Have a nice day');
▸ Gözlənilən nəticə
It is hot. Drink some water!
Have a nice day
temperature qiymətini 15 et və yenidən işə sal: birinci mesaj yox olacaq.

else və else if

else bloku şərt yalan olduqda icra olunur. Variant ikidən çoxdursa, else if ilə yeni şərtlər əlavə edilir. JavaScript şərtləri yuxarıdan aşağı yoxlayır və ilk doğru şərtin blokunu icra edir — qalanlarına baxmır.

JavaScript
const score = 78;

if (score >= 90) {
  console.log('Excellent');
} else if (score >= 70) {
  console.log('Good');
} else if (score >= 50) {
  console.log('Satisfactory');
} else {
  console.log('Try again');
}
▸ Gözlənilən nəticə
Good

Şərtləri birləşdirmək

Bir neçə şərti birləşdirmək üçün məntiqi operatorlardan istifadə olunur: && (VƏ) hər iki şərtin, || (VƏ YA) isə ən azı birinin doğru olmasını tələb edir. Tutaq ki, kinoteatr həftə sonu 18 yaşdan kiçiklərə endirim edir:

JavaScript
const age = 15;
const isWeekend = true;

if (age < 18 && isWeekend) {
  console.log('Discount ticket: 3 AZN');
} else {
  console.log('Regular ticket: 5 AZN');
}

const day = 'Sunday';
if (day === 'Saturday' || day === 'Sunday') {
  console.log('No school today');
}
▸ Gözlənilən nəticə
Discount ticket: 3 AZN
No school today
İnteraktiv
Simulyasiya yüklənir…
&& operatoru AND qapısı kimi işləyir: çıxış yalnız hər iki giriş doğru olanda doğrudur. OR qapısına keçib || ilə müqayisə et.

Üçlü operator

İki variantdan birini seçib dəyişənə yazmaq lazımdırsa, qısa forma var: şərt ? qiymət1 : qiymət2. Şərt doğrudursa, nəticə qiymət1, yalandırsa qiymət2 olur. Buna üçlü (ternar) operator deyilir, çünki üç hissədən ibarətdir.

JavaScript
const hour = 20;
const greeting = hour < 12 ? 'Good morning' : 'Good evening';
console.log(greeting);

const items = 1;
console.log(`You have ${items} ${items === 1 ? 'item' : 'items'} in the basket`);
▸ Gözlənilən nəticə
Good evening
You have 1 item in the basket

switch: çoxlu variant

Bir dəyişəni çoxlu konkret qiymətlərlə müqayisə etmək lazım olanda switch uzun else if zəncirindən daha oxunaqlıdır. Hər case bir qiyməti yoxlayır (ciddi müqayisə === ilə), break isə switch-dən çıxır. Heç bir case uyğun gəlməsə, default bloku icra olunur.

JavaScript
const day = 'Saturday';

switch (day) {
  case 'Saturday':
  case 'Sunday':
    console.log('Weekend!');
    break;
  case 'Friday':
    console.log('Almost weekend');
    break;
  default:
    console.log('Work day');
}
▸ Gözlənilən nəticə
Weekend!
Boş case 'Saturday': növbəti case ilə eyni kodu paylaşır — iki qiymət üçün bir cavab.
JavaScript
const light = 'yellow';

switch (light) {
  case 'green':
    console.log('Go');
  case 'yellow':
    console.log('Get ready');
  case 'red':
    console.log('Stop');
}
▸ Gözlənilən nəticə
Get ready
Stop
KonstruksiyaNə vaxt istifadə etməli
if / else if / elseistənilən şərtlər: aralıqlar (score >= 90), bir neçə dəyişən, mürəkkəb yoxlamalar
? :bir sətirdə iki qiymətdən birini seçmək
switchbir dəyişəni çoxlu konkret qiymətlə müqayisə etmək
Tapşırıq

score üçün qiyməti çap et: 90 və yuxarı — A, 75 və yuxarı — B, 60 və yuxarı — C, qalan hallarda — F. Sonra ternar operatorla passed (bal 60 və ya daha çoxdursa) və ya failed çap et.

Tapşırıq · JavaScript
const score = 83;
// 1) print the grade: A, B, C or F
// 2) print passed or failed with the ternary operator
▸ Gözlənilən nəticə
B
passed

Əsas fikirlər

  • if bloku yalnız şərt doğru olduqda icra olunur; else isə əks halda.
  • else if zəncirində ilk doğru şərt qalib gəlir, ona görə ən ciddi şərt yuxarıda olmalıdır.
  • && hər iki şərtin, || ən azı birinin doğru olmasını tələb edir.
  • Üçlü operator şərt ? a : b iki qiymətdən birini seçir.
  • switch qiymətləri === ilə müqayisə edir; hər case-in sonunda break yaz.

Özünü yoxla

10 sual. Hər düzgün cavab XP qazandırır.

1 / 10
const x = 7; olduqda if (x > 10) { console.log('A'); } else { console.log('B'); } nə çap edəcək?