تبليغاتX
برنامه نویسی C++ Programming
برنامه نویسی زبان ++c

جایگشت های n تایی n شیء

با سلامی دوباره خدمت همه دوستان

این بار برنامه چاپ جایگشت های n شی رو بصورت یک تابع بازگشتی براتون نوشتم. همونطور که خیلی از شما دوستان می دونید ، جایگشت های n تایی n شی یعنی حالات مختلف قرار گیری n شی در کنار هم در یک صف . به عنوان مثال جایگشت های سه تایی اشیاء a و b و c را به شکل زیر می توان نشان داد:

abc , acb , bac , bca , cab , cba

من برنامه ای نوشتم که عدد  n رو از ورودی خوانده و تمامی حالات قرار گیری اعداد 1 تا n رو چاپ کنه. برای نوشتن این برنامه بصورت یک تابع بازگشتی ، باید دقت کرد حالات قرار گیری n شی برابر مجموع حالات قرار گیری یک شی خاص در کنار حالات قرار گیری n-1 شی دیگر است. به عنوان مثال می خواهیم حالات قرار گیری اعداد 1 و 2 و 3 که به ترتیب در یک آرایه قرار دارند را چاپ کنیم ، برای اینکار ، ابتدا 1 را که اولین عنصر آرایه است ، عدد خاص در نظر گرفته و تمامی حالات قرارگیری 2 و 3 در کنار هم را می نویسیم ، سپس 1 را در کنار آنها قرار می دهیم:

23 => 123

32 => 132

سپس جای عدد 2 را با عدد یک عوض کرده و اینبار عدد 2 را که اولین عنصر آرایه است ، به عنوان عدد خاص در نظر می گیریم. حال تمامی حالات قرار گیری اعداد 1 و 3 که سایر عناصر آرایه هستند را نوشته و عدد 2 را در کنار آنها قرار می دهیم:

13 => 213

31 => 231

سپس آرایه را به شکل اول در می آوریم ( یعنی عدد 1 را در اولین عنصر قرار می دهیم ) و سپس عدد 3 را به اول آرایه منتقل کرده و عدد خاص در نظر می گیریم و پس از نوشتن تمامی حالات قرار گیری اعداد 1 و 2 در کنار هم ، عدد 3 را در ابتدای آنها می نویسیم:

12 => 312

21 => 321

برنامه ای که برای چاپ کردن حالات مختلف قرار گیری اعداد 1 تا n نوشتم ، از الگوریتم بالا پیروی می کند. این برنامه از 3 تابع Jaygasht ، Set2 و SetAndPrint تشکیل شده است. لازم به ذکر است این برنامه در یک سیستم با امکاناتی در حد متوسط ، تمامی حالات کنار هم قرار گرفتن اعداد 1 تا 8 که برابر 40320 حالت مختلف است را در زمانی بین 35 تا 40 ثانیه و حالات مختلف قرارگیری اعداد 1 تا 9 در کنار هم ( 362880 حالت ) را در حدود 380 ثانبه چاپ می کند ، ولی اگر این کار بدون استفاده از توابع Set2 و SetAndPrint انجام شود ، این زمان بیش از 600 برابر می شود!

 

 دانلود برنامه نمایش جایگشت های n شی به همراه فایل اجرایی

 

یک نمونه از کاربرد های این برنامه را در پست هشتاد و یکم ملاحظه کنید.

+ نوشته شده در  پنجشنبه بیست و هفتم دی 1386ساعت 17:6  توسط Silver_Senator  | 

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

 

این دفعه بازی فکر بکر رو نوشتم.

 

