الگویتم ژنتیک برای حل مساله n- وزیر

 



نیازمندی های نرم افزاری سیستم :
Windows XP
.Net Framework 2.0


دریافت فایل

نویسنده : حامد حبیبی اقدم

الگوریتم ژنتیک برای حل مساله n- وزیر
ادامه نوشته

مربع هشت ( 8-puzzle )

نویسنده : حامد حبیبی اقدم





نیازمندی های نرم افزار

Windows XP

.Net Framework 2.0



دریافت فایل

مربع هشت ( 8-puzzle )

 در یک مربع 3 در 3 که شامل 9 خانه کوچک است ، هشت مربع شماره گذاری شده قرار داده ایم . یکی از خانه ها نیز خالی است . مسئله با یک حالت اولیه شروع می شود . هدف چیدن مربع های شماره گذاری شده به ترتیب زیر است ( حالت هدف ) : 


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


برای این منظور می توان از روش جستجوی A* استفاده کرد . برای این مسئله چند هیوریستیک مختلف وجود دارد . دو هیوریستیک معمول به صوزت زیر هستند : 


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


2)       هیوریستیک دوم مجموع فاصله های بلوک شهری هر مربع از خانه خود را محاسبه کرده و سعی می کند خانه حالی را طوری حرکت دهد که این مقدار را به صفر برسد

آموزش های استاد آنلاین

 

نام دوره آموزشی مدرس
آموزش Internet - مهارت هفتم از ICDL بيتا ضرابيان
آموزش Photoshop فاطمه حسني
آموزش HTML بيتا ضرابيان
آموزش مباحث پيشرفته در طراحي صفحات وبjavascript - SQL - ADO نوشين ابراهيم زاده - مهدي سيف اللهي
لیست اسناد و منابع اینترنتی امیر حسین مرتضوی
آموزش متدولوژی و تکنولوژی طراحی وب CIW بیتا ضرابیان
مفاهیم Java و Active-x ریحانه عارفی مقدم
آشنایی با مفاهیم و اصطلاحات اینترنتی بیتا ضرابیان
مفاهیم پایه فن آوری اطلاعات - مهارت اول از ICDL1 ریحانه عارفی مقدم
آموزش Word - مهارت سوم از ICDL ویدا زارعی
آموزش Power Point -مهارت ششم از ICDL مهشید ملالی
مقدمه ای بر ویروسها و برنامه های مخرب آرش رضا پور خان
آشنایی با Access - مهارت پنجم از ICDL فائزه شهيدي
كد نويسي با Java-Script بيتا ضرابيان
آموزش Excel2000 - مهارت چهارم از ICDL مدیا صداقت کیش
آموزش مهارت رفتاري ابراهيم خليل اخوان - محمود علواني
آموزش شبكه هاي بي سيم - Wireless Network هومن عزيزي
آموزش Front - Page پرهام باغستاني-ريحانه عارفي مقدم
آموزش Flash-mx آزاده ماه آور پور
آموزش Windows-XP مهارت دوم از ICDL ريحانه عارفي مقدم

آژاكس در يك نگاه

چند ابزار برای تبديل کدهای #C  به VB

چند سایت معتبر برای تبدیل کد:

۱- kamalpatel.net

۲- carlosag.net

۳- developerfusion.co.uk

۴- eggheadcafe.com

۵- claritycon.com

 ۶- aspalliance.com

این هم یک برنامه برای تبدیل کد Paste As Visual Basic

این هم تبدیل پروژه #C  به‌ VB .

C# to Visual Basic Translation Tool

معرفی SQL Injection Attacks و نحوه پیشگیری از آن

