<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>.:: MNavidM Blog ::. &#187; الگوریتم</title>
	<atom:link href="http://blog.mnavidm.com/category/tutorial/programming/algorithm/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.mnavidm.com</link>
	<description>MNavidM.com .:  Personal Web Site  :.</description>
	<lastBuildDate>Mon, 15 Mar 2010 10:52:35 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>fa</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>دستورات تکرار</title>
		<link>http://blog.mnavidm.com/1385/03/22/halghe-for/</link>
		<comments>http://blog.mnavidm.com/1385/03/22/halghe-for/#comments</comments>
		<pubDate>Mon, 12 Jun 2006 06:29:56 +0000</pubDate>
		<dc:creator>نوید مردوخ روحانی</dc:creator>
				<category><![CDATA[الگوريتم]]></category>
		<category><![CDATA[برنامه نویسی]]></category>

		<guid isPermaLink="false">http://blog.mnavidm.com/1385/03/22/%d8%af%d8%b3%d8%aa%d9%88%d8%b1%d8%a7%d8%aa-%d8%aa%da%a9%d8%b1%d8%a7%d8%b1/</guid>
		<description><![CDATA[امروز بعد از مدت ها تصمیم گرفتم یکم در مورد الگوریتم بنویسم.
درس امروز در مورد دستورات تکرار و حلقه هست :
ببینید ما در زندگی روزمره یک سری کارها هست که بصورت استمرار اون ها رو انجام میدیم ، حالا ممکنه ۱ روز در میان یا چند روز در میان  و شاید حتی در طی [...]]]></description>
			<content:encoded><![CDATA[<p>امروز بعد از مدت ها تصمیم گرفتم یکم در مورد الگوریتم بنویسم.</p>
<p>درس امروز در مورد دستورات تکرار و حلقه هست :</p>
<p>ببینید ما در زندگی روزمره یک سری کارها هست که بصورت استمرار اون ها رو انجام میدیم ، حالا ممکنه ۱ روز در میان یا چند روز در میان  و شاید حتی در طی روز چند بار انجامش بدیم.</p>
<p>به فرض برای یک دانش آموز ، رفتن به مدرسه یک کار مستمر هست یعنی هر روز اون رو انجام میده ، درسته که ممکنه نحوه انجام اون تا حدودی با روز های دیگه فرق کنه اما در کل به یک شکل خاص است.</p>
<p><span id="more-22"></span></p>
<p>خوب در برنامه نویسی هم به همین شکل هست ، ما برای انجام کاری ممکنه نیاز به انجام یک سری کار تکراری باشیم که از لحاظ ساختار تا حدودی با هم شبیه هستد.</p>
<p>به فرض اگر بخواهیم برنامه بنویسیم که جمع اعداد ۱ تا صد رو انجام بده ، می تونیم از حلقه استفاده کنیم.</p>
<p>در کل روال کار یک ساختار درست داره یعنی :</p>
<p>۱- عدد ۱ را با عدد ۲ جمع کن و نتیجه را در SUM قرار بده.</p>
<p>۲- عدد ۳ را با SUM جمع کن و نتیجه را در SUM قرار بده.</p>
<p>۳- عدد ۴ را با SUM جمع کن و نتیجه را در SUM قرار بده.</p>
<p>۴- عدد ۴ را با SUM جمع کن و نتیجه را در SUM قرار بده.</p>
<p>۵ &#8230;</p>
<p>و ای آخر .</p>
<p>در مثال بالا قسمت &#8220;<strong>را با SUM جمع کن و نتیجه را در SUM قرار بده.</strong>&#8221; در جمله ۲ تا ۱۰۰ مشابه است پس می تونیم به حلقه تبدیلش کنیم.</p>
<p align="left">for i=1 to 100<br />
sum=sum+i
</p>
<p align="right">کد بالا کد کار رو برای ما انجام میده.</p>
<p align="right">اما توضیح در مورد کد : ببینید حلقه باید دارای یک متغیر باشه که بتونه تعیین کنه در چندمین تکرار حلقه هست که در اینجا از i استفاده شده.</p>
<p align="right">و مطلب دیگه نقطه شروع وپایان حلقه هست که از ۱ شروع میشه و تا ۱۰۰ ادامه پیدا میکنه.</p>
<p align="right">و دستورات بعد از اون به میزان مشخصی که تعیین کردیم (یعنی ۱-۱۰۰ بار) تکرار میشه و در نهایت جواب رو به ما میده.</p>
<p align="right">فعلا همین. اگر مشلی بود بگید.</p>
<p align="right">موفق باشید.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mnavidm.com/1385/03/22/halghe-for/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>الگوریتم (شرط &#8211; if)</title>
		<link>http://blog.mnavidm.com/1384/06/13/algoritm-if/</link>
		<comments>http://blog.mnavidm.com/1384/06/13/algoritm-if/#comments</comments>
		<pubDate>Sun, 04 Sep 2005 05:24:14 +0000</pubDate>
		<dc:creator>نوید مردوخ روحانی</dc:creator>
				<category><![CDATA[الگوريتم]]></category>
		<category><![CDATA[برنامه نویسی]]></category>

		<guid isPermaLink="false">http://blog.mnavidm.com/?p=16</guid>
		<description><![CDATA[سلام.
خوبید ؟ حال و احوال خوبه ؟
امروز در مورد شرط و شروط در مبحث الگوریتم براتون حرف میزنم.
در یک مثال روزمره :
ما تصمیم داریم به یک سفر بریم اما قبل از اون باید یه سری موارد رو بررسی کنیم و بعد تصمیم بگیریم که به کجا باید بریم , یکی از این موارد محاسبه کردن [...]]]></description>
			<content:encoded><![CDATA[<p>سلام.</p>
<p>خوبید ؟ حال و احوال خوبه ؟</p>
<p>امروز در مورد شرط و شروط در مبحث الگوریتم براتون حرف میزنم.<br />
در یک مثال روزمره :</p>
<blockquote><p>ما تصمیم داریم به یک سفر بریم اما قبل از اون باید یه سری موارد رو بررسی کنیم و بعد تصمیم بگیریم که به کجا باید بریم , یکی از این موارد محاسبه کردن هزینه هاست . که ما در این مثال بر روی هزینه بحث می کنیم.</p>
<p>بعد از یک سری پرس و جو به این نتیجه می رسیم که به فرض خرج سفر ما اگه بخوایم از تهران تا شیراز بریم ۵۰/۰۰۰ تومن میشه <img src='http://blog.mnavidm.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  و اگر بخوایم به ارومیه بریم ۹۰/۰۰۰ تومن میشه . و کل پول بودجه ما برای این سفر ۷۰/۰۰۰ تومن هستش .</p>
<p>پس در اینجاست که با توجه به داده ها (منظور در اینجا هزینه می باشد) باید تعیین کنیم که باید به کجا بریم . پس ما اومدیم برای خودمون شرط گذاشتیم باید توسط اون مشخص کنیم که به کجا بریم.</p></blockquote>
<p>یک مثال برنامه نویسی :<br />
* برنامه ای که ۲ عدد رو از ورودی میگیره و عدد بزرگتر رو چاپ میکنه.</p>
<blockquote><p>- شروع.<br />
۱- عدد اول را از ورودی بگیر و در متغیر x قرار بده.<br />
۲- عدد دوم را از ورودی بگیر و در متغیر y قرار بده.<br />
۳- <strong><font color="#ff0000">اگر</font></strong> x>y بود چاپ کن x.<br />
4- <strong><font color="#ff0000">اگر</font></strong> y>x بود چاپ کن y.<br />
- پایان .</p></blockquote>
<p>اما جریان شرط به همین جا ختم نمیشه و یه جاهای باریک هم میرسه <img src='http://blog.mnavidm.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
* برنامه ای بنویسید که یک عدد را از ورودی گرفته و اگر عدد از ۵۰ بزرگتر بود حرف B را چاپ کن واگر از ۵۰ کوچکتر بود حرف N را چاپ کن.</p>
<blockquote><p>- شروع<br />
۱- عدد را از ورودی گرفته و در متغیر x قرار بده.<br />
۲- <strong><font color="#ff0000">اگر</font></strong> x>50 بود حرف B را چاپ کن <strong><font color="#ff0000">در غیر این صورت</font></strong>  حرف N را چاپ کن.<br />
- پایان.</p></blockquote>
<p>در مثال بالا از کلمه : در غیر این صورت استفاده شد که عمدتا در برنامه نویسی به اون else گفته میشه و کاربرد زیادی داره.</p>
<p>* برنامه ای بنویسید که یک عدد را از ورودی گرفته و اگر عدد از ۵۰ بزرگتر بود و از ۹۰ کوچکتر چاپ کند B .</p>
<blockquote><p>- شروع</p>
<p>۱- عدد را از ورودی بگیر و در x قرار بده.<br />
۲-<strong><font color="#ff0000">اگر</font></strong> x>50 بود برو به مرحله ۳ <strong><font color="#ff0000">در غیر این صورت</font> </strong>برو به پایان.<br />
۳- <strong><font color="#ff0000">اگر</font></strong> x&lt;90 بود چاپ کن B .<br />
- پایان.</p></blockquote>
<p>در مثال بالا از تکنیک شرط های تودرتو استفاده کردیم.<br />
یعنی تا شرط اول درست نباشد شرط بعدی بررسی نمی شود.<br />
بعضی وقت ها هم ممکنه لازم بشه از ترکیب else و شرط تودرتو با هم استفاده کرد.</p>
<p>در کل شرط چیز خوبیه <img src='http://blog.mnavidm.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  !!؟؟<br />
سوالی بود بگید.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mnavidm.com/1384/06/13/algoritm-if/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>درس اول الگوریتم</title>
		<link>http://blog.mnavidm.com/1384/05/14/lessen-1-algoritm/</link>
		<comments>http://blog.mnavidm.com/1384/05/14/lessen-1-algoritm/#comments</comments>
		<pubDate>Fri, 05 Aug 2005 15:38:31 +0000</pubDate>
		<dc:creator>نوید مردوخ روحانی</dc:creator>
				<category><![CDATA[الگوريتم]]></category>
		<category><![CDATA[برنامه نویسی]]></category>

		<guid isPermaLink="false">http://blog.mnavidm.com/?p=6</guid>
		<description><![CDATA[سلام.
امروز در مورد یکی از مهمترین و اصلی ترین قسمت برنامه نویسی براتون می نویسم.
تعریف الگوریتم :
الگوریتم یعنی راه حل و روشی  که بوسیله اون بتونیم یک مسأله رو به قسمت های کوچک تر تقسیم کنیم و البته ورودی و خروجی رو هم مشخص کنیم .
اگه درست یاد بگیرید که از الگوریتم استفاده کنید [...]]]></description>
			<content:encoded><![CDATA[<p>سلام.<br />
امروز در مورد یکی از مهمترین و اصلی ترین قسمت برنامه نویسی براتون می نویسم.</p>
<p>تعریف الگوریتم :<br />
الگوریتم یعنی راه حل و روشی  که بوسیله اون بتونیم یک مسأله رو به قسمت های کوچک تر تقسیم کنیم و البته ورودی و خروجی رو هم مشخص کنیم .<br />
اگه درست یاد بگیرید که از الگوریتم استفاده کنید خیلی راحت هر زبون برنامه نویسی  که دوست داشته باشید رو می تونید خیلی راحت  یاد بگیرید و هر برنامه ای رو هم  می تونید بنویسید  .</p>
<p><span id="more-6"></span><br />
خودمونی :</p>
<blockquote><p>ببینید خیلی ها وقتی اسم الگوریتم به گوششون می خوره , واقعا می ترسن و تفکر بدی نسبت بهش دارن و اون رو یک غول تصور میکنن . اما شما نترسید من سعی میکنم تا اونجایی که امکان داشته باشه خیلی ساده توضیحش بدم , که قابل درک باشه <img src='http://blog.mnavidm.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p></blockquote>
<p>ما اغلب در زندگی روزمره خودمون از روال های متشباهی شبیه الگوریتم استفاده میکنیم , فرض کنید :</p>
<p>شما می خواهید  یه سفر به شمال برید , خوب مسلما براش برنامه ریزی انجام میدید , مثلا :<br />
۱-  وسایل  مورد نیاز سفر رو تعیین میکنید .<br />
۲ &#8211; مدت سفر رو تعیین میکنید .<br />
۳ &#8211; مسیر سفر رو تعیین میکنید  .<br />
۴ &#8211; &#8230; .</p>
<p>این ها نمونه هایی از تجزیه کردن , برنامه های  سفر به جزهای کوچک تر هستند .  و ممکنه خود اون ها هم به قسمت های کوچیک تر تجزیه بشن.</p>
<p>یه مثال برای الگوریتم :</p>
<p>^ برنامه ای بنویسید که ۲ عدد را از ورودی (۱) گرفته  با هم جمع کند و در خروجی (۲) چاپ کند.</p>
<p>۱- عدد اول رو بگیر و در متغیر (۳) x قرار بده.<br />
۲- عدد دوم رو بگیر و در متغیر y قرار بده .<br />
۳- مقادیر موجود در متغیر x و y را با هم جمع کن و در متغیر z قرار بده.<br />
۴- مقدار z را در خروجی چاپ کن .</p>
<p>این یه نمونه خیلی ساده از الگوریتم بود , اما با همین مثال ساده میشه یه چیزهایی در مورد الگوریتم متوجه شد <img src='http://blog.mnavidm.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' />  .<br />
البته بسته به این که چه نوع برنامه نویسی انجام بدید یکم روال الگوریتم تغییر میکنه , اما من یه راه حل براش دارم .</p>
<p>توجه :</p>
<blockquote><p>به نظر من لازم نیست برای الگوریتم قاعده و قانون استانداردی در نظر بگیرید و هر جور دوست دارید اون رو بنویسید , فقط یه نکته داره :<br />
اونم اینکه الگوریتم رو جوری بنویسید که وقتی بعد از ۲ هفته نوشتن اون الگوریتم بهش نگاه کردید , حداقل خودتون متوجه بشید چی کار کردید <img src='http://blog.mnavidm.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p></blockquote>
<p>خوب برای امروز کافیه , در پست بعدی چند نمونه هایی بیشتری از الگوریتم براتون میگم .<br />
با نظر و پیشنهاد خودتون در هرچه بهتر کردن مطالب یاری کنید.<br />
موفق باشید.<br />
__________________<br />
۱- یعنی گرفتن مقدار از یک دستگاه ورودی مثلا صفحه کلید.<br />
۲- یعنی فرستادن یک مقدار برای یک دستگاه خروجی مثلا صفحه نمایش.<br />
۳- به فضاهایی از حافظه گفته میشه که برای نگهداری مقادیر مورد استفاده قرار میگیره.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mnavidm.com/1384/05/14/lessen-1-algoritm/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
	</channel>
</rss>
