حل مسئله با while در پایتون – به زبان ساده

۶
۱۴۰۴/۱۱/۱۱
۶ دقیقه
PDF
آموزش متنی جامع
امکان دانلود نسخه PDF

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

آنچه در این مطلب می‌آموزید:
  • در این مطلب با حلقه while در پایتون به شکل کامل و مفهومی آشنا می‌شوید.
  • سینتکس حلقه while را بخش به بخش بررسی کرده و تمام قسمت‌های آن را درک می‌کنید.
  • روش صحیح تعریف شرط برای حلقه while و عبارت‌های نوشته شده در این بخش را می‌آموزید.
  • با کمک مثال ساده‌ای روش حل مسئله با حلقه while در پایتون را یاد می‌گیرید.
  • با الگوریتم پیدا کردن تعداد ارقام اعداد و فلوچارت آن آشنا می‌شوید.
  • روش بهینه‌سازی راه حل پیدا کردن تعداد رقم‌ هر عدد را به کمک حلقه while یاد می‌گیرید.
حل مسئله با while در پایتون – به زبان سادهحل مسئله با while در پایتون – به زبان ساده
997696

سینتکس while در پایتون

برای حل مسئله با while در پایتون لازم است که ابتدا با سینتکس درست برای نوشتن کدهای این مفهوم برنامه نویسی آشنا باشیم.

در کادر پایین، سینتکس این حلقه نوشته شده است.

این سینتکس از سه بخش اصلی تشکیل شده است. تمام این موارد را یک به یک در فهرست پایین توضیح داده‌ایم.

  • عبارت while الزامی و ثابت است. این عبارت جزو کلمه‌های رزرو شده پایتون برای نوشتن کد است.
  • عبارت condition  نشان‌دهنده شرطی است که باید برای حلقه while مشخص کنیم. انواع حلقه در پایتون از روش‌های مختلفی مانند شمارنده یا عبارت شرطی استفاده می‌کنند. حلقه while با عبارت‌های شرطی کار می‌کند. در ادامه این مطلب را به شکل کامل توضیح داده‌ایم.
  • عبارت statements  هم نشان‌دهنده بدنه دستورات عبارت while هستند. در این بخش هم وجود کد الزامی است.
فلوچارت برای نمایش سینتکس حلقه while در پایتون
نمایش سینتکس حلقه while در پایتون

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

برای نصب اپلیکیشن رایگان مجله فرادرس، کلیک کنید.

نکته: حتما به استفاده صحیح از دندانه‌گذاری در زمان نوشتن دستورات پایتون توجه کنید.

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

1
2
3
4
5

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

بعد از اجرای کدهای بالا خروجی برابر با عدد 5  در کنسول پایتون نمایش داده می‌شود.

یادگیری پایتون با کمک پروژه‌های واقعی

به دلیل نزدیکی سینتکس پایتون به زبان انگلیسی، یادگیری آن نسبت به دیگر زبان‌ها ساده‌تر است. بهترین روش برای تسلط بر مفاهیم اولیه و پیشرفته پایتون، استفاده از آن‌ها در زمان کار با پروژه‌های واقعی است. زیرا در پروژه‌های مختلف ممکن است چندین بار و به صورت تکراری از مفاهیم اصلی پایتون استفاده کنیم. در ضمن در این پروژه‌ها مفاهیم متنوع به صورت ترکیبی و در کنار هم به کار برده می‌شوند. اجرای پروژه‌های ساده با کمک حلقه ‎for حتی بهتر از بررسی چند نمونه سوال حلقه ‎for‎ در پایتون به یادگیری این مفهوم کمک می‌کند.

مجموعه آموزش پروژه محور برنامه نویسی پایتون (Python)
با کلیک بر روی تصویر بالا می‌توانید به صفحه اصلی مجموعه فیلم‌های آموزش پروژه محور برنامه نویسی پایتون هدایت شوید.

در فرادرس، مجموعه آموزشی با نام «مجموعه آموزش پروژه محور برنامه نویسی پایتون» تولید شده است. در این مجموعه، روش پیاده‌سازی پروژه‌های واقعی و متنوع آموزش داده می‌شود. فیلم‌های پروژه‌محور فرادرس از موضوعات ساده تا پیشرفته را پوشش می‌دهند. در هر یک از این فیلم‌ها، تکنولوژی‌ها و کتابخانه‌های گوناگونی استفاده شده‌اند. برخی از پروژه‌ها با کمک برنامه نویسی شیءگرا پیاده‌سازی شده‌ و برخی دیگر با API-های پایتون کار می‌کنند. با مرور این آموزش‌ها می‌توانید مهارت‌های خود را به میزان چشم‌گیری افزایش دهید.

در پایین، چند فیلم‌ آموزشی پروژه‌محور زبان پایتون را معرفی کرده‌ایم.

درک روش حل مسئله با while در پایتون

به منظور درک بهتر این حلقه باید روش کار آن را قدم‌به‌قدم بررسی کنیم. ابتدا به کد زیر توجه کنید. هدف از این کد، شمردن تعداد ارقام عدد ۱۰۰ است. در واقع در مسئله پایین، الگوریتمی را برای محاسبه تعداد ارقام پیاده‌سازی کرده‌ایم. این مفهوم در برنامه نویسی بسیار مهم است. برای کسب مهارت در حل این دست از مسائل و موارد پیشرفته شبیه‌ به آن، پیشنهاد می‌کنیم که فیلم آموزش نکات برنامه نویسی پایتون و حل مسائل الگوریتمی را در فرادرس مشاهده کنید. به منظور کمک به مخاطبان مجله، لینک دسترسی به این فیلم را در پایین نیز قرار داده‌ایم.