بانکهای اطلاعاتی معمولا قلب یک وب سایت یا یک برنامه Web based و یا Web Enabled را تشکیل میدهند. زیرا اطلاعاتی که باید در سایت نمایش داده شوند در آنها ذخیره میگردد. بر اساس مدلهای مختلف برنامه سازی، ترکیبی از یک بانک اطلاعاتی و یک زبان اسکریپت یا کد نویسی و احتمالا چند لایه دیگر میتوان برنامه ای نوشت که مورد رضایت مشتری قرارگیرد و اورا قانع به پرداخت هزینه های برنامه نویسی نمود.
معرفی SQL Injection Attacks و نحوه پیشگیری از آن - academist.ir
گاه با اینکه تمام جوانب برنامه نویسی را رعایت کرده ایم ممکن است متوجه وجود برخی حفره ها و یا خطاها در برنامه های خود شویم. در صورتی که این حفره ها به دلیل اشکالات موجود در ابزارهای استفاده شده در برنامه ما، مانند بانکهای اطلاعاتی باشند، میتوان به نصب SERVICE PACK ها و یا ارتقاء به نگارش جدید این برنامه ها مشکل را حل نمود، اما در اکثر موارد اشکال و حفره های موجود در یک برنامه وبی به اشکالات مربوط به “تزریق کدهای SQL” یا همان SQL Injection مربوط میشود….

ادامه نوشته

اسلاید

این اسلاید ها مربوط به ۵ فصل اول کتاب "چگونه با سی پلاس پلاس برنامه بنویسیم" می باشد.

فصل اول : Introduction

فصل دوم : Control_Structures

فصل سوم : Functions

فصل چهارم : Arrays

فصل پنجم : Pointers_Strings

 

DirectX 10 و اهمیت آن در صنعت کامپیوتر های شخصی

نویسنده: سعید یزدانی

توضیح : این گفتگو در تاریخ 19 مهرماه در سایت BootDaily منتشر شده است. در این مصاحبه پرسش ها توسط BD (کوتاه شده عبارت Boot Daily) و پاسخ ها با نام Chris (مدیر بخش گسترش و بازاریابی مایکروسافت) مشخص شده اند. همچنین منظور از DX10 در این مصاحبه DirectX 10 می باشد.

  chris Donahue

BD : لطفا اهمیت DX10 برای دوست داران بازی ها را در یک جمله توضیح دهید.

 

Chris : ما در مایکروسافت DirectX 10 را به عنوان بلند ترین جهش در کیفیت و کارایی گرافیک در صنعت کامپیوتر های شخصی از زمان پیدایش DirectX که به زمان ویندوز 95، و تحولی در زمینه بازی های کامپیوتری و تکنولوژی مربوط به آن می دانیم.

 

BD : و اهمیت آن برای کاربران عادی؟

 

Chris : بله، DirectX 10 بالاترین کیفیت و کارایی گرافیکی را در پلاتفرم ویندوز را به همراه خواهد داشت که نتیجه آن تجربه ای باورنکردنی و دور از ذهن برای کاربران عادی خواهد بود.

ادامه نوشته

آشنايي با DirectX و OpenGL

ترجمه و تدوين: علي حسيني‌
ماهنامه شبکه 

اشاره :

يك بازي كامپيوتري را روي كامپيوترتان اجرا مي‌كنيد. فعلا‌ً كارت گرافيك شما روي اسلا‌تAGP سوار مي‌شود، پردازشگر سلرون داريد و ... پس از چند ماه يا چند سال كامپيوتر جديدي مي‌خريد. اكنون اسلا‌ت كارت گرافيكي شما PCI Express است و يك پردازشگر 64 بيتي داريد. همان بازي را روي اين كامپيوتر هم نصب و اجرامي‌كنيد! شايد به نظر طبيعي ميآيد كه همه چيز بايد همين‌طور باشد. اما چگونه يك بازي روي كامپيوترهايي با تراشه‌ها و سخت‌افزارهاي مختلف و گاه فناوري متفاوت اجرا مي‌شود؟ API‌هاي گرافيكي يا همان رابط‌هاي برنامه‌نويسي، بخش بزرگي از اين مشكل را حل مي‌كنند و امكانات گسترده ديگري را نيز در اختيار برنامه‌نويسان و توسعه‌دهندگان بازي و برنامه‌هاي چندرسانه‌اي قرارمي‌دهند. OpenGL وDirectX، دو مجموعه API گرافيكي و صوتي هستند كه براي آسان‌تر ساختن توسعه بازي‌ها و نرم‌افزارهاي چندرسانه‌اي طراحي شده‌اند.

ادامه نوشته

breakpoints در visual studio

