الگوریتم اول

لطفا صبر کنید...

دستورات شرطی در ++C

دستورات شرطی برای اجرای کد بر اساس یک شرط خاص استفاده می‌شوند. در ++C چندین ساختار برای پیاده‌سازی شرط‌ها وجود دارد که شامل if، if-else، if-else if-else و switch است.

۱. دستور if (شرط ساده)

اگر شرط داخل if درست (true) باشد، کد داخل {} اجرا می‌شود، در غیر این صورت از آن عبور می‌کند.

int x = 10;
if (x > 5) {
    cout << "x بزرگ‌تر از 5 است." << endl;
}

۲. دستور if-else (شرط دوگانه)

اگر شرط درست باشد، بلوک if اجرا می‌شود، در غیر این صورت بلوک else اجرا می‌شود.

int x = 3;
if (x > 5) {
    cout << "x بزرگ‌تر از 5 است." << endl;
} else {
    cout << "x کوچک‌تر یا مساوی 5 است." << endl;
}

۳. دستور if-else if-else (چندین شرط)

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

int x = 7;
if (x > 10) {
    cout << "x بزرگ‌تر از 10 است." << endl;
} else if (x > 5) {
    cout << "x بین 6 تا 10 است." << endl;
} else {
    cout << "x کوچک‌تر یا مساوی 5 است." << endl;
}

۴. دستور switch-case (چندین شرط بر اساس مقدار مشخص)

switch زمانی استفاده می‌شود که مقدار یک متغیر را با چند مقدار خاص مقایسه کنیم.

int day = 3;
switch (day) {
    case 1:
        cout << "شنبه" << endl;
        break;
    case 2:
        cout << "یکشنبه" << endl;
        break;
    case 3:
        cout << "دوشنبه" << endl;
        break;
    default:
        cout << "روز نامعتبر" << endl;
}

نکات مهم در switch:

  • هر case باید با break تمام شود تا از اجرای ناخواسته‌ی موارد بعدی جلوگیری شود.
  • default زمانی اجرا می‌شود که هیچ‌کدام از caseها برقرار نباشد.

۵. عملگر شرطی سه‌گانه ?:

این عملگر جایگزینی فشرده برای if-else است.

int x = 10, y = 20;
int max = (x > y) ? x : y;
cout << "بیشترین مقدار: " << max << endl;

این کد معادل زیر می باشد:

int max;
if (x > y)
    max = x;
else
    max = y;