توجه کنید که می‌توان عدد مربوط به متغیر num  را با کمک تابع input در پایتون از کاربر نیز دریافت کرد. اما در این مثال، هدف بررسی حلقه while است.

در تصویر پایین، فلوچارت روش کار این برنامه را رسم کرده‌ایم.

فلوچارت برنامه شمارش ارقام اعداد در پایتون - درک روش حل مسئله با while در پایتون
فلوچارت برنامه شمارش رقم‌های عدد در پایتون

برای درک روش حل مسئله با این کد ابتدا به عبارت شرطی حلقه while توجه کنید.

عبارت شرطی حلقه whlie

عبارت num!=0  به معنای آن است که آیا num  نامساوی 0  است یا نه. اگر این عبارت صحیح باشد، یعنی معادل با «True» ارزیابی شود، مفسر پایتون به سراغ اجرای دستورات داخل بدنه حلقه می‌رود. در غیر این صورت از حلقه عبور کرده و دستور بعدی اجرا می‌شود. باید همیشه ساختار کدهای بدنه حلقه به شکلی نوشته شود که در نهایت امکان «False» شدن عبارت شرطی وجود داشته باشد. در غیر این صورت با حلقه بی‌نهایت روبه‌رو می‌شویم.

البته در بعضی برنامه‌ها بدنه اصلی برنامه باید به طور دائم اجرا شود. در چنین شرایطی می‌توان از حلقه بی‌نهایت استفاده کرد. در غیر این صورت باید به False شدن این شرط توجه بکنیم. در برنامه بالا دستور num//=10  در هر گردش حلقه، مقدار متغیر num  را کاهش می‌دهد. این دستور معادل با دستور num = num //10  است. در نتیجه به هر حال مقدار متغیر num  برابر با صفر خواهد شد.

تصویر کارتونی از معلمی در کلاس درس و در حال تدریس حل مسئله با while در پایتون

دستورات بدنه حلقه while

بدنه این برنامه از دو دستور num//=10  و counter += 1  ساخته شده است.

  • دستور num//=10  مسئول کم کردن رقم داده شده به برنامه در هر بار گردش حلقه است. این دستور، عدد مورد نظر را تقسیم بر ۱۰ می‌کند و قسمت صحیح تقسیم را در متغیر num  قرار می‌دهد. برای درک بهتر روش کار انواع تقسیم می‌توانید مطلب تقسیم در پایتون را در مجله فرادرس مطالعه بکنید.
  • دستور counter += 1  هم هر بار شمارنده ارقام (تعداد گردش حلقه) را یک واحد افزایش می‌دهد.

بهینه‌سازی

بعد از به پایان رسیدن کار حلقه، عدد 3  در خروجی به عنوان تعداد ارقام num  چاپ می‌شود. نکته اینجاست که این حلقه ۳ بار اجرا شده است. با داشتن درک درستی از حل مسئله با while در پایتون می‌توانیم اجرای حلقه را هم بهینه کنیم. در این برنامه بخصوص اگر از همان اول کار، عبارت شرطی را num>=10  و مقدار متغیر counter  را برابر با 1  قرار بدهیم با دو بار گردش حلقه به پاسخ می‌رسیم.

نکته اینجاست که هر عدد، حداقل از یک رقم تشکیل شده است. در نتیجه فقط کافیست که ارقام بیش از ۱ یعنی اعداد بزرگترمساوی ۱۰ را بررسی کنیم.

چطور با کمک فرادرس مفاهیم پایتون را بیاموزیم؟

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

در پایین، چند مورد از فیلم‌های آموزشی پایتون را معرفی کرده‌ایم. این فیلم‌ها برای آموزش سطوح پیشرفته‌ پایتون مفید هستند.

در صورت تمایل با کلیک بر روی تصویر زیر به صفحه اصلی این مجموعه آموزشی هدایت شده و از فیلم‌های پروژه‌محور بیشتری دیدن کنید.

مجموعه فیلم‌های آموزش برنامه نویسی پایتون Python – مقدماتی تا پیشرفته فرادرس
با کلیک بر روی تصویر بالا می‌توانید به صفحه اصلی مجموعه فیلم‌های آموزش برنامه نویسی پایتون Python از مقدماتی تا پیشرفته هدایت شوید.

جمع‌بندی

در این مطلب آموزشی از مجله فرادرس، حلقه while در پایتون را به طور کامل بررسی کرده‌ایم. سینتکس اصلی while شامل «شرط» (Condition) و «بدنه دستورات» (Statements) است. در بخش شرطی باید از عملگر‌های مقایسه‌ای در پایتون یا عبارت‌هایی با ارزش True یا False استفاده کنیم.

در این مطلب سعی کردیم که با مثالی درباره شمردن تعداد ارقام عدد، حلقه while را بررسی کنیم. شرط حلقه باید به شکلی طراحی شود که در نهایت مقدار False بگیرد. در این صورت می‌توان از ظهور حلقه بی‌نهایت جلوگیری کرد. این حلقه انعطاف‌پذیر برای کار بر روی مسائل مبتنی بر شرط، گزینه بسیار خوبی است.

بر اساس رای ۰ نفر
آیا این مطلب برای شما مفید بود؟
اگر پرسشی درباره این مطلب دارید، آن را با ما مطرح کنید.
منابع:
مجله فرادرس
PDF
مطالب مرتبط
نظر شما چیست؟

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