شايد تا حالا براتون اتفاق افتاده باشه يه برنامه اي رو كه كلي وقت صرف نوشتنش كرديد وبا كلي ذوق و شوق سراغ compile  كردنش مي ريد... با يه طومار error روبرو مي شيد، مي شينيد و كلي با error هاش سر و كله مي زنيد تا آخر خروجي برنامه رو مي بينيد.ولي وقتي داريد خروجي رو دنبال مي كنيد مي بينيد كه اصلا اون چيزيايي رو كه مي خواستيد تو خروجي نيستند.حالا بايد دوباره كل برنامه رو چك كنيد تا اشكالات الگوريتميك برنامه رو پيدا كنيد.اينجاست كه ديگه مي بريد و برنامه رو بي خيال مي شيد.

اما يكي از امكانات مفيدي كه visual studio در اختيار ما مي ذاره اينه كه مي تونيم خط به خط برنامه رو دنبال كنيم تا اشكالاتمون رو به طور دقيق پيدا كنيم.

براي اين كار ما از break points استفاده مي كنيم:

1)براي قرار دادن break point بر روي خط مورد نظر كافيست بر روي حاشيه كنار صفحه اصلي برنامه  

و خط مورد نظر كليك كنيد و يا با رايت كليك كردن بر روي خط مورد نظر insert breakpoint را انتخاب كنيد. براي نمونه يه برنامه دلخواه رو باز كنيد و بر روي دو خط از آن (يا هر تعداد خطي كه مايليد) breakpoint را قرار دهيد(يك كره قرمز رنگ مشاهده مي كنيد).

2)بعد از قرار دادن breakpoint ها بر روي Build>Build Solution كليك كنيد تا برنامه compile شود بعد Debug>Start را انتخاب كنيد.برنامه به محض رسيدن به اولين breakpoint متوقف مي شود.

3)حالا شما مي تونيد داده هاتون رو تا اين قسمت برنامه چك كنيد. يعني اگر ماوس رو روي هر متغير برنامه ببريد مقدار متغير ظاهر مي شه.

4)براي ادامه دادن اين كار تا breakpoint  بعدي Debug>Continue‌ رو انتخاب كنيد...

و بدين ترتيب تا آخر برنامه مي تونيد اشتباهاتتون رو اصلاح كنيد.

البته براي كار با breakpoint بهتره چند نكته رو بدونيد:

1)قرار دادن breakpoint در مكان هايي كه تاثيري در برنامه ندارند(مثلا خطوط خالي يا comment ها )

باعث مي شه تا breakpoint در خط بعدي عمل كنه.

2)براي غير فعال كردن breakpoint كافيست روي علامت آن در حاشيه سمت چپ كليك كنيد

برنامه نویسی به زبان ++C یک مهارت است

برای تبدیل شدن به یک برنامه نویس خوب در زبان  ++C  نیاز به شناخت کامل header file ها داریم.

از این رو  این لینک رو برای دانلود این Pdf در این جا قرار میدم چون اکثر اشکالات دوستان عزیز در برنامه نویسی به زبان  ++C  ناشی از نشناختن امکانات فوق العاده زبان سی پلاس پلاس است.

دانلود Pdf آموزش header file ها در زبان C++

آموزش ASP.NET

 

دریافت آموزش ASP.NET

 

مجموعه مقالات برنامه‌نويسي

 

مجموعه مقالات برنامه‌نويسي (سايت Dev.ir)

 

آموزش پاسکال

 

نمایش آموزش

 

نكاتي پیرامون تگ Div

تعيين رنگ زمينه:

<div id="m1" style="background:yellow;">Computer Union</div>

در صورتي كه بخواهيد لايه شفاف باشد عبارت transparent را بلافاصله بعد از رنگ بنويسيد.

<div id="m1" style="background:yellow;">
<div id="m2" style="background-color=red transparent; ">Computer Union</div>
</div>

مثلا در مثال بالا لايه قرمز رنگ شفاف است و ديده نمي شود.

نمايش عكس در پس زمينه لايه:
توجه داشته باشيد در صورتي كه براي لايه هم تصوير زمينه و هم رنگ زمينه انتخاب شوداولويت نمايش با تصوير است.

<div id="m2" style="background-image:url(1.jpg); ">Computer Union</div>

