شانس!

می 28, 2008 by hajian

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

 

ادامه مطلب »

هر چه در ذهنتان می گذرد، روی صفحه بیاورید!

آوریل 21, 2008 by hajian
 چند وقتی است با ویرایشگری رایگان و کم حجمی آشنا شده ام که تقریباً با آن چه در ذهنم تصور می کردم تطابق دارد و از آن برای نوشتن متن ها، ایده ها و در برخی مواقع از آن به عنوان جایگزینی برای Notepad++ برای نوشتن برنامه های کوچک استفاده می کنم. این ویرایشگر که Q10 نام دارد دارای ایده ی بسیار جالبی است. Q10 یک صفحه ی Full Screen مشکی (که رنگ آن قابل تغییر است) است بدون هیچ منو و نوار ابزار مزاحمی. شما آزادانه متن خود را روی صفحه مانیتور خود تایپ کرده و با استفاده از کلیدهای میانبر به ویرایش آن می پردازید و در آخر با فشار همزمان Ctrl و S آن را ذخیره می کنید. این ویرایشگر ساده  تمامی امکانات یک ویرایشگر ساده همچون Notepad ویندوز را به اضافه ی قابلیت های مفیدی همچون غلط یاب (Spell Checker) و هشدار دهنده (Alarm) همراه خود دارد.
من باهاش کار کردم خیلی لذت بخش و راحته . چون همزمان با تایپ کردن هر کلمه شما صدایی میشنوید دیگه نگران تایپ نشدن کلمه ای نیستید و به همین دلیل نیاز نیست هی سرتون رو بالا بیارید و به صفحه نگاه کنید ببینید کلمه کامل تایپ شده یا نه
.
ادامه مطلب …..

مساله هشت وزیر

ژانویه 27, 2008 by hajian
تو دانشگاه بودم همه چه دختر و چه پسر (رشته برنامه نویسی) همه داشتن در مورد تکلیفی که استاد بهشون داده صحبت میکردن .البته اونا یه ترم از ما جلوتر بودن ((مسئله هشت وزیر)) موضوعش این بود  ۸ مهره وزیر رو روی صفحه شطرنج چنان بچینید که نتونن همدیگه رو تهدید کنن.ما هم رفتیم و از سایت دوستم اقای اقدسی فام عزیز و دوستانشون این مطلب رو برای شما گذاشتیم
.
ادامه مطلب …..

الگوریتم ژنتیک

ژانویه 25, 2008 by hajian

دریافت فایل  الگوریتم ژنتیک 

هنگامي كه لغت تنازع بقا به كار مي‌رود اغلب بار ارزشي منفي آن به ذهن مي‌آيد. شايد همزمان قانون جنگل به ذهن برسد و حكم بقاي قوي‌تر!
البته براي آنكه خيالتان راحت شود مي‌توانيد فكر كنيد كه هميشه هم قوي‌ترين‌ها برنده نبوده‌اند. مثلا دايناسورها با وجود جثه عظيم و قوي‌تر بودن در طي روندي كاملا طبيعي بازي بقا و ادامه نسل را واگذار كردند در حالي كه موجوداتي بسيار ضعيف‌تر از آنها حيات خويش را ادامه دادند. ظاهرا طبيعت بهترين‌ها را تنها بر اساس هيكل انتخاب نمي‌كند! در واقع درست‌تر آنست كه بگوييم طبيعت مناسب ترين‌ها (Fittest) را انتخاب مي‌كند نه بهترين‌ها.

قانون انتخاب طبيعي بدين صورت است كه تنها گونه‌هايي از يك جمعيت ادامه نسل مي‌دهند كه بهترين خصوصيات را داشته باشند و آنهايي كه اين خصوصيات را نداشته باشند به تدريج و در طي زمان از بين مي‌روند.

مثلا فرض كنيد گونه خاصي از افراد، هوش بسيار بيشتري از بقيه افراد يك جامعه يا كولوني دارند. در شرايط كاملا طبيعي اين افراد پيشرفت بهتري خواهند كرد و رفاه نسبتا بالاتري خواهند داشت و اين رفاه خود باعث طول عمر بيشتر و باروري بهتر خواهد بود(توجه كنيد شرايط طبيعيست نه در يك جامعه سطح بالا با ملاحظات امروزي يعني طول عمر بيشتر در اين جامعه نمونه با زاد و ولد بيشتر همراه است). حال اگر اين خصوصيت(هوش)ارثي باشد به طبع در نسل بعدي همان جامعه تعداد افراد باهوش به دليل زاد و ولد بيشتر اين‌گونه افراد بيشتر خواهد بود. اگر همين روند را ادامه دهيد خواهيد ديد كه در طي نسل‌هاي متوالي دائما جامعه نمونه ما باهوش و باهوش‌تر مي‌شود. بدين ترتيب يك مكانيزم ساده طبيعي توانسته است در طي چند نسل عملا افراد كم هوش را از جامعه حذف كند علاوه بر اينكه ميزان هوش متوسط جامعه نيز دائما در حال افزايش است(البته امكان داشت اگر داروين بي‌عرضگي افراد باهوش امروزي را مي‌ديد كمي در تئوري خود تجديد نظر مي‌كرد اما اين مسئله ديگريست!).

بدين ترتيب مي‌توان ديد كه طبيعت با بهره‌گيري از يك روش بسيار ساده(حذف تدريجي گونه‌هاي نامناسب و در عين حال تكثير بالاتر گونه‌هاي بهينه) توانسته است دائما هر نسل را از لحاظ خصوصيات مختلف ارتقا بخشد.

