برنامه Swift برای چاپ الگوی مثلث ستاره فوقانی آینه

ساخت وبلاگ

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

الگوی ستاره دنباله ای از "*" است که برای توسعه الگوهای یا اشکال مختلف مانند هرم ، مستطیل ، صلیب و غیره استفاده می شود. این الگوهای ستاره به طور کلی برای درک یا تمرین کنترل جریان برنامه استفاده می شود ، همچنین برای تفکر منطقی مفید هستند.

  • استفاده از تو در تو برای حلقه
  • با استفاده از عملکرد INIT ()
  • با استفاده از عملکرد قدم

در زیر نمایشی از همان -

فرض کنید ورودی داده شده ما است -

num = 5

خروجی مورد نظر خواهد بود -

روش 1 - استفاده از تو در تو برای حلقه

ما می توانیم یک الگوی مثلث ستاره فوقانی آینه یا هر الگوی دیگری را با استفاده از توخالی برای حلقه ها ایجاد کنیم. در اینجا هرکدام برای انجام وظایف مختلف از قبیل بیرونی برای حلقه برای ردیف های جدید استفاده می شود ، 1 توری برای حلقه برای فضاهای سفید استفاده می شود و 2 لانه برای حلقه برای "*" استفاده می شود.

الگوریتم

در زیر الگوریتم است -

مرحله 1 - متغیر را برای ذخیره ارتفاع مثلث اعلام کنید.

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

مرحله 3-یک حلقه را برای حلقه از 1 تا Num-I اجرا کنید. این حلقه برای چاپ فضای سفید استفاده می شود و در هر تکرار فضای سفید به یک کاهش می یابد.

مرحله 4 - یک حلقه دیگر را برای حلقه از 1 تا I اجرا کنید. این حلقه از الگوی مثلث ستاره فوقانی استفاده می شود.

برای آینه الگوی مثلث ستاره فوقانی -

مرحله 5-دوباره یک حلقه را برای حلقه از 1 تا شماره 1 اجرا کنید

مرحله 6 - یک حلقه را برای حلقه از 1 تا J اجرا کنید. این حلقه برای چاپ فضای سفید استفاده می شود و در هر تکرار فضای سفید به یک افزایش می یابد.

مرحله 7-یک حلقه دیگر را برای حلقه از 1 تا num-j اجرا کنید. این حلقه از الگوی مثلث Star Print Mirror استفاده می شود.

مثال

برنامه زیر نحوه چاپ الگوی مثلث ستاره فوقانی آینه را با استفاده از تو در تو برای حلقه نشان می دهد.

 
وارد كردنپایهوارد كردنگنگ// ارتفاع الگوی مثلث ستاره فوقانی آینه اجازه دهیدحدود= 5 // بیرونی برای حلقه برای رسیدگی به آن استفاده می شود // تعداد کل ردیف ها در ستاره فوقانی // الگوی مثلث برایمنin 1..حدود // تو در تو برای حلقه برای چاپ سفید استفاده می شود // فضاها برای_in 1...(حدود-i) چاپ(" ",نابود کننده: "") > // تو در تو برای حلقه برای چاپ استفاده می شود // الگوی مثلث ستاره فوقانی برای_in 1...i چاپ("*",نابود کننده: "") > // اضافه کردن خط جدید چاپ("") > // بیرونی برای حلقه برای رسیدگی به آن استفاده می شود // تعداد کل ردیف ها در ستاره فوقانی آینه // الگوی مثلث برایjin 1..حدود // تو در تو برای حلقه برای چاپ سفید استفاده می شود // فضاها برای_in 1...j چاپ(نابود کننده: " ") > // تو در تو برای حلقه برای چاپ استفاده می شود // الگوی مثلث ستاره فوقانی آینه برای_in 1...حدود-j چاپ("*",نابود کننده: "") > // اضافه کردن خط جدید چاپ("") >

خروجی

روش 2 - با استفاده از عملکرد INIT ()

Swift یک تابع داخلی به نام string. init () ارائه می دهد. با استفاده از این عملکرد ، می توانیم هر الگویی را ایجاد کنیم. تابع String. init () رشته ای ایجاد کنید که در آن شخصیت داده شده تعداد مشخص شده بار تکرار شود.

نحو

در زیر نحو است -

string. init (تکرار: شخصیت ، تعداد: int)

در اینجا ، تکرار نمایانگر شخصیتی است که این روش تکرار می کند و تعداد آن تعداد کل زمان را نشان می دهد که شخصیت داده شده در رشته حاصل تکرار می شود.

الگوریتم

در زیر الگوریتم است -

مرحله 1 - متغیر را برای ذخیره ارتفاع مثلث اعلام کنید.