به دوستانی که با این بازی آشنایی ندارند ، باید بگم این بازی بدین شکل انجام می شود که برنامه ، 5 رنگ از میان 8 رنگ قرمز (R) ، نارنجی (O) ، زرد (Y) ، سبز (G) ، آبی (B) ، بنفش (P) ، سفید (W) و سبز مایل به آبی (A) در نظر می گیرد ، سپس کاربر باید این رنگها را به ترتیب حدث بزند. برنامه برای هر مهره ای که رنگ آن درست باشد ولی در جای صحیح قرار نگرفته باشد یک مهره سفید در کحل امتیازات می گذارد و برای هر مهره ای که رنگ و محل آن درست باشد ، یک امتیاز به بازیکن می دهد ؛ سپس کاربر 5 رنگ دیگر حدث می زند و این کار ادامه پیدا می کند تا بازیکن 5 امتیاز بگیرد ، یعنی هر 5 رنگ را درست و سر جای خود حدث بزند.

 

دانلود برنامه بازی فکر بکر به همراه فایل اجرایی

 

+ نوشته شده در  پنجشنبه بیست و هفتم دی 1386ساعت 16:22  توسط Silver_Senator  | 

پاسخ سوال یازدهم:

مسِئله ی K : برج هانوی

مساله «برج هانوی» از سه میله با نام های A و B و C تشکیل می شود که n دیسک با قطر های مختلف ( و ارتفاع های یکسان ) در میله ها قرار دارند. در ابتدای کار تمام دیسک ها به صورت مرتب شده بر اساس قطرشان ( طوری که کم قطرترین دیسک بالاترین و بزرگ ترین دیسک پایین ترین باشد ) روی میله A قرار دارند.

 

برج هانوی

 

یک حرکت «مجاز» در این مساله برداشتن بالاترین دیسک از یک میله( میله مبدا )و قرار دادن آن در میله ای دیگر( میله مقصد ) است بطوری که هیچ گاه یک دیسک روی دیسکی با قطر کوچکتر قرار نگیرد. با این وصف ، یک حرکت را می توان با دو حرف بزرگ انگلیسی نمایش داد که حرف اول میله مبدا و حرف دوم میله مقصد است. برای مثال حرکت AB یعنی برداشتن بالاترین دیسک میله A و قرار دادن آن روی تمام دیسک های میله B ( در صورت وجود ). دقت کنید که حرکت AB تنها زمانی مجاز است که میله A حداقل یک دیسک داشته باشد و بعلاوه یا میله B خالی باشد یا قطر بالاترین دیسک میله A ( که جابجا می شود ) از قطر بالاترین دیسک میله B کمتر باشد.

با شروع از حالتی که تمام دیسک ها بصورت مرتب در میله ی A قرار دارند ( نظیر شکل بالا )، بازی هنگامی تمام می شود که تمام دیسک ها به همین ترتیب در میله B قرار بگیرند ( و میله های A و C خالی باشند ) یا تمام دیسک ها به همین ترتیب در میله ی C قرار بگیرند ( و میله های A و B خالی باشند ).

هوشنگ برای حل کردن این معما ، الگوریتم زیر را در پیش می گیرد. او ابتدا یک جایگشت از تمام 6 حرکت موجود در نظر می گیرد ( مثلا جایگشت CB ، AC ، BA ، BC ، AB ، CA از چپ به راست ) ، سپس در هر مرحله سمت چپ ترین حرکت مجاز از حرکات این جایگشت را انجام می دهد. علاوه بر این ، او هبچ وقت دوست ندارد یک دیسک را در دو حرکت متوالی جابجا کند و از این رو اگر یک حرکت ( بعد از حرکت اول ) از مقصد حرکت قبلی آغاز شود ، او این حرکت را غیر مجاز تلقی می کند. برای مثال اگر جایگشت نمونه ی گفته شده را روی میله های شکل در نظر بگیریم ، اولین حرکت هوشنگ AB خواهد بود   ( چرا که CA بدلیل خالی بودن میله C غیر مجاز است ) و حرکت دوم او AC خواهد بود: CA غیر مجاز است چون C هنوز خالی است؛ AB غیر مجاز است چون دیسک با قطر 2 را نمی توان روی دیسک با قطر 1 ( که در حرکت اول به B منتقل شده ) قرار داد؛ BC نیز غیر مجاز است چرا که دیسک رویی B در حرکت قبلی تکان خورده و هوشنگ دوست ندارد یک دیسک را در 2 حرکت متوالی جابجا کند و از این رو سمت چپ ترین حرکت مجاز ، AC است!