مثلا در مثال فوق عكس براي زمينه انتخاب شده است.در صورتي كه بخواهيد تصويري نمايش داده نشود عبارت none را بجاي آدرس تصوير قرار دهيد.شايد اين نكته بي مورد به نظر برسد ولي در صورتي كه بخواهيم با كدنويسي بين دو حالت سوئيچ كنيم لازم است.
در مثال بالا تصوير آنقدر تكرار مي شود تا كل زمينه را بپوشاند.براي جلوگيري از اين امر اين طور عمل مي كنيم:

<div id="m2" style="background-image:url(1.jpg); background-repeat:no-repeat">Computer Union</div>

عبارت no-repeat موجب ميشود كه تصوير تنها يكبار نمايش داده شود.حالت پيش فرض اين خاصيت repeat مي باشد.دو حالت repeat-x و repeat-y هم هست كه به ترتيب تصوير را به صورت طولي و عرضي تكرار مي كند.

در صورتي كه تصوير تكرار شود شما مي توانيد تعيين كنيد كه اين تكرار از كدام سمت شروع شود.همچنين از لحاظ ارتفاع كدام مقطع از تصوير نمايش داده شود.

<div id="m2" style="background-image:url(1.jpg);  background-position=center left;">Computer Union</div>

پارامتر اول تعيين مي كند كه وسط تصوير نمايش داده شود و پارامتر دوم هم تعيين مي كند كه چينش تصاوير از سمت چپ شروع شود.در صورتي كه تنها يك پارامتر تعيين شود به عنوان پارامتر دوم محسوب خواهد شد.

نمايش كادر :
شما مي توانيد نوع ، رنگ و ضخامت كادر را تعيين كنيد.

<div id="m2" style="border-style=solid; border-color=red; border-width=thin">Computer Union</div>

در مثال بالا border-style كادر را تعيين مي كند و مي تواند مقادير زير باشد.
dotted براي كادر نقطه چين ،
dashed براي كادر خط چين ،
solid براي كادر خطي ،
groove / ridge / inset / outset هم انواع كادر هاي سه بعدي را رسم مي كنند.
border-width هم ضخامت را تعيين مي كند.مقدار پيش فرض اين خاصيت medium مي باشد.دو مقدار thin/thick هم به ترتيب ضخامت را كوچتر و بزرگتر از حد پيش فرض مي كنند.البته شما مي توانيد مقدار دلخواه خود را همراه با واحد آن وارد كنيد.واحدها عبارتند از:
cm, mm, in, pt, pc, px
نكته آخر در مورد كادر ها اين است كه با استفاده از خصوصيات شما مي توانيد خطوط هر طرف را كه مايليد نمايش دهيد و نوع و رنگ و ضخامت را هم مشخص كنيد.
border-bottom / border-left / border-right / border-top

تعيين رنگ متن:

<div id="m2" style="color:red;">Computer Union</div>

تعيين اسكرول براي لايه:
اين مورد اين امكان رو فراهم مي كند كه در فضاي كمي عكس بزرگ يا متني زيادي رو قرار بدهيم.

<div id="m2" style="overflow=scroll; height=100; width=100;">Computer Union Computer Union Computer Union Computer Union Computer Union</div>

همچنين به جاي scroll مي توان عبارت auto رو قرار داد كه در صورت لزوم اسكرول را ظاهر مي كند.

استايل (CSS) چيست؟

 - CSS مخفف کلمه Cascading Style Sheets ميباشند.
 - اولين ورژن استايلها در سال ۱۹۹۶ ساخته شد. که اولين ورژن آن
CSS1 بود.
 - ديگر وژن آن
CSS2 مي باشد که در سال ۱۹۹۸ ساخته شد که بيشتر براي ويرايش صفحات، نحوه نمايشها تگها و ... کاربرد دارد.
 - فايل استايلها با فرمت
CSS ذخيره ميشوند.
 
انواع استايلها:
۱. Inline Style: اين نوع استايل در داخل تگهاي HTML به كار گرفته ميشوند، و اين استايل فقط بروي همان تگ به خصوص تاثير خواهد گذاشت و به صورت زير نوشته خواهد شد.

<tag style="Style Declarations">

Example:
<p style="font-family: Tahoma">This is a paragraph</p>

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

۲.
Embedded or Global Style: در اين نوع، استايل نوشته شده در تمامي صفحه تاثير خواهد گذاشت، اينرا بين دو تگ (<head></head>) به صورت زير نوشته خواهد شد.

<style>
<!--
Style Declaration
-->
</style>

