// Add scroll event listener window.addEventListener('scroll', function() { // Check scroll position if (window.scrollY >= 40) { // Perform your desired action here (function (s, e, n, d, er) { s['Sender'] = er; s[er] = s[er] || function () { (s[er].q = s[er].q || []).push(arguments) }, s[er].l = 1 * new Date(); var a = e.createElement(n), m = e.getElementsByTagName(n)[0]; a.async = 1; a.src = d; m.parentNode.insertBefore(a, m) })(window, document, 'script', 'https://cdn.sender.net/accounts_resources/universal.js', 'sender'); sender('986212f6399684') // You can replace the console.log statement with your own code } });

ساخت الگوی اعداد در پایتون با حلقه های تو در تو

الگوی اعداد حلقه های تو در تو

همانطور که در مقاله ساخت الگوهای پایتون با استفاده از علائمی چون «*» به آن پرداختیم. یکی از مهم ترین تمارین پایتون در مبحث حلقه ها و بالاخص حلقه های تو در تو، نوشتن کد الگوهایی از اعداد یا اشکال با استفاده از این حلقه ها می باشد.
در این مقاله من برای آموزش هر چه بهتر این مبحث قصد دارم به الگوهای اعداد به طور کامل بپردازم و شما را  با اصول نوشتن کد این الگوها آشنا کنم تا دیگر هیچ مشکلی برای پیاده سایز آن نداشته باشید.

 

الگوی اعداد با پایتون

الگوی اعداد متشکل از اشکالی است که به طرق متفاوت با استفاده از اعداد پرشده اند برای مثال یک هرم افزایشی از اعداد ۱ تا ۱۰ یا یک مثلث که تمام خطوط ان با یک عدد خاص پر شده است. گرچه این الگوها در زبان برنامهد نویسی پیشرفته ممکن است کاربرد کمی داشته باشد اما تمارین بسیار خوبی برای یادگیری هرچه بهتر حلقه های تو در تو می باشد.

 

اصول ساخت حلقه ها در پایتون

در ابتدا شما باید با مفهوم الگو آشنا شوید. الگوهایی که ما در این بخش با استفاده از پایتون می خواهیم آن را بنویسم اشکال ساده ای هستند که به فراخور خواسته سوال در سطر و ستون های خود اعدادی را جای داده اند.
موضوع مهمی که در کدنویسی این الگوها باید به آن توجه داشته باشید این است که بحث اعداد و الگو کاملا از هم باید تفکیک گردد مگرنه شما در مسیر کدنویسی قطعا با مشکل رو برو خواهید شد و به جای خواسته سوال الگوی دیگری را پیاده سازی خواهید کرد.

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

 

ساخت مثلث اعداد شامل یک عدد خاص

برای نوشتن کد این الگوی ساده کافیست آن را به دو بخش کوچکتر تقسیم کنیم:

۱) الگوی مثلث 

۲) پرینت کردن اعداد در مثلث

برای ساخت مثلثی که از یک عدد خاص ساخته شده است می توانید از تمام الگوریتم هایی که در بخش قبلی آموخته اید استفاده کنید و در قسمت print، علامت یا عدد خاص خود را وارد کنید. 

به برنامه زیر دقت کنید:

ساخت مثلث اعداد شامل یک عدد خاص

همانطور که در الگوریتم بالا مشاهده میفرمایید، کد از دو حلقه خارجی و داخلی تشکیل شده است. حلقه بیرونی بیانگر تعداد سطر های ما می باشد. که از i=0 تا i=n را مشخص می کند. حلقه داخلی نیز ستون ها را به ترتیب از بالا به پایین پر می کند.

کد را با هم ترک می کنیم: ما یک عدد از کاربر دریافت می کنیم، حلقه خارجی به ازای i=0 وارد حلقه داخلی شده و یکبار عدد 1 را چاپ می کند و به اول خط بعدی می رود تا حلقه مجددا تکرار شود.

 

الگوی اعداد (شماره ۱)

برنامه ای بنویسید که در ازای در یافت ورودی در خط اول عدد یک، در خط دوم دو عدد دو و… در خط nم، n عدد n چاپ کند. 

nested loop with numbers

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

الگوی اعداد (شماره ۲)

برنامه ای بنویسید که در ازای دریافت عدد n در خط اول یک بار عدد n، در خط دوم 2 بار عدد n-1 ودر خط آخر n بار عدد 1 را چاپ کند.

هرم اعداد با پایتون

کاملا مانند مثل قبلی فقط در قسمت پرینت باید عدد n را در ابتدا چاپ کنیم و هر بار یک واحد از عدد قبلی کم کنیم و حلقه را مجدد تایپ کنیم.

الگوهای تکرار دو یا چند عدد یا المان خاص در سطرهای مختلف 

 

مثلث متناوب اعداد

برنامه ای بنویسید که در ازای دریافت عدد ورودی در خط اول 1 عدد 1 در خط دوم 2 عدد 2 در خط سوم سه عدد 1 و در خط nم n عدد 2 یا 1 چاپ کند (اگر عدد ورودی فرد بود عدد 1 و اگر زوج بود عدد 2 چاپ کند.)

nested loop python

ساختار و اصول این الگوریتم همانند کد قبلی است با این تفاوت که در صورت بخش پذیر بودن عدد در حلقه داخلی به عدد 2، عدد یک چاپ می شود و در غیر اینصورت در سطر زوج، عدد 1 چاپ می شود. تنها با یک if ساده!

Right triangle pattern 

الگوریتمی بنویسید که خروجی زیر را رسم کند.

مثلث اعداد با اعداد مختلف

 

تفسیر کد: این الگوریتم نیز از دو حلقه بیرونی و داخلی تشکیل شده است. پس از حلقه بیرونی با مقدار دهی به متغیر جدید p به عدد یک، حلقه داخلی را شروع می کنیم در حلقه داخلی با چاپ عدد یک در اولین ستون و افزایش کمی عدد به میزان یک واحد به خط بعدی میرویم و  به ازای هر i+1،i ستون الگو را ادامه می دهیم.

Left triangle pattern

left side triangle python

این الگو از دو حلقه داخلی تشکیل شده است. حلقه داخلی اول برای چاپ فضاهای خالی و الگوریتم دوم وظیفه چاپ اعداد را بر عهده دارد. هر خط یک واحد به عدد سمت چپ اضافه شده و یک واحد از تعداد فضاهای خالی کم می شود. به همین سادگی!

 

جمع بندی

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

آیا این مطلب برای شما مفید بود؟

امتیازشو ثبت کنید

میانگین / 5. تعداد رای

اولین نفر شما امتیاز دهید

نوشته شده توسط
علی سخا

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

2 دیدگاه

  1. ممنون خیلی خوب بود

    1. ممنون از لطف و توجه شما دوست عزیز

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

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