می توان اثبات کرد که الگوریتم هوشنگ همیشه پایان می یابد! آنچه از شما خواسته می شود این است که با دانستن تعداد دیسک ها و استراتژی هوشنگ( جایگشتی از 6 حرکت ممکن )، مشخص کنید که هوشنگ چند جابجایی انجام می دهد تا بازی تمام شود.

ورودی

در سطر اول ورودی ، تعداد تست داده می شود. سپس هر تست در 2 خط داده می ش.د که خط اول تنها یک عدد n را داشته و در خط دوم یک جایگشت از حرکات ممکن بصورت 6 رشته 2 حرفی ( معتبر و دو به دو متمایز) داده می شود.

خروجی

به ازای هر تست ورودی ، در یک سطر تعداد حرکاتی که هوشنگ می کند را بنویسید.

محدودیت ها

می دانیم که N<=۱ و N<=۳۰  و جواب خروجی هیچ تستی از 10 به توان 18 بیشتر نبست.

دانلود برنامه سوال

دانلود فایل PDF مساله

+ نوشته شده در  پنجشنبه بیست و هفتم دی 1386ساعت 16:20  توسط Silver_Senator  | 

پاسخ سوال هفتم:

مسئله ی G : پله بازی

یک صفحه m در n در نظر بگیرید که خانه های آن مانند صفحه ی بازی مار و پله با اعداد 1 تا mn شماره گذاری شده اند. فردی در ابتدا در خانه ی 1 ایستاده است و می خواهد با تعدادی حرکت به خانه ی mn برود. k نردبان نیز وجود دارند که هر نردبان میان دو خانه ی متفاوت جدول قرار دارد.. در هر حرکت فرد می تواند یکی از این دو کار را بکند:

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

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

تعداد راه های متفاوت برای پیمودن جدول چقدر است؟

ورودی

ورودی شامل چندین نمونه از مسئله است.

هر نمونه شامل تعدادی خط است. در اولین خط ، 3 عدد طبیعی m ،  n و k به ترتیب آمده اند.

( m<=10   &   n<=10   &   k<=20  ). در k خط بعدی در هر خط یک جفت عدد طبیعی آمده است که دو سر یک نردبان را نشان می دهند، هر دو از mn کمترند و اختلافشان حداقل 2 است. پس از آخرین نمونه ورودی خطی شامل "0 0 0" آمده است. دو سر هیچ نردبانی از جدول یکی نیستند، به عبارت دیگر تمام اعدادی که بعد از خط اول می آیند ، متمایزند. بدین ترتیب نردبان تکراری هم در ورودی وجود ندارد.

خروجی

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

 

(برای مشاهده خروجی و ورودی نمونه ، فایل PDF مساله را دانلود کنید)

 

دانلود برنامه سوال

دانلود فایل PDF مساله

+ نوشته شده در  پنجشنبه بیست و هفتم دی 1386ساعت 16:15  توسط Silver_Senator  | 

پاسخ سوال ششم:

مسئله ی F : جاده ها

در هنگام بازجویی اداره پلیس از یک فرد مظنون ، او ادعا کرده است که در یک روز مشخص ، چهار جاده به طول های a ، b ، c و d را که به ترتیب اضلاع یک چهار ضلعی راست را تشکیل می دهند ، پیموده است. در این مسئله به یک چهار ضلعی راست گفته می شود اگر دو خاصیت زیر را داشته باشد:

1-     دو ضلع موازی داشته باشد(که به آنها قاعده می گویمم و به دو ضلع دیگر ساق می گوییم)

2-      دو زاویه روبرو نداشته باشد که هر دو حاده (کمت از 90 درجه ) باشند.

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

اکنون اداره پلیس می خواهد بداند که آیا شکلی با این مشخصات وجود دارد یا نه. مظنون ترتیب پیمایش جاده ها را نیز مشخص کرده است.