Example:
<head>
<style type="text/css">
<!--
p { color: red; text-align: left; font-size: 8pt }
-->
</style>
</head>

اين نوع حالت از تغييرات تعريف شده بروي تمامي تگها پاراگراف اعمال خواهد شد که رنگ متن: قرمز، جهت متن: چپ، و اندازه فونت ۸ پوينت خواهد بود. توجه داشته باشيد در اين مثال سه حالت مختلف يک استايل را براي تگ پاراگراف تعريف کرديم که با استفاده از (;) حالتهاي مختلف آن از هم جدا شدند.
اگر بخواهيد اين حالت نوشته شده را براي چند تگ ديگر اعمال کنيد مي توانيد تگها را بااستفاده از کاما (
,) از هم جدا کنيد براي مثال:

h1, h2, h3, h4 { color: gold; font-family: sans-serif {


۳.  Linked or External style sheet: نوع آخر هم معروف به استايلهاي خارجي هستند كه به صورت لينك فايل استايل را به صفحات خود لينك ميدهيد. فايلهاي استايل با فرمت CSS ذخيره ميشوند و به صورت زير به صفحات لينك داده ميشود.

 

<link href="url" rel="relation type" type="link type">

 URL: آدرس فايل استايل. : Relation type برابر با stylesheet هست. link type : هم با text/css برابر ميباشد.

Example:
<head>
<link rel="stylesheet" type="text/css" href="mystyle.css">
</head>

در اين نوع از استايلها بعد از اينکه فايل استايل خود را آماده کرديد آنرا با فرمت CSS ذخيره کرده و آنرا همانند بالا فايل استايل را به قالب لينک مي کنيم. براي راحت بود در کار مي توانيد ابتدا استايلها را به صورت Internal استفاده کرده و بعد از اينکه کارتان تمام شد کدهاي نوشته شده بين دو تگ (<style></style>) را در نت پد کپي کرده و آنرا با فرمت CSS دخيره کرده و سپس با استفاده از فرمول بالا آن فايل را به قالب لينک دهيد. يکي از مزيتهاي اين نوع استايل اين ميباشد که مي توانيد با داشتن يک فايل استايل براي چندين صفحه استفاده کنيد و از ديگر مزيت هاي آن با اين کار کدهاي قالب را به چند فايل تقسيم کرده و قالب را منظم تر ميشود.

برنامه های کلاس #C

Computer Union

دريافت برنامه هاي جلسات اول تا سوم

BTree

یکسری از دوستان هنوز درگیر پروژه های پایان ترم برای درس ذخیره و بازیابی اطلاعات هستند.

این دو سری کد شاید بتونه کمکی براشون باشه.

دریافت کد اول

دریافت کد دوم

قبل از دریافت کد سوم این توضیحات رو که نویسنده کدها ذکر فرمودند بخونید :

اين كلاس ها از آخر كتاب ذخيره و بازيابي (جعفر نژاد) تايپ شده. اما error هاش حذف نشده. كلاس هايي غير از btree هم داخلش داره كه در واقع زير مجموعه اون هست. يک برنامه هم نوشته شده كه از كلاس ها استفاده مي كنه با نام tstbtree.

دریافت کد سوم

موفق باشید

VHDL

باز هم سلام

دوستاني كه درس معماري كامپيوتر رو گذرانده باشن ، با زبان Verilog كه يكي از زبانهاي توصيف سخت افزار هست آشنايي دارن و باهاش كار كردن. از اونجايي كه لازم هست تا با زبانهاي ديگه هم آشنايي داشته باشيم ، فايل Zip شده اي كه شامل 5 بخش و آشنايي و مروري بر زبان VHDL هست براتون قرار داديم.

اميدواريم استفاده كنيد.

دريافت فايل

 

الگوریتم پریم

دوستانی که رشته تحصیلیشون کامپیوتر هست و با برنامه نویسی درگیر هستند حتما در درس طراحی الگوریتم با الگوریتم پریم آشنا شدند.

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

۱ - بخشی از اسلایدهای جناب آقای دکتر مینایی ( استاد محترم این درس ) دریافت فایل

۲ - یک فایل Pdf دریافت فایل

انشاا... که مورد توجه علاقه مندان قرار گرفته باشه

موفق باشید