در Kotlin هم مثل ریاضیات، می‌تونیم از شرط‌های منطقی استفاده کنیم:

✅ کوچکتر از: a < b
✅ کوچکتر یا مساوی: a <= b
✅ بزرگتر از: a > b
✅ بزرگتر یا مساوی: a >= b
✅ مساوی: a == b
✅ نابرابر: a != b

این شرط‌ها به ما کمک می‌کنن که برنامه رو طوری بنویسیم که بر اساس موقعیت‌های مختلف، کارهای متفاوتی انجام بده. حالا بیاین با شرط‌های if، else و else if در Kotlin آشنا بشیم. 😊


1️⃣ دستور if در Kotlin

اگر شرط برقرار بود، یک بخش از کد اجرا می‌شود.

🔹 سینتکس:

if (شرط) {
    // کدی که اجرا می‌شود اگر شرط درست باشد
}

📌 نکته: دستور if همیشه باید با حروف کوچک نوشته شود (if نه If یا IF).

🛠 مثال:

if (20 > 18) {
    println("20 بزرگتر از 18 است")
}

🔹 خروجی:

20 بزرگتر از 18 است

💡 مثال با متغیر:

val x = 20
val y = 18
if (x > y) {
    println("x بزرگتر از y است")
}

🔹 خروجی:

x بزرگتر از y است

2️⃣ دستور else در Kotlin

اگر شرط برقرار نباشد، می‌توانیم از else استفاده کنیم تا بخش دیگری از کد اجرا شود.

🔹 سینتکس:

if (شرط) {
    // کدی که اجرا می‌شود اگر شرط درست باشد
} else {
    // کدی که اجرا می‌شود اگر شرط نادرست باشد
}

🛠 مثال:

val time = 20
if (time < 18) {
    println("روز بخیر!")
} else {
    println("شب بخیر!")
}

🔹 خروجی:

شب بخیر!

📌 توضیح: چون time = 20 و مقدار ۲۰ بزرگتر از ۱۸ است، شرط برقرار نیست، پس کدی که داخل else نوشته شده اجرا می‌شود.


3️⃣ دستور else if در Kotlin

اگر چندین شرط مختلف داشته باشیم، می‌توانیم از else if استفاده کنیم. در این حالت:

اگر شرط اول برقرار باشد، اجرا می‌شود.
اگر شرط اول برقرار نبود، شرط دوم بررسی می‌شود.
اگر هیچ‌کدام برقرار نبود، قسمت else اجرا می‌شود.

🔹 سینتکس:

if (شرط1) {
    // کدی که اجرا می‌شود اگر شرط1 درست باشد
} else if (شرط2) {
    // کدی که اجرا می‌شود اگر شرط1 نادرست و شرط2 درست باشد
} else {
    // کدی که اجرا می‌شود اگر هیچ‌کدام از شرط‌ها درست نباشد
}

🛠 مثال:

val time = 22
if (time < 10) {
    println("صبح بخیر!")
} else if (time < 20) {
    println("روز بخیر!")
} else {
    println("شب بخیر!")
}

🔹 خروجی:

شب بخیر!

📌 توضیح: چون time = 22 و هیچ‌یک از شرایط time < 10 یا time < 20 برقرار نیست، قسمت else اجرا شده است.

🔹 مثال دیگر:

val score = 85
if (score >= 90) {
    println("A")
} else if (score >= 80) {
    println("B")
} else if (score >= 70) {
    println("C")
} else {
    println("F")
}

🔹 خروجی:

B

4️⃣ استفاده از if..else به عنوان Expression (عبارت)

در Kotlin می‌توانیم if..else را به‌عنوان یک مقدار استفاده کنیم و خروجی را در یک متغیر ذخیره کنیم. در این حالت، مقدار آخرین دستور اجرا شده درون بلاک if یا else به متغیر اختصاص داده می‌شود.

🛠 مثال:

val time = 20
val greeting = if (time < 18) {
    "روز بخیر!"
} else {
    "شب بخیر!"
}
println(greeting)

🔹 خروجی:

شب بخیر!

📌 نکته: وقتی از if به عنوان expression استفاده می‌کنیم، باید حتماً else را هم بنویسیم.

🔹 نوشتن در یک خط (مشابه ? : در Java)

val time = 20
val greeting = if (time < 18) "روز بخیر!" else "شب بخیر!"
println(greeting)

🔹 خروجی:

شب بخیر!

📌 نکته: وقتی فقط یک خط کد داریم، می‌توانیم {} را حذف کنیم.


✨ جمع‌بندی و تمرین 💡

🔹 if وقتی استفاده می‌شود که فقط یک شرط داریم.
🔹 else برای اجرای کد در صورتی که if برقرار نباشد.
🔹 else if برای بررسی چندین شرط.
🔹 if..else را می‌توان به‌عنوان یک عبارت استفاده کرد و مقدار آن را در یک متغیر ذخیره کرد.

تمرین:
یک برنامه بنویس که بر اساس دمای هوا، پیامی نمایش دهد:

  • اگر دما کمتر از ۱۰ درجه بود، “خیلی سرد است!” را چاپ کند.
  • اگر بین ۱۰ تا ۲۰ بود، “هوا خنک است!” را چاپ کند.
  • اگر بیشتر از ۲۰ بود، “هوا گرم است!” را چاپ کند.