در Kotlin می‌توانیم با استفاده از حلقه for و عملگر .. یک بازه از مقادیر را ایجاد کنیم. این ویژگی به ما امکان می‌دهد که بین دو مقدار، یک محدوده (Range) تعریف کنیم و روی مقادیر آن حرکت کنیم.


۱. ایجاد محدوده با حلقه for 🔄

🔹 مثال: چاپ حروف الفبا

می‌توانیم با استفاده از .. یک بازه از حروف ایجاد کنیم:

for (nums in 5..15) {
  println(nums)
}

🔸 این کد، تمام حروف بین a تا x را چاپ می‌کند.

🔹 مثال: محدوده‌ای از اعداد

همین کار را می‌توان برای اعداد هم انجام داد:

for (nums in 5..15) {
  println(nums)
}

📌 نکته: در محدوده‌هایی که با .. تعریف می‌شوند، مقدار اولین و آخرین عدد در بازه لحاظ می‌شود. یعنی در مثال بالا، اعداد 5 تا 15 چاپ خواهند شد.


۲. بررسی وجود مقدار در یک محدوده ✅

در Kotlin می‌توانیم با استفاده از عملگر in بررسی کنیم که آیا مقدار موردنظر در یک محدوده وجود دارد یا نه.

🔹 مثال: بررسی مقدار در آرایه

val nums = arrayOf(2, 4, 6, 8)

if (2 in nums) {
  println("It exists!")
} else {
  println("It does not exist.")
}

🔸 این کد بررسی می‌کند که آیا عدد 2 در آرایه nums وجود دارد یا نه. اگر باشد، پیام "It exists!" نمایش داده می‌شود.

🔹 مثال: بررسی مقدار در لیست رشته‌ای

val cars = arrayOf("Volvo", "BMW", "Ford", "Mazda")

if ("Volvo" in cars) {
  println("It exists!")
} else {
  println("It does not exist.")
}

🔸 این کد بررسی می‌کند که آیا "Volvo" در لیست خودروها هست یا نه.


۳. استفاده از break و continue در محدوده‌ها ⏭

در حلقه‌هایی که روی محدوده‌ها کار می‌کنند، می‌توانیم از break برای توقف حلقه و از continue برای رد کردن یک مقدار خاص و ادامه اجرای حلقه استفاده کنیم.

🔹 مثال: توقف حلقه با break

در این مثال، وقتی مقدار nums برابر ۱۰ شد، حلقه متوقف می‌شود:

for (nums in 5..15) {
  if (nums == 10) {
    break
  }
  println(nums)
}

🛑 این کد اعداد 5 تا 9 را چاپ می‌کند، اما وقتی به 10 رسید، متوقف می‌شود.

🔹 مثال: رد کردن یک مقدار با continue

for (nums in 5..15) {
  if (nums == 10) {
    continue
  }
  println(nums)
}

✅ این کد تمام اعداد بین 5 تا 15 را چاپ می‌کند، به‌جز عدد ۱۰.


چالش برای شما 🎯

۱. یک حلقه for بنویس که اعداد ۱ تا ۲۰ را چاپ کند، اما وقتی به عدد ۱۵ رسید، متوقف شود.
۲. یک حلقه for بنویس که تمام اعداد بین ۱۰ تا ۳۰ را چاپ کند، اما عدد ۲۰ را رد کند.