البته آنچه در بالا ذكر شد به تنهايي توصيف كننده آنچه واقعا در قالب تكامل در طبيعت اتفاق مي‌افتد نيست. بهينه‌سازي و تكامل تدريجي به خودي خود نمي‌تواند طبيعت را در دسترسي به بهترين نمونه‌ها ياري دهد. اجازه دهيد تا اين مساله را با يك مثال شرح دهيم.

پس از اختراع اتومبيل به تدريج و در طي سال‌ها اتومبيل‌هاي بهتري با سرعت‌هاي بالاتر و قابليت‌هاي بيشتر نسبت به نمونه‌هاي اوليه توليد شدند. طبيعيست كه اين نمونه‌هاي متاخر حاصل تلاش مهندسان طراح جهت بهينه‌سازي طراحي‌هاي قبلي بوده اند. اما دقت كنيد كه بهينه‌سازي يك اتومبيل تنها يك “اتومبيل بهتر” را نتيجه مي‌دهد.

اما آيا مي‌توان گفت اختراع هواپيما نتيجه همين تلاش بوده است؟ يا فرضا مي‌توان گفت فضا پيماها حاصل بهينه‌سازي طرح اوليه هواپيماها بوده‌اند؟

پاسخ اينست كه گرچه اختراع هواپيما قطعا تحت تاثير دستاورهاي صنعت اتومبيل بوده است اما به‌هيچ وجه نمي‌توان گفت كه هواپيما صرفا حاصل بهينه‌سازي اتومبيل و يا فضا پيما حاصل بهينه‌سازي هواپيماست. در طبيعت هم عينا همين روند حكم‌فرماست. گونه‌هاي متكامل‌تري وجود دارند كه نمي‌توان گفت صرفا حاصل تكامل تدريجي گونه قبلي هستند.

در اين ميان آنچه شايد بتواند تا حدودي ما را در فهم اين مساله ياري كند مفهوميست به نام : تصادف يا جهش.

به عبارتي طرح هواپيما نسبت به طرح اتومبيل يك جهش بود و نه يك حركت تدريجي. در طبيعت نيز به همين گونه‌است. در هر نسل جديد بعضي از خصوصيات به صورتي كاملا تصادفي تغيير مي‌يابند سپس بر اثر تكامل تدريجي كه پيشتر توضيح داديم در صورتي كه اين خصوصيت تصادفي شرايط طبيعت را ارضا كند حفظ مي‌شود در غير اين‌صورت به شكل اتوماتيك از چرخه طبيعت حذف مي‌گردد.

منبع : سایت مقالات علمی

 

Inno Setup

ژانویه 21, 2008 by hajian

یکی از دغدغه های بزرگ تولید کنندگان نرم افزار توزیع محصولات خود روی سیستم های های کاربران است. در واقع فاز توزیع نرم افزار در پروژه های نرم افزاری به دلیل حساس بودن از اهمیت ویژه ای برخوردار است.

Setup Wizard Interface

راهکارهای بسیاری برای خودکار نمودن عملیات نصب نرم افزارها وجود دارد، یکی از این راه ها ساخت یک برنامه Setup برای نصب، راه اندازی و انجام تنظیمات اولیه نرم افزار است. این گونه برنامه ها به صورت مرحله به مرحله به کاربر در نصب محصولات نرم افزاری کمک می کنند و به صورت اتوماتیک نرم افزار را روی سیستم کاربران راه اندازی می نمایند به طوری که کاربر نیازی به دانستن اطلاعات فنی برای نصب نرم افزار مورد نظر خود نخواهد داشت.
نرم افزارهای ساخت Setup بسیار متنوع اند و هریک امکانات و ویژگی های خاصی را ارائه می دهند. در این میان نرم افزار آزاد Inno Setup یکی از گزینه های مناسب و کاربردی برای رفع نیازهای تولید کنندگان نرم افزار در امر “توزیع” خواهد بود.
Inno Setup نرم افزاری رایگان و اوپن سورس است که با استفاده از آن می توانید برای نرم افزارهای خود برنامه Setup تولید نمایید. با استفاده از این برنامه قادر خواهید بود تا در عرض چند دقیقه برنامه Setup خود را بسازید و آن را روی تمامی سیستم عامل های ویندوز اجرا کنید. Inno Setup در عین سادگی، قدرت بسیار زیادی به شما می دهد. برخی از ویژگی ها و امکانات این نرم افزار :

  • پشتیبانی از تمامی سیستم عامل های مایکروسافت (Windows 95/98/2000/2003/XP.ME/NT 4.0/Vista)
  • رابط کاربری استاندار و سازگار با ویندوزهای XP و 2000
  • سفارشی کردن نوع نصب نرم افزار (Full, Custom, Minimum)
  • فشرده سازی فایل ها در یک فایل EXE
  • ثبت کردن فایل های DLL و OCX
  • ساخت میانبر برای برنامه در هر مکانی که کاربر بخواهد
  • امکان دسترسی به رجیستری ویندوز و اعمال تغییر در آن
  • پشتیبانی از زبان های مختلف در برنامه Setup شما (می توانید زبان خود را به آن اضافه کنید)
  • امکان گذاشتن رمز عبور برای برنامه Setup
  • ایجاد Uninstaller در سیستم کاربر جهت حذف برنامه ی نصب شده
  • کاملاً رایگان و اوپن سورس (سورس این نرم افزار به زبان دلفی موجود است)
  • راهنمای کامل جهت یادگیری دستورات نرم افزار
  • پشتیبانی از زبان پاسکال اسکریپت برای ایجاد برنامه های Setup
  • و

سایت سازنده | دانلود 

منبع : Farasun