سی پلاس پلاس, طراحی سایت و برنامه نویسی, مقالات

حلقه‌های while و do-while در C++

حلقه‌های while و do-while در C++ آموزش صفرتاصد C++ در تبریز

حلقه‌های while و do-while در C++ حلقه‌های while و do-while در C++ آموزش صفرتاصد C++ در تبریز آموزش صفرتاصد C++ در تبریز

آموزش حلقه‌های while و do while در C++

حلقه‌ها در برنامه‌نویسی ابزارهای بسیار کارآمدی هستند که به ما کمک می‌کنند بخش‌های خاصی از کد را چندین بار اجرا کنیم. در زبان برنامه‌نویسی C++ دو نوع حلقه بسیار رایج و پرکاربرد وجود دارد: حلقه‌های while و do while. در این مقاله، با ساختار و عملکرد این دو حلقه آشنا می‌شویم و چند تمرین کاربردی برای تقویت مهارت شما در این حوزه ارائه می‌دهیم.

حلقه while در C++

حلقه while یکی از انواع حلقه‌های کنترلی است که بر اساس یک شرط مشخص اجرا می‌شود. ساختار این حلقه به این صورت است که شرط حلقه در ابتدا بررسی می‌شود و در صورت صحت، کد داخل حلقه اجرا می‌شود. این فرآیند تا زمانی ادامه دارد که شرط حلقه true باشد.

while (شرط) {
    // کدهایی که باید تکرار شوند
}

مثال ساده: 

int count = 1;
while (count <= 5) {
    std::cout << "Count is: " << count << std::endl;
    count++;
}

این کد، مقدار count را از 1 تا 5 چاپ می‌کند.

 

حلقه do while در C++

حلقه do while مشابه حلقه while است، با این تفاوت که ابتدا کدهای داخل حلقه اجرا می‌شوند و سپس شرط بررسی می‌شود. بنابراین، این حلقه حداقل یک بار اجرا خواهد شد، حتی اگر شرط در ابتدای کار false باشد.

do {
    // کدهایی که باید تکرار شوند
} while (شرط);

مثال ساده: 

int count = 1;
do {
    std::cout << "Count is: " << count << std::endl;
    count++;
} while (count <= 5);

در این کد نیز مقدار count از 1 تا 5 چاپ می‌شود، اما حتی اگر count مقدار اولیه‌ای داشته باشد که شرط حلقه نادرست باشد، یک بار اجرای کد انجام خواهد شد.

 

چرا باید زبان C++ را در آموزشگاه راهکار یاد بگیرید؟

در آموزشگاه کامپیوتر راهکار تبریز، شما می‌توانید با روش‌های پیشرفته و اساتید مجرب، به مهارت لازم در برنامه‌نویسی C++ و بسیاری از زبان‌های برنامه‌نویسی دیگر دست پیدا کنید. همین حالا ثبت‌نام کنید و از فرصت‌های شغلی و تحصیلی بیشتری بهره‌مند شوید! 04135574231 , 09146585123

تمرین 1: چاپ اعداد 1 تا 10 با استفاده از حلقه while

شرح: این برنامه اعداد 1 تا 10 را چاپ می‌کند. حلقه while تا زمانی که مقدار count کمتر یا مساوی 10 باشد، اجرا می‌شود.

#include <iostream>
int main() {
    int count = 1;
    while (count <= 10) {
        std::cout << count << " ";
        count++;
    }
    return 0;
}

تمرین 2: چاپ اعداد فرد از 1 تا 19 با استفاده از حلقه do while

شرح: این برنامه اعداد فرد بین 1 تا 19 را چاپ می‌کند. ابتدا مقدار number را روی 1 قرار می‌دهیم و در هر دور حلقه مقدار آن را به 2 افزایش می‌دهیم تا به عدد بعدی فرد برسیم.

#include <iostream>
int main() {
    int number = 1;
    do {
        std::cout << number << " ";
        number += 2;
    } while (number <= 19);
    return 0;
}

تمرین 3: محاسبه مجموع اعداد 1 تا 50 با استفاده از حلقه while

شرح: این برنامه مجموع اعداد 1 تا 50 را محاسبه می‌کند. مقدار sum به‌عنوان مجموع و number به‌عنوان شمارنده در نظر گرفته شده‌اند.