در هر خط ورودی ، به ترتیب چهار عدد طبیعی a ، b ، c و d آمده اند. همه ی اعداد ورودی از 1000 کمترند. به ازای هر خط از ورودی یک خط در خروجی چاپ کنید. اگر چهارضلعی راستی با این مشخصات وجود دارد که d و b قاعده های آن و a و c ساق های آن باشد ، در خروجی عبارت "YES" و در غیر اینصورت "NO" بنویسید.

آخرین خط ورودی شامل جهار عدد صفر است.تعداد خطوط ورودی از 10000 کمتر است.

تذکر: لزومی ندارد که d از b کوچکتر باشد.

 

(برای مشاهده خروجی و ورودی نمونه ، فایل PDF مساله را دانلود کنید)

دانلود برنامه سوال

دانلود فایل PDF مساله

+ نوشته شده در  پنجشنبه بیست و هفتم دی 1386ساعت 16:11  توسط Silver_Senator  | 

پاسخ سوال چهارم:

مسئله ی D : نمودار

نمودار هیستو گرام تعدادی داده ی عددی ، نموداری است که شامل ستون مستطیلی است. هر  ستون متناظر با یک بازه از اعداد ، مثلا [1,3) است. ارتفاع هر ستون متناسب با تعداد داده های درون بازه متناظر آن ستون است. در این مسئله شما باید برنامه ار بنویسید که نمودار هیستوگرام تعدادی داده را رسم کند. داده ها در   بازه ی [A,B] قرار دارند و نمودار در خروجی باید شامل دقیقا D ستون باشد. البته D در ورودی داده شده است و می دانیم B-A بر D بخشپذیر است. ارتفاع هر ستون با تعداد داده هایی است که در بازه ی متناظر آن ستون قرار دارند. اگر داده ای در مرز دو بازه قرار داشت ، فقط در درون سمت چپی محسوب می شود. برای روشن شدن بیشتر مساله ، بی ورودی و خروجی نمونه توجه کنید. اعداد تکراری ممکن است به عنوان داده بیایند. خود A و B هم ممکن است به عنوان داده بیایند.

ورودی

ورودی شامل تعدادی تست است و پس از آخرین تست خطی با چهار صفر آمده است. هر تست به این شکل است:

در خط اول ورودی ، به ترتیب N ، D ، A و B آمده اند. در N سطر بعدی اعدادی که باید نمودار آنها کشیده شود آمده اند. پس از هر تست(حتی تست آخر) یک خط خالی بگذارید. تمام داده ها در بازه ی [A,B] قرار دارند.

خروجی

قبل از چاپ نمودار در هر تست ، ابتدا خطی شامل "Case #x:"  در خروجی بنویسید که در این عبارت به جای x ، شماره ی تست را بنویسید(x لزوما یک رقمی نیست!!). سپس خروجی را مانند آنچه در خروجی نمونه آمده است چاپ کنید. توجه کنید که باید پس از هر تست (حتی تست آخر) یک خط خالی چاپ کنید.

محدودیت ها

N < =50    &    N >= 2

A < B    &    B < 10000      &     A>-10000

 

ورودی نمونه

خروجی نمونه

10 4 0 20

1

4

4

3

5

12

19

19

20

10

 

7 10 0 10

0

1

5

9

9

9

10

 

0 0 0 0

Case #1:

 

 |#   

 |#    #

 |#  ##

 |####

+ - - - -

 

Case #2:

 

 |                     #

 |                     #

 |                     #

 |# #        #     #

+ - - - - - - - - - -

 

(برای مشاهده بهتر خروجی و ورودی نمونه ، فایل PDF مساله را دانلود کنید)

 

دانلود پاسخ سوال

 

دانلود فایل PDF مساله

 

+ نوشته شده در  پنجشنبه بیست و هفتم دی 1386ساعت 16:9  توسط Silver_Senator  | 

پاسخ سوال دوم:

مسئله ی B : سرباز ها

در یک پادگان احتمالا نظامی ، n سرباز در یک سطر ایستاده اند. با صدای سوت ؛ هر یک از این سرباز ها 90 درجه می چرخد؛ بعضی به راست و بعضی به چپ. ازاینجا بازی شروع می شود. در هر مر حله ، اگر دو سرباز رو بروی هم ایستاده باشند ، هر دو عقب گرد می کنند. توجه کنید که در هر مرحله ممکن است چند سرباز با هم عقب گرد کنند ولی یک سرباز حداکثر یک بار عقب گرد می کند.

می توان نشان داد که پس از تعدادی مرحله بازی تمام می شود؛ یعنی دیگر هیچ دو سربازی رو به روی هم نیستد. برنامه ای بنویسید که تعداد مراحل بازی را مشخص کند.

ورودی

در هر سطر ، رشته ای از کاراکتر های "<" و ">" آمده است. هر یک از این کاراکترها مشخص کننده یک سرباز است. کاراکتر > به معنی گردش به راست و کاراکتر < به معنی گردش به چپ(در هر مرحله ، دو سربازی که به صورت >< هستند ، بصورت <> می شوند). فاصله ای میان کاراکتر ها نیست.

خروجی

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

محدودیت ها

طول رشته ورودی (یعنی همان n) حداکثر 10000 است.

 

(برای مشاهده خروجی و ورودی نمونه ، فایل PDF مساله را دانلود کنید)

 

دانلود برنامه سوال

 

دانلود فایل PDF مساله

 

+ نوشته شده در  پنجشنبه بیست و هفتم دی 1386ساعت 16:3  توسط Silver_Senator  | 

پاسخ سوال اول سوالات مسابقه ACM دانش آموزی

مسئله ی A : معدل گیری

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

ورودی

شامل اطلاعات تعدادی کارنامه است. هر کارنامه شامل 3 خط است ، در خط اول یک عدد طبیعی n ، تعداد دروس ، آمده است. می دانیم n بین 2 و 25 است(خود این مقادیر هم می تواند بشود). در خظ دوم n عدد صحیح آمده است که ضرایب دروس 1 تا n هستند. در خط سوم نیز n عدد صحیح بین 0 تا 20 آمده است که نمرات دروس 1 تا n هستند.

پس از آخرین کارنامه ، یک خط اضافه آمده است که فقط شامل عدد 0 است.

خروجی

به ازای هر کارنامه در ورودی ، یک خط در خروجی چاپ کنید که معدل کارنامه را گرد شده به دقیقا 2 رقم اعشار نمایش می دهد. توجه کنید که مثلا اگر جواب دقیقا 19 باشد ، شما باید در خروجی "19.00" چاپ کنید.

 

(برای مشاهده خروجی و ورودی نمونه ، فایل PDF مساله را دانلود کنید)

دانلود برنامه سوال

دانلود فایل PDF مساله

+ نوشته شده در  پنجشنبه بیست و هفتم دی 1386ساعت 16:1  توسط Silver_Senator  | 

با سلام به همگی دوستان

تصمیم گرفتم تغییرات کلی در وبلاگ صورت بدم. برای راحتی بیشتر در یافتن سورس های برنامه ها ، عنوان های مطالب رو بازسازی کردم. 

پاسخ سوالات مسابقات ACM دانش آموزی رو هم در 6 پست بعدی با کمی تاخیر براتون می ذارم.

پاسخ نظرات شما:

آقا / خانم منتظر آقا ، لینک کامپایلر Dev Cpp در وبلاگ هست. برای مراجعه به پست مربوطه روی لینک زیر کلیک کنید:

http://sstarsprograms.blogfa.com/post-7.aspx

آقا مسعود ، برنامه ی مدیریت کتابخانه با کاربرهایی با Username و Password مختلف رو می تونید از لینک زیر دانلود کنید:

 دانلود برنامه دفترچه تلفن با یوزر و پسورد های مختلف

شادی خانم ، bool نوعی داده است که می تونه مقدار true یا false  رو نگهداری کنه.

