🤖 روبومیکرآموزش آردوینوشبیه‌ساز آنلاین
روبومیکرآموزش آردوینوحلقه‌ها (for و while)

حلقه‌ها (for و while)

گاهی می‌خواهیم یک کار را چند بار تکرار کنیم. نوشتن دستی هر تکرار خسته‌کننده و طولانی است. اینجا «حلقه» به کمک ما می‌آید و کار تکراری را با چند خط کوتاه انجام می‌دهد.

حلقهٔ for

حلقهٔ for وقتی خوب است که تعداد تکرار را از قبل می‌دانیم. ساختار آن سه بخش دارد: مقدار اولیه، شرط ادامه، و گام (افزایش):

for (int i = 0; i < 5; i++) {
  Serial.println(i);   // چاپ 0 تا 4
}

در این مثال i از صفر شروع می‌شود، تا وقتی i < 5 باشد ادامه می‌یابد و هر بار با i++ یکی زیاد می‌شود.

مثال: چراغ گردان (نایت رایدر)

فرض کن پنج LED روی پایه‌های ۲ تا ۶ وصل‌اند. با یک حلقهٔ for آن‌ها را پشت سر هم روشن و خاموش می‌کنیم تا یک افکت حرکتی زیبا بسازیم.

void setup() {
  for (int pin = 2; pin <= 6; pin++) {
    pinMode(pin, OUTPUT);
  }
}

void loop() {
  for (int pin = 2; pin <= 6; pin++) {
    digitalWrite(pin, HIGH);
    delay(100);
    digitalWrite(pin, LOW);
  }
}

زیبایی کار اینجاست که حتی پایه‌بندی هم با یک حلقه انجام شد؛ به جای پنج بار نوشتن pinMode، فقط یک حلقهٔ کوتاه داریم.

حلقهٔ while

حلقهٔ while تا زمانی که یک شرط درست باشد تکرار می‌شود؛ مناسب وقتی که نمی‌دانیم چند بار باید تکرار شود. مثال: شمارش معکوس از ۵ تا ۱:

int count = 5;
while (count > 0) {
  Serial.println(count);
  count--;        // یکی کم کن
  delay(500);
}

هر بار مقدار count یکی کم می‌شود و وقتی به صفر برسد، شرط count > 0 نادرست شده و حلقه تمام می‌شود.

تفاوت اصلی: وقتی تعداد تکرار مشخص است از for استفاده کن؛ وقتی تا برقراری یک شرط باید ادامه دهی از while.
حتماً درون حلقهٔ while چیزی شرط را تغییر بده (مثل count--). اگر شرط هیچ‌وقت نادرست نشود، حلقه بی‌نهایت اجرا می‌شود و برنامه گیر می‌کند.

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

🔌 همین حالا توی شبیه‌ساز آنلاین روبومیکر امتحان کن — رایگان و بدون نصب