

با سلام به همه دوستان
می دونید که دیگه امتحانات میان ترم شروع و شده و امتحانات نهایی هم نزدیکه ، و من نمی تونم زیاد وبلاگ رو آپ کنم ، ولی چند تا برنامه نسبتا جالب نوشتم که در چند پست برای دانلود می ذارم.
اولین برنامه ، برنامه رسم منحنی است. اول از همه باید به دوستان بگم که این برنامه ، با برنامه قبلی خیلی فرق دارد و کارآمد تر هست. نوع دریافت ضابطه منحنی عوض شده ، و همینطور برنامه جدید ، علامت های + ، - ، * ، / ، ^ ، () ، [ ] ، و || ( به ترتیب : جمع ، تفریق ، ضرب ، تقسیم ، توان ، پرانتز ، کروشه و قدرمطلق ) رو پشتیبانی می کنه. این برنامه ، توانایی رسم مجموع دو تابع رو هم داره.
روش کار برنامه بدین ترتیب است که شما در صورت خواستن رسم یک نمودار ، وارد قسمت اول می شوید ، سپس ضابطه تابع مورد نظر رو با استفاده از علائم یاد شده و اعداد و کاراکتر x (بصورت کوچک) وارد می کنید ، سپس مینیمم و مازیمم دامنه رسم را مشخص می کنید. بعد با فشردن دکمه Enter ، برنامه نمودار منحنی وارد شده را رسم می کند(در صورت نیاز به رسم تابع در دامنه R ، به عنوان عدد مینیمم ، 131 را وارد کنید). به عنوان مثال ، دستورات زیر ، نمودار منحنی x|-2| را در اعداد حقیقی رسم می کند:
x|-2|
131
همچنین دستور زیر ، نمودار تابع ریشه دوم x را در بازه (0و16) رسم می کند:
(x^(1/2
0
16
نکته مهم: این برنامه در ورودی خود ، توانایی دریافت اعداد اعشاری را ندارد ، پس همانطور که در مثال بالا ملاحظه می کنید ، می بایست برای فهماندن عدد یک دوم به برنامه ، آنرا جدا و داخل پرانتز قرار دهیم.
نکته مهم: نکته مهم دیگر اینست که در ورودی این برنامه ، تقدم و اولویت تعریف نشده است و اعمال از سمت چپ به راست صورت می گیرد ، پس در صورتی که خواستید قسمتی با اولویت انجام شود ، آنرا داخل پرانتز قرار دهید. به عنوان مثال ، ورودی یک بعلاوه 2x ،نمودار منحنی 3x را نمایش میدهد و آنرا باید بصورت یک بعلاوه (2x) نوشت.
نکته مهم: یک نکته مهم دیگر این است که این برنامه ، در استفاده از علامت های پرانتز و کروشه و قدرمطلق ، اولین علامت را با آخرین در نظر گرفته و حاصل میان آندو را محاسبه می کند ، پس باید برای رم منحنی تابعی مانند |x+1|+|x-1| ، آنرا بصورت |x-1|) + |x+1|) نوشت.
راه دیگر برای نمایش نمودار تابع بالا ، استفاده از ویژگی دوم برنامه ، یعنی امکان نمایش نمودار مجموع دو تابع است. برای اجرای این کار ، به قسمت دوم برنامه وارد شده و ابتدا تعداد توابع موجود ، که در مثال بالا ۲ است ، را وارد کنید ، سپس ضابطه توابع را یکی یکی به برنامه بدهید. به کمک این ویژگی ، می توانید مجموع تعداد زیادی از توابع را رسم کنید ، مانند تابع زیر:
|x-1| + |x+1| + |x| + |x-2|
این برنامه توانایی رسم منحنی هایی از قبیل x^x و [x^[x را دارد.
دانلود برنامه رسم منحنی - Easy Diagram Drawer به همراه فایل اجرایی حجم: 52 کیلوبایت
همونطور که از اسم پست پیداست ، اینبار برنامه رسم نمودار چند جمله ای ها به زبان سی پلاس پلاس که -از نظر خودم- واقعا جاش بین برنامه های توی اینترنت خالی بود رو نوشتم. این برنامه ساختار خیلی ساده ای داره، و حتما به نظر دوستانی که برنامه کلاس چند جمله ای رو دانلود کردند ، این برنامه کمی آشناست. من این برنامه رو به کمک کلاس چند جمله ای نوشتم. طرز کار با این برنامه هم راحته. در صفحه ابتدای برنامه ، شما باید عدد 1 را وارد کنید تا به قسمت رسم نمودار بروید.در این قسمت باید شما فضایی که تابع می خواهد در آن رسم شود ( ۱=سطح گسترده ۲=متوسط ۳=کوچک ) و سپس کیفیت رسم رو انتخاب کنید.سپس تعداد جملات چند جمله ای رو وارد کرده و سپس به ترتیب پایه ها و توان های جمله های اول تا آخر را وارد کنید.
به عنوان مثال برای رسم منحنی y=x2-2x+1 ، پس از انتخاب فضا و کیفیت ، تعداد جملات که 3 می باشد را وارد کنید. سپس ابتدا ضریب x2 ، یعنی 1 ، و سپس توان آن یعنی 2 را وارد کنید. بعد بع ترتیب اعداد 2 ، 1 ، 1 و 0 را وارد کنید و کلید Enter را فشار دهید تا برنامه منحنی را برای شما رسم کند.
نمودار y=x رسم شده توسط این برنامه(با کمی تغییر و کاهش اندازه):

لازم می دونم که عرض کنم این برنامه توانایی رسم توابعی مانند x-1 رو هم داره ولی در مورد توابع رادیکالی ، مثل تابع x1/5 ، چون توان بصورت ۰.۲ وارد می شود ، تابع x0.2 رسم می شود و این تابع در x های منفی تعریف و رسم نمی شود. در ضمن این برنامه توانایی رسم توابع سینوسی ، کسینوسی ، تانژانت و ... رو نداره ، اما من در حال نشوتن یه برنامه جدید هستم که توانایی رسم توابع سینوس ، کسینوس ، تانژانت ، کتانژانت ، لگاریتم با مبنای ۱۰ و e (عدد نپر)( sin , cos , tan , cot , log10 , ln ) رو داشته باشه. به محض اینکه این برنامه آماده بشه در وبلاگ و برای دانلود می ذارم.
دانلود برنامه رسم نمودار توابع چند جمله ای
جایگشت های 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 برابر می شود!
یک نمونه از کاربرد های این برنامه را در پست هشتاد و یکم ملاحظه کنید.
با سلام به همگی دوستان
اول از همه شما معذرت می خوام که دیر به دیر آپ می کنم. حتما می دونید که به خاطر مشکلات درس و مدرسه و ... بخصوص برای سال سومی ها ، وقت زیادی برای کارهای جانبی باقی نمی مونه.
باید بگم که مشکل برنامه چاپ کردن کلمات کلیدی سورس یک برنامه ( مربوط به پست قبلی ) برطرف شد و شما می تونید برنامه کامل و سالم رو از همان لینک قبلی دریافت کنید.
اینبار یک برنامه ساده براتون نوشتم. اسم این برنامه ، برنامه حل کننده جدول سودوکو است. اگر با جدول سودوکو آشنایی ندارید ، ابتدا پاراگراف بعدی رو بخونید. همانطور که از اسم برنامه پیداست ، در این برنامه شما یک جدول سودوکو را وارد می کنید و برنامه آنرا برای شما حل می کند. شاید این مساله برای شما پیش بیاد که چطور می شه یه جدول رو وارد یه برنامه کرد!؟! باید بگم که در این برنامه شما جدول رو وارد نمی کنید، بلکه ابتدا یک جدول خالی در اختیار شما قرار می گیرد ، بعد شما می تونید خانه های خالی جدول رو با اعداد دلخواه پر کنید( البته نه هر عددی! باید قوانین سودوکو را رعایت کنید ) بعد ، برنامه جدول رو برای شما حل می کند و جدول حل شده و کامل رو چاپ می کند.
دانلود برنامه حل جدول سودوکو + فایل اجرایی حجم : ۳۰۰ کیلوبایت
افرادی که با سودوکو آشنایی ندارند ، این قسمت رو بخونند:
سودوکو ، مخفف یک عبارت ژاپنی طولانی یعنی "Suuji wa dokushin ni kagiru" ، است که معنی آن میشود : ارقام باید تنها باشند.
قانون بازی سودوکو ، بسیار ساده است. سودوکو متشکل از یک مربع است که به 9 مربع بزرگ تقسیم شده و هر مربع بزرگ خود ، به 9 مربع کوچکتر تقسیم شده. شما باید اعداد 1 تا 9 را طوری در سودوکو قرار دهید که در هر سطر ، ستون و مربع بزرگ ، اولاً هيچ عددي تكرار نشده باشد و ثانياً تمام اعداد 1 تا 9 در آن سطر يا ستون به كار رفته باشند. اگر تمام خانهها از ابتدا خالي بودند، كار سختی نبود ، ولی چنين نيست و در شروع بازی بعضی از خانهها به طور تصادفی با بعضی اعداد پر شدهاند.( منبع اطلاعات : سایت یک پزشک )
"دانشجوی کامپیوتر عزیز"، از اینکه دیر جوابتون رو می دم شرمنده ام.
برنامه برج هانوی رو که می خواستید می تونید از وبلاگی که در زیر می نویسم بگیرید و من رو هم بخاطر اینکه دیر جوابتون رو دادم ببخشید.
سمانه خانم، از شما هم خیلی تشکر می کنم که قدم رنجه کردید و باز هم به وبلاگ من سر زدید.
به تازه کارهای ++c هم بگم که به زودی یه سورپرایز براشون دارم.باز هم سر بزنید.مطمئنم پشیمون نمیشید.
و اما برنامه این دفعه:
این دفعه یه برنامه ماشین حساب خیلی باحال براتون آماده کردم.
البته این برنامه کامل نیست.بزودی کاملش می کنم و در وبلاگ میذارم.
برنامه یه ماشین حسابه که تا اعداد بسیار بزرگ ، یعنی تا 128 رقم توانایی محاسبه داره.
برای استفاده از اون کافیه که چیزی رو که می خواین رو در قسمت main بنویسید.
این برنامه قابلیت استفاده از عملگر های منطقی و محاسباتی * + - / % > < == >= <= != را داراست.
برنامه دوم:
این برنامه هم یک برنامه برای این است که تست کنید و ببینید که ورودی عددی صحیح است یا خیر.
مثلث خیام-پاسکال(نیوتن-پاسکال)
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
...
مثلث خیام-پاسکال مثلثی از اعداد است که هر عدد از جمع دو عدد بالای خودبدست می آید.
از این مثلث می توانید در محاسبه عبارتهای مختلفی استفاده کنید.
مثلا در محاسبه حاصل عباراتی چون (a+b)n. عدد های این مثلث ضرایب عبارات هستند.
1 (a+b)0
11 (a+b)1
121 (a+b)2
1331 (a+b)3
...
مثلا برای محاسبه(a+b)۶به ردیف هفتم مثلث مراجعه می کنیم که و از اعداد آن به عنوان ضرایب ساتفاده می کنیم.
(a+b)6=a6+6a5b+15a4b2+20a3b3+15a2b4+6ab5+b6
احتمال افتادن گلوله در محل مشخص شده را
محاسبه کنید.

ابتدا شماره های مثلث خیام-پاسکال را در خانه ها می نویسیم:

مشاهده می کنید که تعداد راه های ورود گلوله به محل مورد نظر برابر عدد آن محل در مثلث خیام پاسکال است.همچنین مجموع احتمالات برابر مجموع اعداد آخرین ستون است.یعنی در این سوال احتمال برابر 32/5 است.
توجه داشته باشید که مجموع اعداد در ردیف n ام برابر است با: 2n
در این برنامه شما تعداد ردیف مورد نظر را وارد می کنید و برنامه مثلث خیام پاسکال را تا آن ردیف محاسبه می کند.
این برنامه که این دفعه می ذارم ، برنامه تبدیل واحدهای طول است که ۵ واحد مختلف(متر ، اینچ ، یارد ، مایل و فوت) را در ۱۹ حالت مختلف می تواند به هم تبدیل کند.
دانلود کنید و لذت ببرید
حجم:۱۲۳ کیلوبایت
طرز کار برنامه بدین صورت است که شما یک عدد طبیعی را وارد می کنید و برنامه مقسوم علیه های آن را بر می گرداند
فعلا خداحافظ
این برنامه که این دفعه می ذارم ، برنامه تبدیل واحدهاست.البته تا الان فقط مخصوص دما رو آماده کردم که می تونید از اینجا دانلود کنید و لذت ببرید.
این برنامه امکان تبدیل واحدهای سانتیگراد ، فارنهایت و کلوین به یکدیگر را دارد.
فعلا خداحافظ
فعلا خداحافظ
این فایل که این دفعه مذارم برای محاسبه تصاعد هندسی و حسابی است.
اطلاعات فایل:
a0=اولین عدد تصاعدها
d = مقدار اضافه شدن عدد در تصاعد حسابی
q = مضرب عدد در تصاعد هندسی
n1=شماره خانه خواسته شده در تصاعد حسابی
n2=شماره خانه خواسته شده در تصاعد هندسی
a[n1]= n1 عدد داخل خانه
s[n1]= n1 حاصل جمع اعداد از خانه اول تا خانه
a[n2]= n2 عدد داخل خانه
s[n2]= n2 حاصل جمع اعداد از خانه اول تا خانه
این فایل رو می تونید از اینجا بگیرید
پیروز و سربلن باشید