#include <iostream>
int main() {
    int sum = 0, number = 1;
    while (number <= 50) {
        sum += number;
        number++;
    }
    std::cout << "Sum = " << sum;
    return 0;
}

تمرین 4: چاپ ارقام یک عدد از راست به چپ با استفاده از do while

شرح: این برنامه با گرفتن یک عدد مثبت از کاربر، ارقام آن را از راست به چپ چاپ می‌کند.

#include <iostream>
int main() {
    int number;
    std::cout << "Enter a positive number: ";
    std::cin >> number;

    do {
        int digit = number % 10;
        std::cout << digit << " ";
        number /= 10;
    } while (number > 0);

    return 0;
}

تمرین 5: دریافت و جمع کردن اعداد تا وارد کردن یک عدد منفی با استفاده از while

شرح: این برنامه اعداد را از کاربر می‌گیرد و تا زمانی که عدد منفی وارد نشده، مجموع آن‌ها را محاسبه می‌کند.

#include <iostream>
int main() {
    int number, sum = 0;
    std::cout << "Enter numbers (negative number to stop): ";
    std::cin >> number;

    while (number >= 0) {
        sum += number;
        std::cin >> number;
    }

    std::cout << "Sum = " << sum;
    return 0;
}

تمرین 6: محاسبه تعداد ارقام یک عدد با استفاده از حلقه do while

شرح: این برنامه تعداد ارقام یک عدد را محاسبه می‌کند. مقدار count تعداد ارقام را نگه می‌دارد.

#include <iostream>
int main() {
    int number, count = 0;
    std::cout << "Enter a number: ";
    std::cin >> number;

    do {
        count++;
        number /= 10;
    } while (number != 0);

    std::cout << "Number of digits: " << count;
    return 0;
}

تمرین 7: محاسبه ب.م.م دو عدد با استفاده از حلقه while

شرح: این برنامه بزرگترین مقسوم علیه مشترک دو عدد را محاسبه می‌کند. این برنامه از الگوریتم اقلیدسی استفاده می‌کند که در آن باقی‌مانده تقسیم دو عدد محاسبه شده و در حلقه به کار گرفته می‌شود.

#include <iostream>
int main() {
    int a, b;
    std::cout << "Enter two numbers: ";
    std::cin >> a >> b;

    while (a != b) {
        if (a > b)
            a -= b;
        else
            b -= a;
    }

    std::cout << "GCD = " << a;
    return 0;
}

تمرین 8: محاسبه فاکتوریل یک عدد با استفاده از حلقه do while

شرح: این برنامه فاکتوریل یک عدد مثبت را محاسبه می‌کند. factorial مقدار نهایی فاکتوریل را ذخیره می‌کند.

#include <iostream>
int main() {
    int number, factorial = 1;
    std::cout << "Enter a positive number: ";
    std::cin >> number;

    int i = 1;
    do {
        factorial *= i;
        i++;
    } while (i <= number);

    std::cout << "Factorial = " << factorial;
    return 0;
}

تمرین 9: نمایش جدول ضرب یک عدد با استفاده از حلقه while

شرح: این برنامه جدول ضرب یک عدد که توسط کاربر وارد می‌شود را چاپ می‌کند. multiplier به‌عنوان شمارنده‌ای برای ضرب کردن عدد وارد شده به‌کار می‌رود.

#include <iostream>
int main() {
    int number;
    std::cout << "Enter a number for multiplication table: ";
    std::cin >> number;

    int multiplier = 1;
    while (multiplier <= 10) {
        std::cout << number << " * " << multiplier << " = " << number * multiplier << std::endl;
        multiplier++;
    }

    return 0;
}

تمرین 10: محاسبه مجموع اعداد فرد تا حد نهایی مشخص شده با حلقه do while

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

#include <iostream>
int main() {
    int limit, sum = 0;
    std::cout << "Enter the limit: ";
    std::cin >> limit;

    int i = 1;
    do {
        sum += i;
        i += 2;
    } while (i <= limit);

    std::cout << "Sum of odd numbers up to " << limit << " = " << sum;
    return 0;
}

این تمرین‌ها به شما کمک می‌کنند تا درک عمیق‌تری از حلقه‌های while و do while در C++ به دست آورید.

 

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *