در زبانهای برنامه نویسی مختلف، دستورات شرطی و حلقهها از مهمترین دستورات هستند. در تمام پروژههای کوچک و بزرگ، از این دستورات استفاده میشود و بخش جداناشدنی و اصلی در زبانهای برنامه نویسی مختلف هستند. حلقهها برای تکرار یک بلوک خاص از کدها مورداستفاده قرار میگیرند. اجرای این کد تا زمانی که شروط تعیین شده برقرار شود، ادامه خواهد داشت. در ادامه، به تفاوت while و do while و نحوه ایجاد آنها در برخی از زبانهای برنامه نویسی محبوب میپردازیم.
این حلقه، برای اجرای یک تکه کد تا زمانی که شرط برقرار باشد، مورداستفاده قرار میگیرد. از این کد، در مواردی که تعداد تکرارها از قبل مشخص نیست، استفاده میشود. در صورتی که شرط حلقه برقرار نباشد، کد اجرا نخواهد شد.
در ادامه، ساختار حلقه while در زبانهای برنامه نویسی C++، جاوا اسکریپت و Python را بررسی میکنیم.
در زبان برنامه نویسی C++، حلقهها کاربرد بسیار گستردهای دارند و به عنوان یکی از دستورات پرتکرار شناخته میشود. حلقه while در C++ به صورت زیر نویشته میشود.
While (Condition) { Codes// }
1. عبارت Condition، شرایط و شرطهای اجرای حلقه است.
2. شرط باید درون پرانتز قرار بگیرد.
3. دستورات نیز باید در آکولاد {} قرار بگیرند.
4. در انتهای هر دستور، باید سِمی کالُن (;) قرار بگیرد تا خط بعدی اجرا شود.
#include <iostream> using namespace std; int main() { int i = 1; while (i <= 5) { cout << i << endl; i++; } return 0; }
1. در ابتدا یک متغیر عددی (int) به نام i و مقدار 1 ایجاد کردیم.
2. در ادامه، حلقه while را نوشته و شرط را (i <= 5) ایجاد کردیم.
3. پس از آن، در صورتی که شرط برقرار باشد، مقدار i با استفاده از دستور Cout نمایش داده شده و 1 واحد به آن اضافه میشود.
4. این کد تا زمانی که شرط i <= 5 برقرار باشد، اجرا خواهد شد.
خروجی مثال بالا:
1 2 3 4 5
پایتون نسبت به C++ دارای سینتکس سادهتر و قابل فهم برای عموم افراد است. برای نوشتن یک حلقه در پایتون، از ساختار زیر استفاده میشود.
While condition: Codes
1. در ابتدا عبارت while نوشته شده و پس از آن، شرط نوشته میشود.
2. برای ایجاد حلقه در پایتون، نیازی به باز کردن پرانتز یا آکولاد نیست.
3. کدهای بدنه while در خط بعدی نوشته میشوند.
i = 1 while i <= 5: print(i) i += 1
1. در بالا، یک متغیر به نام i ایجاد و مقدار 1 را به آن دادیم.
2. در ادامه، حلقه را ایجاد کردیم. شرط اجرای حلقه نیز کوچکتر یا برابر بودن مقدار i با عدد 5 است که به صورت I <= 5 نوشته شده است.
3. در صورتی که شرط برقرار باشد، مقدار i نمایش داده و 1 واحد به آن اضافه میشود.
خروجی:
1 2 3 4 5
نوشتن این حلقه تکرار در JS، شباهت زیادی به C++ دارد. ساختار اصلی حلقه While در جاوااسکریپت بدین صورت است:
while (condition) { // Body of Codes }
ایجاد لوپ While در این زبان، تا حد زیادی شبیه به C++ است.
1. عبارت while برای ایجاد حلقه نوشته شده.
2. درون پرانتز، شرط اجرای حلقه لحاظ شده و بعد از آن، آکولاد باز شده است.
3. بین آکولاد، دستورات و کدهای ضمن اجرای حلقه نوشته شده است.
let i = 1; while (i <= 5){ console.log(i); i += 1; }
در اینجا، یک متغیر به نام i و مقدار 1 با استفاده از دستور let ایجاد شده است.
1. سپس حلقه ایجاد شده و درون پرانتز، شرط اجرای حلقه while در Java Script را نوشتیم.
2. درون آکولاد، با استفاده از عبارت console.log، متغیر را نمایش دادیم.
3. در انتها نیز مقدار i را یک واحد افزایش دادیم.
خروجی:
1 2 3 4 5
به صورت کلی، حلقه do…while نوع دیگری از حلقه while است؛ با این تفاوت که قبل از بررسی شرط، بدنه حلقه یک بار اجرا میشود. بنابراین در صورت صحیح بودن شرط و اجرا شدن آن، باید بیشتر از 1 خروجی را دریافت کنیم. در اکثر پروژهها، از حلقه While و for استفاده میشود و نیازی به استفاده از do while نیست. اما یادگیری این لوپ هم خالی از لطف نخواهد بود.
نکته: برخی از زبانهای برنامه نویسی نظیر پایتون، فاقد حلقه do while هستند. در صورت نیاز، میتوانید این لوپ را با استفاده از while، دستورات شرطی و.. شبیه سازی کنید.
طریقه نوشتن Do While در زبان سی پلاس پلاس، به صورت زیر است:
do { // Body of Codes } While (Condition);
1. در ابتدا، عبارت do را نوشته و آکولاد را باز میکنیم.
2. بین آکولاد، کدهای بدنه را مینویسیم.
3. بعد از بستن آکولاد، عبارت While را نوشته و شرط را درون پرانتز قرار میدهیم.
#include<iostream> using namespace std; int main() { int i=1; do { std::cout << i << std::endl; i++; } while (i <= 5); return 0; }
1. در ابتدا یک متغیر عددی با مقدار 1 و نام i ساخته شد.
2. در ادامه، عبارت do نوشته و کدهای بدنه درون آکولاد قرار گرفتند.
3. سپس دستور while و شرط حلقه اضافه شد.
4. در زمان اجرا، ابتدا یک بار کدهای درون آکولاد اجرا میشوند. سپس شرط بررسی میشود.
5. در صورتی که شرط به True ارزیابی شود، مجددا کدهای بدنه اجرا میشوند.
6. این کار تا زمانی که شرط مساوی با False باشد، ادامه خواهد یافت.
خروجی:
1 2 3 4 5
ساختار حلقه do while در جاوااسکریپت، کاملا مشابه C++ است و از این نظر، تفاوتی میان آنها دیده نمیشود.
Do { // Body of Codes } While (condition);
let i=1; do { console.log(i); i += 1; } while (i <= 5);
1. تمامی توضیحات، مشابه نحوه ایجاد این حلقه در زبان برنامه نویسی سی پلاس پلاس است.
2. کلمه let برای ایجاد متغیر مورداستفاده قرار میگیرد.
3. عبارت console.log برای چاپ کردن خروجی و نمایش در کنسول کاربرد دارد. غیر از این موارد، تمامی کدهای نوشته شده در بالا، با زبان C++ یکسان هستند.
خروجی:
1 2 3 4 5
مقاله پیشنهادی: