دوستان عزیز برنامه‌نویس، تو آموزش‌های قبلی با انواع حلقه در برنامه‌نویسی C آشنا شدیم. حالا تو این قسمت، می‌خوایم با مثال‌های جذاب و کاربردی، یاد بگیریم چطور از دو دستور مهم به اسم‌های break و continue استفاده کنیم.

break در C: فرمان توقف فوری حلقه!

دستور break مثل یه دکمه توقف اضطراری برای حلقه‌هاست! وقتی برنامه داخل یه حلقه در حال اجراست و به دستور break می‌رسه، دیگه بقیه‌ی تکرارها رو بی‌خیال میشه و فوری از اون حلقه میاد بیرون. یعنی حلقه همون لحظه تموم میشه و برنامه میره سراغ کدهای بعد از حلقه.

ساختار break خیلی ساده‌ست:

break;

معمولاً دستور break رو با یه دستور شرطی مثل if…else داخل حلقه استفاده می‌کنیم تا بتونیم در شرایط خاص، حلقه رو متوقف کنیم.

دستور break چگونه کار می کند؟

Image

مثال ۱: دستور break

بیایید یه برنامه باحال بنویسیم که مجموع اعدادی رو که کاربر وارد می‌کنه، برامون حساب کنه. این برنامه می‌تونه حداکثر 10 عدد رو بگیره، اما یه شرط داره: اگه کاربر یه عدد منفی وارد کنه، حلقه همونجا تموم میشه و فقط مجموع اعداد مثبتی که تا اون لحظه وارد شده رو نشون میده. با هم کدش رو ببینیم:

// برنامه محاسبه مجموع اعداد ورودی (حداکثر ۱۰ عدد)
// اگه کاربر عدد منفی وارد کنه، حلقه متوقف میشه
#include <stdio.h>

int main() {
    int i;
    double number, sum = 0.0;

    for (i = 1; i <= 10; ++i) {
        printf("یه عدد %d وارد کن: ", i);
        scanf("%lf", &number);

        // اگه عدد وارد شده منفی باشه، دستور break اجرا میشه
        if (number < 0.0) {
            break; // اینجا حلقه رو کلاً خاتمه میده
        }
        sum += number; // sum = sum + number; (عدد رو به مجموع اضافه می‌کنه)
    }
    printf("مجموع اعداد = %.2lf\n", sum);
    return 0;
}

خروجی:

یه عدد 1 وارد کن: 2.4
یه عدد 2 وارد کن: 4.5
یه عدد 3 وارد کن: 3.4
یه عدد 4 وارد کن: -3
مجموع اعداد = 10.30

این برنامه حداکثر مجموع 10 عدد رو برامون حساب می‌کنه. اگه قبل از اینکه حلقه 10 بار تکرار بشه، کاربر یه عدد منفی وارد کنه (مثلاً -3 که توی این خروجی دیدیم)، دستور break بلافاصله اجرا میشه و حلقه for همونجا به پایان می‌رسه. در آخر هم، فقط مجموع اعداد مثبتی که تا اون لحظه وارد شده بودن، روی صفحه نمایش داده میشه.

جالبه بدونید که تو برنامه‌نویسی C، از break با دستور switch هم استفاده میشه که تو آموزش‌های مربوط به خودش بیشتر در موردش حرف می‌زنیم.

continue در C: پرش به مرحله بعدی!

دستور continue کارش اینه که یه تکرار خاص از حلقه رو نادیده می‌گیره و فوری میره سراغ تکرار بعدی. یعنی اگه برنامه به continue برسه، هرچی کدی بعد از اون تو همون تکرار باشه، دیگه اجرا نمیشه و حلقه خودش رو برای تکرار بعدی آماده می‌کنه. انگار که می‌گیم: "این مرحله رو ولش کن، بپر مرحله بعد!"

ساختار دستور continue هم مثل break خیلی ساده‌ست:

continue;

دستور continue هم تقریباً همیشه با یه دستور شرطی مثل if…else استفاده میشه تا بتونیم کنترل دقیق‌تری روی حلقه‌ها داشته باشیم.

مثال ۲: دستور continue

Image

حالا بیایید یه برنامه دیگه بنویسیم که مجموع اعداد ورودی رو حساب کنه، اما با یه تفاوت مهم: اعداد منفی رو اصلا توی مجموع حساب نکنه! این برنامه هم می‌تونه حداکثر 10 عدد رو از کاربر بگیره:

// برنامه محاسبه مجموع اعداد ورودی (حداکثر ۱۰ عدد)
// اگه کاربر عدد منفی وارد کنه، اون عدد توی مجموع محاسبه نمیشه
#include <stdio.h>

int main() {
    int i;
    double number, sum = 0.0;

    for (i = 1; i <= 10; ++i) {
        printf("یه عدد %d وارد کن: ", i);
        scanf("%lf", &number);

        if (number < 0.0) {
            continue; // اگه عدد منفی بود، این تکرار رو رد کن و برو سراغ بعدی
        }
        sum += number; // sum = sum + number; (عدد رو به مجموع اضافه می‌کنه)
    }
    printf("مجموع اعداد = %.2lf\n", sum);
    return 0;
}

خروجی:

یه عدد 1 وارد کن: 1.1
یه عدد 2 وارد کن: 2.2
یه عدد 3 وارد کن: 5.5
یه عدد 4 وارد کن: 4.4
یه عدد 5 وارد کن: -3.4
یه عدد 6 وارد کن: -45.5
یه عدد 7 وارد کن: 34.5
یه عدد 8 وارد کن: -4.2
یه عدد 9 وارد کن: -1000
یه عدد 10 وارد کن: 12
مجموع اعداد = 59.70

توی این برنامه، وقتی کاربر یه عدد مثبت وارد می‌کنه، اون عدد با دستور sum += number; به مجموع اضافه میشه. اما اگه کاربر یه عدد منفی وارد کنه (مثل -3.4 یا -45.5 توی مثال بالا)، دستور continue اجرا میشه و برنامه فوری میره سر وقت تکرار بعدی حلقه. به همین خاطر، اعداد منفی تو مقدار مجموع حساب نمیشن.

امیدواریم این آموزش براتون مفید بوده باشه! این مقاله توسط سایت علمی رایشمند برای شما آماده شده است.