مرحله 2 - A را برای حلقه از 1 تا NUM اجرا کنید. این حلقه الگوی مثلث ستاره فوقانی را با استفاده از عملکرد () () چاپ می کند -

 
برایایکسin 1...حدود چاپ(رشته.شروع کردن(تکرار شونده: " ",شمردن:حدود-x) +رشته.شروع کردن(تکرار شونده: "*",شمردن: x)) >

در اینجا ، string. init (تکرار: "" ، تعداد: num-x) فضاهای سفید را چاپ کنید در حالی که string. init (تکرار: "*" ، تعداد: x) الگوی مثلث ستاره فوقانی را چاپ کنید.

مرحله 3-دیگری را برای حلقه از 0 تا شماره 1 اجرا کنید. این حلقه الگوی مثلث ستاره فوقانی آینه را با استفاده از عملکرد INIT () چاپ می کند:

 
برایایکسin 0...حدود-1 چاپ(رشته.شروع کردن(تکرار شونده: " ",شمردن: x) +رشته.شروع کردن(تکرار شونده: "*",شمردن:حدود-x)) >

در اینجا ، string. init (تکرار: "" ، تعداد: x) فضاهای سفید را چاپ کنید در حالی که string. init (تکرار: "*" ، تعداد: num-x) الگوی مثلث ستاره فوقانی آینه چاپ

مثال

برنامه زیر نحوه چاپ الگوی مثلث ستاره فوقانی را با استفاده از عملکرد String. init () نشان می دهد.

 
وارد كردنپایهوارد كردنگنگ// ارتفاع الگوی مثلث ستاره فوقانی قارچحدود= 6 // ایجاد الگوی مثلث ستاره فوقانی // با استفاده از عملکرد String. init () برایایکسin 1...حدود چاپ(رشته.شروع کردن(تکرار شونده: " ",شمردن:حدود-x) +رشته.شروع کردن(تکرار شونده: "*",شمردن: x)) > // ایجاد الگوی مثلث ستاره فوقانی آینه // با استفاده از عملکرد String. init () برایایکسin 0...حدود-1 چاپ(رشته.شروع کردن(تکرار شونده: " ",شمردن: x) +رشته.شروع کردن(تکرار شونده: "*",شمردن:حدود-x)) >

خروجی

روش 3 - با استفاده از عملکرد قدم

Swift یک تابع داخلی به نام Stride () ارائه می دهد. از عملکرد Stride () برای حرکت از یک مقدار به مقدار دیگر با افزایش یا کاهش استفاده می شود. یا می توانیم بگوییم عملکرد Stride () دنباله ای را از مقدار شروع باز می گرداند اما شامل مقدار نهایی نیست و هر مقدار در دنباله داده شده مراحل با مقدار داده شده است.

نحو

در زیر نحو است -

Stride (از: startValue ، به: endValue ، توسط: count)

از - مقدار شروع استفاده شده برای دنباله داده شده را نشان می دهد.

به - مقدار نهایی را نشان دهید تا دنباله داده شده را محدود کنید

با - مبلغی را که باید با هر تکرار انجام شود ، نشان می دهد ، در اینجا مقدار مثبت نشان دهنده تکرار یا افزایش به سمت بالا است و مقدار منفی نشان دهنده تکرار یا کاهش نزولی است.

مثال

برنامه زیر نحوه چاپ الگوی مثلث ستاره فوقانی آینه با استفاده از عملکرد Stride () را نشان می دهد.

 
وارد كردنپایهوارد كردنگنگ// ارتفاع الگوی مثلث ستاره فوقانی اجازه دهیدحدود= 9 // برای الگوی مثلث ستاره فوقانی برایمنin 1...حدود // چاپ فضاهای سفید برای_in گام های بلند برداشتن(از جانب:حدود,به: i,توسط: -1) چاپ(نابود کننده: " ") > // چاپ الگوی مثلث ستاره فوقانی برای_in 1...i چاپ("*",نابود کننده: "") > // خط جدید بعد از هر ردیف چاپ(" ") > // برای آینه الگوی مثلث ستاره فوقانی برایjin 0...حدود // چاپ فضاهای سفید برای_in گام های بلند برداشتن(از جانب: 0,به: j,توسط: 1) چاپ(نابود کننده: " ") > // چاپ الگوی مثلث ستاره فوقانی برای_in گام های بلند برداشتن(از جانب: j,به:حدود,توسط: 1) چاپ("*",نابود کننده: "") > // خط جدید بعد از هر ردیف چاپ(" ") >
اخبار رمز ارزها...
ما را در سایت اخبار رمز ارزها دنبال می کنید

برچسب : نویسنده : منیژه سلیمی بازدید : <-PostHit-> تاريخ : چهارشنبه 25 مرداد 1402 ساعت: 13:03