آقا / خانم تازه کار که به نظر نمیاد زیاد هم تازه کار باشید ، من هم شما رو لینک کردم.

آقا / خانم سرعشق ، برنامه های شطرنج و دوز رو می تونید از پست زیر دریافت کنید:

 http://sstarsprograms.blogfa.com/post-49.aspx

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

خیلی ممنون آقا محمد.

ریحانه خانم ، برنامه هایی رو که برای دوستتان می خواستید ، از لینک زیر دانلود کنید:

 برنامه تقسیم

برنامه مجموع

آقا شهاب ، برنامه تغییر دادن جای دو کلمه در متن رو از لینک زیر دانلود کنید:

 دانلود برنامه تغییر دادن یک کلمه در متن با یک کلمه دیگر به همراه فایل اجرایی

آقا / خانم اونی که ناامیده ، برنامه ای که شما خواستید ، در وبلاگ هست.
اگر داناود نمیشه ، ایمیلتون رو بدید تا من بهتون میل کنم.

آقا رضا ، میشه در مورد این بازی بیشتر توضیح بدید ، من تا حالا همچین بازی رو ندیدم.

آقا یونس ، خیلی ممنون.

+ نوشته شده در  پنجشنبه بیست و هفتم دی 1386ساعت 15:54  توسط Silver_Senator  | 

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

اینبار کلاس تایمر رو براتون نوشتم. یک کلاس برای کامپایلر هایی که دارای کلاس graphics.h هستند و یک کلاس هم برای کامپایلر هایی که فاقد کلاس graphics.h هستند.( برای دوستانی که این مورد رو درباره کامپایلرشون نمی دونن باید بگم که اگر از کامپایلر هایی مثل Dev C++ ، CFree یا Microsoft ++Visual C استفاده می کنید ، کامپایلر شما فاقد کلاس graphics.h است و اگر از کامپایلر هایی مثل ++turbo c چه تحت داس و چه تحت ویندوز و ++bolrand c استفاده می کنید ، کامپایلر شما دارای این کلاس است. ) البته ، در این کلاس از گرافیک BGI استفاده نشده است و لازم به استفاده کردن از نسخه تحت داس نیست.

این کلاس شامل توابع زیر است:

1- تابع Start : برای شروع کردن تایمر     - ورودی ندارد 

2- تابع Stop : برای متوقف کردن تایمر    - ورودی ندارد 

3- تابع Print : برای نمایش مقدار زمان گذشته از زمان آغاز کار تایمر تا توقف آن ( باید بعد از دستور توقف انجام شود )    - ورودی ندارد 

4- تابع PrintNow : برای نمایش زمان گذشته شده از زمان آغاز کار تایمر در حین کار تایمر  - ورودی ندارد 

5- تابع ShowTimer  (*: برای کامپایلر های دارای کلاس graphics.h) : نمایش تایمر

       - ورودی ها: مکان نمایش ( x و y ) ، زمان مورد نظر برای نمایش

دانلود کلاس تایمر برای کامپایلر های فاقد کلاس graphics.h ، به همراه فایل اجرایی

دانلود کلاس تایمر برای کامپایلر های دارای کلاس graphics.h ، به همراه فایل main برنامه

+ نوشته شده در  چهارشنبه دوازدهم دی 1386ساعت 7:41  توسط Silver_Senator  | 

با سلام به همگی دوستان

معذرت می خوام اگر دیر به دیر آپ می کنم و جواب نظرات شما رو نمی دم.

ایندفعه برنامه نمایش زیر مجموعه های یک مجموعه رو نوشتم ، و فرقش با همه برنامه های دیگه فقط در استفاده از تابع بازگشتی اون هست. ، در این برنامه ، شما ابتدا یک عدد که آنرا n در نظر می گیریم ، وارد کرده و سپس عدد k را که کوچکتر از آن است وارد می کنید. بعد n کاراکتر یا عدد وارد می کنید. این کاراکتر ها در حقیقت اعضای مجموعه شما هستند. سپس برنامه با کمک یک تابع بازگشتی ، زیر مجموعه های k عضوی مجموعه وارد شده چاپ می شود. این برنامه به گونه ای نوشته شده که می تونه تمامی زیر مجموعه های 6 عضوی یک مجموعه 12 عضوی ، یعنی 924 زیر مجموعه رو چاپ کنه، البته بخاطر استفاده از تابع بازگشتی و شیوه چاپ کردن زیر مجموعه ها ، وقت زیادی برای اینکار لازمه ، یعنی حدود 5 دقیقه و 15 ثانیه. لینک دانلود این برنامه رو براتون می ذارم. در برنامه اولی ، اعضای مجموعه فقط می توانند عدد صحیح باشند و در مجموعه دوم ، اعضای مجموعه کاراکتر هستند.

دانلود برنامه چاپ زیر مجموعه های یک مجموعه(به کمک تابع بازگشتی) -اعداد صحیح- به همراه فایل اجرایی

دانلود برنامه چاپ زیر مجموعه های یک مجموعه(به کمک تابع بازگشتی) -کاراکتر ها- به همراه فایل اجرایی

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

+ نوشته شده در  چهارشنبه دوازدهم دی 1386ساعت 7:28  توسط Silver_Senator  | 

این پست هم به مناسبت آغاز فصل زمستان:

 

سلامت را نمي خواهند پاسخ گفت
سرها در گريبان است
كسي سر بر نيارد كرد پاسخ گفتن و ديدار ياران را
نگه جز پيش پا را ديد ، نتواند
كه ره تاريك و لغزان است
وگر دست محبت سوي كسي يازي
به اكراه آورد دست از بغل بيرون
كه سرما سخت سوزان است
نفس ، كز گرمگاه سينه مي آيد برون ، ابري شود تاريك
چو ديوار ايستد در پيش چشمانت
نفس كاين است ، پس ديگر چه داري چشم
ز چشم دوستان دور يا نزديك ؟
مسيحاي جوانمرد من ! اي ترساي پير پيرهن چركين
هوا بس ناجوانمردانه سرد است ... آي
دمت گرم و سرت خوش باد
سلامم را تو پاسخ گوي ، در بگشاي
منم من ، ميهمان هر شبت ، لولي وش مغموم
منم من ، سنگ تيپاخورده ي رنجور
منم ، دشنام پس آفرينش ، نغمه ي ناجور
نه از رومم ، نه از زنگم ، همان بيرنگ بيرنگم
بيا بگشاي در ، بگشاي ، دلتنگم
حريفا ! ميزبانا ! ميهمان سال و ماهت پشت در چون موج مي لرزد
تگرگي نيست ، مرگي نيست
صدايي گر شنيدي ، صحبت سرما و دندان است
من امشب آمدستم وام بگزارم
حسابت را كنار جام بگذارم
چه مي گويي كه بيگه شد ، سحر شد ، بامداد آمد ؟
فريبت مي دهد ، بر آسمان اين سرخي بعد از سحرگه نيست
حريفا ! گوش سرما برده است اين ، يادگار سيلي سرد زمستان است
و قنديل سپهر تنگ ميدان ، مرده يا زنده
به تابوت ستبر ظلمت نه توي مرگ اندود ، پنهان است
حريفا ! رو چراغ باده را بفروز ، شب با روز يكسان است
سلامت را نمي خواهند پاسخ گفت
هوا دلگير ، درها بسته ، سرها در گريبان ، دستها پنهان
نفسها ابر ، دلها خسته و غمگين
درختان اسكلتهاي بلور آجين
زمين دلمرده ، سقف آسمان كوتاه
غبار آلوده مهر و ماه
زمستان است
                                                         مهدی اخوان ثالث

 

+ نوشته شده در  سه شنبه چهارم دی 1386ساعت 20:54  توسط Silver_Senator  | 

 

►دایرکتوری گوگل◄

c++ programming - download c++ sources - c++ free sources - cpp sources for download - c++ compiler download برنامه سی پلاس پلاس - سورس سی پلاس پلاس - آموزش سی پلاس پلاس