<?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>Amozesh Majazi For You</title>
	<atom:link href="http://amfy.ir/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://amfy.ir</link>
	<description>آموزش مجازی برای شما</description>
	<lastBuildDate>Tue, 30 Jun 2009 16:37:22 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>fa</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>فصل نهم طراحی سیستم</title>
		<link>http://amfy.ir/?p=181</link>
		<comments>http://amfy.ir/?p=181#comments</comments>
		<pubDate>Tue, 30 Jun 2009 16:36:41 +0000</pubDate>
		<dc:creator>مهران روشندل</dc:creator>
				<category><![CDATA[پودمان پنجم رشته نرم افزار کامپیوتر]]></category>

		<guid isPermaLink="false">http://amfy.ir/?p=181</guid>
		<description><![CDATA[سطوح در نمودار جریان داده ها:
در یک سیستم اطلاعاتی پیچیده منطقی، این امکان وجود ندارد که تمام اطلاعات لازم را در یک صفحه کاغذ رسم نمائیم، به همین دلیل با شکست DFD به سطوح دیگر به وسیله نمودارهای سلسله مراتب (نمودار زمینه ای، سطح۱، سطح۲ و غیره) استفاده می شود.
 
سطح ۱: 
درک عمومی از یک [...]]]></description>
			<content:encoded><![CDATA[<p><strong>سطوح در نمودار جریان داده ها:</strong></p>
<p>در یک سیستم اطلاعاتی پیچیده منطقی، این امکان وجود ندارد که تمام اطلاعات لازم را در یک صفحه کاغذ رسم نمائیم، به همین دلیل با شکست DFD به سطوح دیگر به وسیله نمودارهای سلسله مراتب (نمودار زمینه ای، سطح۱، سطح۲ و غیره) استفاده می شود.</p>
<p> </p>
<p><strong>سطح ۱: </strong></p>
<p>درک عمومی از یک سیستم اطلاعاتی می باشد که در داخل آن پردازش های اصلی سیستم اطلاعاتی، مخزن داده ها، جریان داده ها و جریان داده بین پردازش های اصلی و موجودیت های خارجی نشان داده شده است</p>
<p> </p>
<p><strong>سطح نمودار زمینه‌ ای:</strong></p>
<p>بالاترین سطح سلسله مراتب DFD نامیده می شود که از سطح۱ استخراج می شود و شامل موجودیت های خارجی، جریان داده ها بین سیستم و موجودیت های خارجی می باشد، در این نمودار هیچگونه مخزن داده ای مشاهده نمی گردد.</p>
<p> </p>
<p><strong>تجزیه کارکردی: </strong></p>
<p>این اصطلاح به توسعه DFD در سطح پائین تر اشاره دارد فرآیندهایی که این کار را انجام می دهند تجزیه کارکردی نامیده می شوند.</p>
<p> </p>
<p><strong>متعادل سازی </strong><strong>DFD</strong><strong>ها: </strong></p>
<p>زمانی دو سطح از DFD متعادل هستند که جریان ورودی و خروجی مشابه داشته باشند (با اسم کاملا یکسان در جریان ها) این جریان ها همچنین باید از یک منبع ورودی و خروجی برای هر دو سطح DFD باشند.</p>
<p> </p>
<p><strong>سطح۲: </strong></p>
<p>این سطح حاصل شکست کارکردهای یک فرآیند سطح۱ (توسعه یک وضعیت خاص از پردازش سطح۱) در یک نمودار می باشد.</p>
<p> </p>
<p><strong>فرآیند اختصاص شناسه ها در سطوح مختلف </strong><strong>DFD</strong></p>
<p>در سطح زمینه تنها یک پردازش وجود دارد و شناسه خاصی لازم نیست. در سطح۱ پردازش ها یک شناسه دارند که یک عدد صحیح می باشد (مثل ۵) . در سطح۲ شناسه سطح۲ با شناسه سطح۱ پردازش شروع می گردد و به دنبال آن یک خط تیره و عدد صحیح دیگری قرار می گیرد (مثل ۲-۵). در سطوح بعدی این سیستم شماره گذاری به همین شکل ادامه پیدا می کند.</p>
<p> </p>
<p><strong>توقف تجزیه:</strong> زمانی توقف تجزیه صورت می گیرد که کارکرد به اندازه کافی ساده و واضح شده باشد.</p>
<p> </p>
<p><strong>توسعه نمودار جریان داده: (فعالیتهای لازم برای تهیه نمودار جریان داده)</strong></p>
<p>۱ـ مشخص کردن جریان داده های کلیدی با توجه به تحلیل مستندات سیستم</p>
<p>۲ـ مشخص کردن تمام موجودیت های خارجی</p>
<p>۳ـ تعیین ناحیه های کارکردی (این ناحیه ها مکانهای اجرای پردازش می باشند)</p>
<p>۴ـ مشخص کردن تمام مسیر جریان داده ها</p>
<p>۵ـ مشخص کردن محدوده سیستم</p>
<p>۶ـ مشخص کردن تمام فرآیندها</p>
<p>۷ـ مشخص کردن مخزن داده ها</p>
<p>۸ـ مشخص کردن فرآیندها و مخزن داده ها و اثرات آنها بر یکدیگر ۹ـ شرح جزئیات</p>
<p> </p>
<p><strong>کنترل </strong><strong>DFD</strong><strong>ها: چند کنترل ساده وجود دارد:</strong></p>
<p>۱ـ هر پردازش باید حداقل یک ورودی و خروجی داشته باشد</p>
<p>۲ـ هر جریان، پردازش، مخزن داده و موجودیت خارجی باید یک نام منحصربه فرد و با معنی داشته باشد.</p>
<p>۳ـ جریان داده های یکسان باید کاملا وارد شوند و سطح پائین تر DFD را ترک کنند.</p>
]]></content:encoded>
			<wfw:commentRss>http://amfy.ir/?feed=rss2&amp;p=181</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>فصل هشتم طراحی سیستم</title>
		<link>http://amfy.ir/?p=180</link>
		<comments>http://amfy.ir/?p=180#comments</comments>
		<pubDate>Tue, 30 Jun 2009 16:35:54 +0000</pubDate>
		<dc:creator>مهران روشندل</dc:creator>
				<category><![CDATA[پودمان پنجم رشته نرم افزار کامپیوتر]]></category>

		<guid isPermaLink="false">http://amfy.ir/?p=180</guid>
		<description><![CDATA[نمودار جریان داده ها DFD
DFD یک روش مدل سازی می باشد، این نمودارها شامل پردازشها، اطلاعات در جریان به سیستم و نیز روشی که داده ها را در داخل سیستم ذخیره می گردند می باشند.
 
اجزای نمودار جریان داده ها:
۱ـ موجودیت های خارجی ۲ـ جریان داده ها ۳ـ پردازش ها ۴ـ مخزن داده ها
 
جریان داده ها:
جریان [...]]]></description>
			<content:encoded><![CDATA[<p><strong>نمودار جریان داده ها </strong><strong>DFD</strong><strong></strong></p>
<p>DFD یک روش مدل سازی می باشد، این نمودارها شامل پردازشها، اطلاعات در جریان به سیستم و نیز روشی که داده ها را در داخل سیستم ذخیره می گردند می باشند.</p>
<p> </p>
<p><strong>اجزای نمودار جریان داده ها:</strong></p>
<p>۱ـ موجودیت های خارجی ۲ـ جریان داده ها ۳ـ پردازش ها ۴ـ مخزن داده ها</p>
<p> </p>
<p><strong>جریان داده ها:</strong></p>
<p>جریان داده ها حرکت اطلاعات را از یک محل به محل دیگر در سیستم نمایش می دهد</p>
<p> </p>
<p><strong>جریان داده های مجاز: </strong></p>
<p>۱ـ بین پردازش و مخزن داده ها  ۲ـ بین پردازش و موجودیت خارجی ۳ـ بین پردازش و پردازش</p>
<p> </p>
<p><strong>مخزن داده ها:</strong></p>
<p>مخزن داده ها، محل استقرار داده ها را نمایش می دهد، مخزن برای ذخیره اطلاعات داخل سیستم لازم است.</p>
<p><strong> </strong></p>
<p><strong>اجزاء مخزن داده ها:</strong></p>
<p>۱ـ شناسه یا ID    ۲ـ نام مخزن</p>
<p> </p>
<p><strong>انواع مخزن داده ها:</strong></p>
<p><strong>۱ـ مخزن دستی دائمی:</strong> مثل قفسه فایلی، دفتر ثبت و یا کاردکس می باشد و با حرف M و یک شماره نشان داده می شود مانند: M1</p>
<p><strong>2ـ مخزن پایگاه داده دائمی:</strong> مثل یک فایل کامپیوتری برای رکوردهای کارمندان یا فایل دانشجویی یا فایل انبار که شامل یک حرف D و یک شماره می باشد مانند: D1</p>
<p><strong>3ـ مخزن دستی موقت:</strong> مثل کازیه ورود و خروج در سیستم اداری که با حروف TM به همراه یک شماره می باشد. مانند: TM2</p>
<p><strong>4ـ مخزن پایگاه داده موقت:</strong> مثل فایلهایی که برای مرتب نمودن داده ها استفاده می شود و به عنوان فایل واسطه می باشد که با حروف TD به همراه یک شماره می باشد. مانند: TD2</p>
<p> </p>
<p><strong>پردازش ها:</strong> محل رخداد فعالیتها در یک سیستم اطلاعاتی می باشند.</p>
<p><strong> </strong></p>
<p><strong>اجزاء جعبه پردازش:</strong></p>
<p>۱ـ شناسه یا ID  ۲ـ مکان  ۳ـ نام پردازش</p>
<p><strong> </strong></p>
<p><strong>شناسه پردازش:</strong></p>
<p>این شناسه شماره ای دارد و گاهی به دنبال آن شماره دیگری است که با نقطه جدا می گردد. مثل ID 1</p>
<p><strong>مکان: </strong></p>
<p>جایی که در آن فعالیت انجام می گیرد، ممکن است نام قسمت، میز و یا حتی نام کارمند باشد مثل میز تحویل سفارشات</p>
<p><strong>نام پردازش: </strong></p>
<p>از یک فعل امری و به دنبال آن از بقیه فعالیت تشکیل شده است که باید با معنی و منحصر به فرد باشد. مانند عملیات کرایه دادن</p>
<p> </p>
<p><strong>فعل:</strong></p>
<p>یک بخش از جمله که از یک یا تعدادی کلمه ساخته شده است و یک عمل، تجزیه و رویداد را در بردارد.</p>
<p> </p>
<p><strong>کاربرد افعال:</strong> یک فرآیند بدون ورودی یا خروجی به طور کلی کاری را انجام نمی دهد، بلکه افعال کارها را انجام می دهند، افعال امری سفارش و دستور می دهند.</p>
<p><strong>فعل امری:</strong> فعلی که برای توضیح پیشنهاد، نصیحت یا درخواست به کار می رود.</p>
<p><strong>افعال امری مفید برای </strong><strong>DFD</strong><strong>ها:</strong> فراهم بیاور، اقدام کن، انجام بده، اداره کن، به انجام برسان</p>
]]></content:encoded>
			<wfw:commentRss>http://amfy.ir/?feed=rss2&amp;p=180</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>دعوت به همکاری</title>
		<link>http://amfy.ir/?p=51</link>
		<comments>http://amfy.ir/?p=51#comments</comments>
		<pubDate>Tue, 25 Nov 2008 21:46:50 +0000</pubDate>
		<dc:creator>مهران روشندل</dc:creator>
				<category><![CDATA[دسته‌بندی نشده]]></category>

		<guid isPermaLink="false">http://amfy.ir/?p=51</guid>
		<description><![CDATA[

از کلیه دوستان عزیزی که مایل به همکاری در سایت جدید هستند خواهشمند است به آدرس زیر ایمیل فرستاده و نوع و نحوه همکاری خود را تشریح تا از آنان در طراحی و انجام فعالیتهای سایت جدید استفاده گردد.
info@AMFY.ir
 
 

]]></description>
			<content:encoded><![CDATA[<div></div>
<p><span class="Apple-style-span" style="word-spacing: 0px; text-transform: none; color: #000000; text-indent: 0px; font-family: Tahoma; white-space: normal; letter-spacing: normal; border-collapse: separate; text-align: right; orphans: 2; widows: 2; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0;"></p>
<p align="justify">از کلیه دوستان عزیزی که مایل به همکاری در سایت جدید هستند خواهشمند است به آدرس زیر ایمیل فرستاده و نوع و نحوه همکاری خود را تشریح تا از آنان در طراحی و انجام فعالیتهای سایت جدید استفاده گردد.</p>
<p align="center"><a style="color: #444444; text-decoration: none;" href="mailto:info@amfy.ir"><span style="font-size: large;">info@AMFY.ir</span></a></p>
<p> </p>
<p> </p>
<p></span></p>
]]></content:encoded>
			<wfw:commentRss>http://amfy.ir/?feed=rss2&amp;p=51</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>فصل دوم : سیستم فایل</title>
		<link>http://amfy.ir/?p=29</link>
		<comments>http://amfy.ir/?p=29#comments</comments>
		<pubDate>Tue, 25 Nov 2008 19:14:56 +0000</pubDate>
		<dc:creator>مهران روشندل</dc:creator>
				<category><![CDATA[ذخیره و بازیابی اطلاعات]]></category>
		<category><![CDATA[پودمان چهارم رشته نرم افزار کامپیوتر]]></category>

		<guid isPermaLink="false">http://amfy.ir/?p=29</guid>
		<description><![CDATA[تعاریف اولیه :
نوع موجودیت :
   به فرد، شیء، پدیده یا مفهومی که می خواهیم در مورد آن «اطلاع» داشته باشیم، موجودیت       گفته می شود.
  
محیط عملیاتی :
به محیطی که در رابطه با آن می خواهیم یک سری داده ها را ذخیره، بازیابی و پردازش کنیم محیط عملیاتی یا «خرد جهان واقع» گفته می شود.
 
فیلد:
مکان ذخیره شدن [...]]]></description>
			<content:encoded><![CDATA[<p><strong><span lang="AR-SA">تعاریف اولیه</span></strong><strong><span> :</span></strong></p>
<p><strong><span lang="AR-SA">نوع موجودیت</span></strong><strong><span> :</span></strong><span><br />
  <span> </span><span lang="AR-SA">به فرد، شیء، پدیده</span><span lang="AR-SA"> </span><span lang="AR-SA">یا مفهومی که می خواهیم در مورد آن</span><span> «</span><span lang="AR-SA">اطلاع</span><span>» </span><span lang="AR-SA">داشته باشیم، موجودیت</span><span>       </span><span lang="AR-SA">گفته می شود</span><span>.</span></span></p>
<p><span>  </span></p>
<p><strong><span lang="AR-SA">محیط عملیاتی</span></strong><strong><span> :<br />
</span></strong><span lang="AR-SA">به محیطی که در رابطه با آن می خواهیم یک سری داده ها را ذخیره،</span><span lang="AR-SA"> </span><span lang="AR-SA">بازیابی و پردازش کنیم محیط عملیاتی یا</span><span> «</span><span lang="AR-SA">خرد جهان واقع</span><span>» </span><span lang="AR-SA">گفته می شود</span><span>.<br />
 </span></p>
<p><strong><span lang="AR-SA">فیلد</span></strong><strong><span>:<br />
</span></strong><span lang="AR-SA">مکان ذخیره شدن یک واحد معنایی</span><span> ( semantic data unit ) </span><span lang="AR-SA">یا یک فقره</span><span lang="AR-SA"> </span><span lang="AR-SA">اطلاع را فیلد گویند. فیلد کوچکترین واحد اطلاع در فایل است که معنایی</span><span lang="AR-SA"> </span><span lang="AR-SA">منطقی دارد. واحد معنایی داده ، حالت اتوماتیک یا تجزیه ناپذیری دارد. طول</span><span lang="AR-SA"> </span><span lang="AR-SA">فیلد می تواند یک کاراکتر یا حتی یک بیت باشد</span><span>.<br />
<strong> <span id="more-29"></span><br />
</strong></span></p>
<p><strong><span lang="AR-SA">اطلاع</span></strong><strong><span> :</span></strong><span><br />
</span><span lang="AR-SA">هر صفت خاصه از دو مؤلفه تشکیل شده است: یکی اسم صفت خاصه و دیگری مقدار</span><span lang="AR-SA"> </span><span lang="AR-SA">صفت خاصه</span><span>.<br />
</span><span lang="AR-SA">به مجموعه این دو مؤلفه</span><span> «</span><span lang="AR-SA">اطلاع</span><span>» </span><span lang="AR-SA">گفته می شود</span><span>.<br />
</span><span lang="AR-SA">مثال</span><span> :<br />
«</span><span lang="AR-SA">نام خانوادگی</span><span>» </span><span lang="AR-SA">صفت خاصه و</span><span> «</span><span lang="AR-SA">عظیمی</span><span>» </span><span lang="AR-SA">مقدار صفت خاصه است. حال عبارت زیر یک</span><span lang="AR-SA"> </span><span lang="AR-SA">اطلاع است</span><span>.<br />
</span><span lang="AR-SA">عظیمی=نام خانوادگی</span><span><br />
 </span></p>
<p><strong><span lang="AR-SA">رکورد</span></strong><strong><span> :</span></strong></p>
<p><strong><span><br />
</span></strong><span lang="AR-SA">رکورد را از ۳ جنبه می توان بررسی کرد : ۱- رکورد در سطح انتزاعی</span><span> ( Abstractive ) </span><span lang="AR-SA">، </span><span>۲- </span><span lang="AR-SA">رکورد در سطح کاربر ( سطح منطقی ) ، ۳- رکورد در سطح</span><span lang="AR-SA"> </span><span lang="AR-SA">فیزیکی ( محیط ذخیره سازی</span><span> )</span></p>
<p><span><br />
<strong>۱- </strong></span><strong><span lang="AR-SA">رکورد در سطح انتزاعی</span></strong><strong><span> ( Abstractive )</span></strong><span><br />
</span><span lang="AR-SA">در سطح انتزاعی، رکورد را مستقل از جنبه های نمایشی آن بصورت کلی می بینیم</span><span>. </span><span lang="AR-SA">مثلاً می گوییم برای موجودیت دانشجو صفات خاصه نام، فامیلی و معدل را می</span><span lang="AR-SA"> </span><span lang="AR-SA">خواهیم . رکورد در این سطح یک شیء انتزاعی است</span><span>.</span></p>
<p><span><br />
<strong>۲- </strong></span><strong><span lang="AR-SA">رکورد منطقی</span></strong><strong><span> ( Logical Record ) :</span></strong><span><br />
</span><span lang="AR-SA">در این سطح رکورد از دیدگاه برنامه نویس مشخص می شود. و به این دلیل به آن</span><span lang="AR-SA"> </span><span lang="AR-SA">رکورد برنامه ساز هم می گویند. به عبارتی دیگر رکورد منطقی مجموعه ای از</span><span lang="AR-SA"> </span><span lang="AR-SA">تعدادی فیلد است که دارای ساختار مشخص و مبتنی بر طرحی خاص و نامدار می</span><span lang="AR-SA"> </span><span lang="AR-SA">باشد</span><span>.</span></p>
<p><span><br />
</span><span lang="AR-SA">دو طرح کلی برای ساختار رکورد داریم : ۱- طرح با قالب ثابت مکان</span><span> ( Fixed Positional ) </span><span lang="AR-SA">، </span><span>۲- </span><span lang="AR-SA">طرح با قالب غیر ثابت مکان</span><span> ( Non Fixed &#8211; Non Positional ) </span></p>
<p><span><br />
1- </span><span lang="AR-SA">در نوع ثابت مکان, مکان هر فیلد در رکورد ثابت بوده و بنابراین نیازی به</span><span lang="AR-SA"> </span><span lang="AR-SA">ذخیره سازی اسم صفت خاصه در مقدار آن نیست. در این ساختار معمولاً تعداد</span><span lang="AR-SA"> </span><span lang="AR-SA">فیلدها و طول هر کدام از آنها در تمام نمونه های رکورد ثابت است</span><span>.</span></p>
<p><span><br />
</span><span lang="AR-SA">مثال</span><span> : </span></p>
<p align="center"><span><!--[if gte vml 1]><v:shapetype  id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t"  path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"> <v:stroke joinstyle="miter" /> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0" /> <v:f eqn="sum @0 1 0" /> <v:f eqn="sum 0 0 @1" /> <v:f eqn="prod @2 1 2" /> <v:f eqn="prod @3 21600 pixelWidth" /> <v:f eqn="prod @3 21600 pixelHeight" /> <v:f eqn="sum @0 0 1" /> <v:f eqn="prod @6 1 2" /> <v:f eqn="prod @7 21600 pixelWidth" /> <v:f eqn="sum @8 21600 0" /> <v:f eqn="prod @7 21600 pixelHeight" /> <v:f eqn="sum @10 21600 0" /> </v:formulas> <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" /> <o:lock v:ext="edit" aspectratio="t" /> </v:shapetype><v:shape id="_x0000_i1039" type="#_x0000_t75" style='width:120pt;  height:37.5pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image001.gif" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image001.gif"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\b1.gif" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/b1.gif" border="0" alt="" /></span></p>
<p><span> </span><span lang="AR-SA">در نوع غیر ثابت مکان،</span><span lang="AR-SA"> </span><span lang="AR-SA">در هر نمونه هم اسم صفت خاصه و هم مقدار آن ذخیره می گردد. مکان فیلد در</span><span lang="AR-SA"> </span><span lang="AR-SA">رکورد ثابت نمی باشد. تعداد فیلدها و طول آنها نیز ممکن است در رکورد های</span><span lang="AR-SA"> </span><span lang="AR-SA">مختلف متفاوت باشد. فرم کلی این رکوردها به صورت زیر است</span><span> :<br />
</span><span>                                                                                </span><span>A1=V1 , A2=V2 , &#8230;.<br />
Ai </span><span lang="AR-SA">اسم صفت خاصه و</span><span> Vi </span><span lang="AR-SA">مقدار صفت خاصه است مثل</span><span> :<br />
</span><span>          </span><span lang="AR-SA">نام=علی ، فامیلی=کریمی ، رشته=برق</span><span><br />
</span><span>          </span><span lang="AR-SA">نام=حسین ، رشته=فیزیک</span></p>
<p><span><br />
</span><span lang="AR-SA">از یک جنبه دیگر رکوردها را می توان به دو دسته کلی با طول ثابت و طول</span><span lang="AR-SA"> </span><span lang="AR-SA">متغیر تقسیم بندی کرد. در حالت کلی در هر دو ساختار ثابت مکان و غیر ثابت</span><span lang="AR-SA"> </span><span lang="AR-SA">مکان، طول رکورد می تواند ثابت یا متغیر باشد ولی اغلب در نوع اول ثابت و</span><span lang="AR-SA"> </span><span lang="AR-SA">در نوع دوم متغیر است</span><span>.<br />
 </span></p>
<p><strong><span lang="AR-SA">علل متغیر شدن طول رکورد</span></strong><strong><span lang="AR-SA"> </span><span lang="AR-SA">عبارتند از</span></strong><strong><span> :</span></strong></p>
<p><span>۱- </span><span lang="AR-SA">طول بعضی فیلدها ( مثل آدرس ) ممکن است متغیر باشد</span><span>.<br />
۲- </span><span lang="AR-SA">تعداد فیلدهای نمونه های مختلف یک نوع موجودیت ممکن است متغیر باشد</span><span>.<br />
۳- </span><span lang="AR-SA">به علت فقره اطلاع تکرار شونده یا گروه اطلاع تکرارشونده به عبارتی دیگر</span><span lang="AR-SA"> </span><span lang="AR-SA">ممکن است صفت خاصه ساده یا مرکب چند مقداری باشد</span><span>.</span></p>
<p><span><br />
<strong>۳- </strong></span><strong><span lang="AR-SA">رکورد فیزیکی یا رکورد ذخیره شده</span></strong><strong><span> ( Stored Record )</span></strong><span><br />
</span><span lang="AR-SA">رکورد فیزیکی هنگام ذخیره شدن رکورد در سطح حافظه جانبی ( مثل دیسک ) ذخیره</span><span lang="AR-SA"> </span><span lang="AR-SA">می شود و ممکن است اطلاعات دیگری نیز به آن اضافه شود و یا ساختار آن قدری</span><span lang="AR-SA"> </span><span lang="AR-SA">تغییر کند. معمولاً رکورد ذخیره شده ( فیزیکی ) دارای دو بخش مجزای داده ای</span><span lang="AR-SA"> </span><span lang="AR-SA">و کنترلی می باشد. به بخش کنترلی بخش پیشوندی، بخش غیر داده ای یا</span><span> Meta Section </span><span lang="AR-SA">نیز می گویند. بخش کنترلی اغلب توسط سیستم فایل استفاده شده و از</span><span lang="AR-SA"> </span><span lang="AR-SA">دید برنامه مخفی است</span><span>.</span></p>
<p><span><br />
</span><span lang="AR-SA">اغلب در بخش کنترلی اطلاعات زیر ذخیره می شود</span><span> :<br />
۱- </span><span lang="AR-SA">طول رکورد ، ۲- نوع رکورد ، ۳- اشاره گرها ، ۴- پرچمهای</span><span> ( Flags ) </span><span lang="AR-SA">عملیاتی و حفاظتی ، ۵- اطلاعات خاص برای بعضی ساختارها</span><span><br />
 </span></p>
<p><strong><span lang="AR-SA">کلید</span></strong><strong><span> ( Key ) :<br />
</span></strong><span lang="AR-SA">صفت خاصه یا ترکیبی از چند صفت خاصه که در تمام نمونه های مختلف یک</span><span lang="AR-SA"> </span><span lang="AR-SA">مجودیت, مقدار یکتایی داشته باشد را کلید گویند. طول کلید حتی الامکان باید</span><span lang="AR-SA"> </span><span lang="AR-SA">کوتاه باشد. یک فایل ممکن است چند کلید داشته باشد. آن کلیدی که طول کوتاه</span><span lang="AR-SA"> </span><span lang="AR-SA">داشته باشد و از نظر برنامه نویس مهم باشد را کلید اصلی</span><span> ( Primary Key ) </span><span lang="AR-SA">و</span><span lang="AR-SA"> </span><span lang="AR-SA">بقیه را کلید ثانوی</span><span> ( Secondary Key ) </span><span lang="AR-SA">گویند</span><span>.<br />
 </span></p>
<p><strong><span lang="AR-SA">بلاک بندی</span></strong><strong><span> ( Blocking ) :<br />
</span></strong><span lang="AR-SA">بلاک واحد رد و بدل اطلاعات بین حافظه جانبی و حافظه اصلی</span><span> ( RAM ) </span><span lang="AR-SA">توسط</span><span lang="AR-SA"> </span><span lang="AR-SA">سیستم فایل است. البته در یک عمل</span><span> I/O </span><span lang="AR-SA">ممکن است چندین بلوک یکباره خوانده و</span><span lang="AR-SA"> </span><span lang="AR-SA">یا نوشته شوند. از نظر برنامه پردازشگر ، فایل مجموعه ای از رکوردها با</span><span lang="AR-SA"> </span><span lang="AR-SA">ساختار مشخص است ولی از نظر سیستم فایل، یک فایل از تعدادی بلاک تشکیل شده</span><span lang="AR-SA"> </span><span lang="AR-SA">است . نمایش ساده بلاک به صورت زیر</span><span lang="AR-SA"> </span><span lang="AR-SA">است</span><span> :<br />
FPRIVATE &#8220;TYPE=PICT;ALT=&#8221;<br />
 </span></p>
<p align="center"><span><!--[if gte vml 1]><v:shape  id="_x0000_i1038" type="#_x0000_t75" style='width:243pt;height:63.75pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\b2.jpg" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/b2.jpg" border="0" alt="" width="324" height="85" /></span></p>
<p><span lang="AR-SA">به تعداد رکوردهای موجود در</span><span lang="AR-SA"> </span><span lang="AR-SA">هر بلاک ضریب بلاک بندی گفته می شود آن را با</span><span> Bf ( Blocking Factor ) </span><span lang="AR-SA">نمایش</span><span lang="AR-SA"> </span><span lang="AR-SA">می دهیم. ما بین بلاکها یک فضای بلا استفاده</span><span> ( Gap ) </span><span lang="AR-SA">یا</span><span> IBG ( Inter Block Gap ) </span><span lang="AR-SA">وجود دارد که باعث هدر رفتن فضای ذخیره سازی می شود. طول بلاک یا</span><span> Bf </span><span lang="AR-SA">تأثیر بسزایی روی میزان استفاده از فضا و سرعت عملیات دارد</span><span>.</span></p>
<p><span><br />
</span><span lang="AR-SA">بلاک در دیسک می تواند یک سکنور یا ترکیبی از چند سکتور سخت افزاری ، یک</span><span lang="AR-SA"> </span><span lang="AR-SA">شیار یا بخشی از یک شیار باشد. یک بلوک را نمی توان بین دو یا چند شیار</span><span lang="AR-SA"> </span><span lang="AR-SA">تقسیم کرد</span><span>.</span></p>
<p><span><br />
</span><span lang="AR-SA">بعضی دیسک گردان ها</span><span> ( Drivers ) </span><span lang="AR-SA">از آدرس دهی سکتوری و بعضی دیگر از آدرس</span><span lang="AR-SA"> </span><span lang="AR-SA">دهی بلوکی ( و یا هر دو ) استفاده می کنند</span><span>.</span></p>
<p><span> <br />
</span><span lang="AR-SA">اغلب در سازماندهی سکتوری، اندازه سکتورها ثابت است ولی در آدرس دهی بلوکی،</span><span lang="AR-SA"> </span><span lang="AR-SA">اندازه بلوکها می تواند متغیر باشد</span><span>.</span></p>
<p><span><br />
</span><span lang="AR-SA">تعیین درست اندازه بلاک و یا به عبارتی تعیین ضریب</span><span> Bf </span><span lang="AR-SA">توسط پردازشگر فایل</span><span lang="AR-SA"> </span><span lang="AR-SA">از دو جنبه بسیار مهم است</span><span> : </span></p>
<p><span><br />
</span><strong><span lang="AR-SA">الف</span></strong><strong><span>)</span></strong><span> </span><span lang="AR-SA">بلاک بندی باید بگونه ای باشد که برای خواندن یک رکورد حتی</span><span lang="AR-SA"> </span><span lang="AR-SA">الامکان فقط یک بلاک بازیابی شود</span><span>.</span></p>
<p><span><br />
</span><strong><span lang="AR-SA">ب</span></strong><strong><span>)</span></strong><span> </span><span lang="AR-SA">از آنجا که همراه بلاکها یک سربار غیرداده ای ناشی از شکافها و</span><span lang="AR-SA"> </span><span lang="AR-SA">اطلاعات کنترلی وجود دارد، اندازه بلاکها در مقایسه با این قسمت غیرداده ای</span><span lang="AR-SA"> </span><span lang="AR-SA">باید خیلی بزرگتر باشد</span><span>. </span></p>
<p><span><br />
</span><span lang="AR-SA">با افزایش طول بلاک مشکل پراکندگی داخلی</span><span> ( Internal Fragmentation ) </span><span lang="AR-SA">در سطح</span><span lang="AR-SA"> </span><span lang="AR-SA">شیار نیز افزایش می یابد و فضای بیشتری در انتهای شیار به هدر می رود</span><span>. </span></p>
<p><span><br />
</span><strong><span lang="AR-SA">روشهای تعیین محدوده رکورد در بلاک</span></strong><strong><span> :</span></strong></p>
<p><span lang="AR-SA">اگر طول رکوردهای فایل ثابت و معین باشد می توان طول رکورد را مثلاً در</span><span lang="AR-SA"> </span><span lang="AR-SA">راهنمای فایل و یا در مکانی در خود فایل ذخیره کرد. هنگامی که طول رکوردها</span><span lang="AR-SA"> </span><span lang="AR-SA">متغیر باشد برای معین کردن محدوده آنها در بلاک می توان از روشهای زیر</span><span lang="AR-SA"> </span><span lang="AR-SA">استفاده کرد</span><span> :<br />
۱) </span><span lang="AR-SA">ذخیره یک علامت ویژه ( مثلاً علامت</span><span> s </span><span lang="AR-SA">در شکل زیر ) که انتهای رکورد را</span><span lang="AR-SA"> </span><span lang="AR-SA">نشان دهد</span><span> : </span></p>
<p align="center"><span><!--[if gte vml 1]><v:shape  id="_x0000_i1037" type="#_x0000_t75" style='width:246.75pt;height:63.75pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image003.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image003.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\b3.jpg" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/b3.jpg" border="0" alt="" width="329" height="85" /></span></p>
<p><span>۲) </span><span lang="FA">ذخیره طول رکورد در ابتدای آن</span></p>
<p align="center"><span><!--[if gte vml 1]><v:shape  id="_x0000_i1036" type="#_x0000_t75" style='width:237pt;height:47.25pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image004.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image004.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\b4.jpg" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/b4.jpg" border="0" alt="" width="316" height="63" /></span></p>
<p><span><br />
۳) </span><span lang="AR-SA">ذخیره آدرس نسبی هر رکورد نسبت به ابتدای بلاک در یک جدول مکان نما</span><span>.</span></p>
<p align="center"><span><!--[if gte vml 1]><v:shape  id="_x0000_i1035" type="#_x0000_t75" style='width:253.5pt;height:47.25pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image005.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image005.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\b5.jpg" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/b5.jpg" border="0" alt="" width="338" height="63" /></span></p>
<p><span>۴) </span><span lang="FA">استفاده از یک روش ترکیبی برای بالا</span><span lang="FA"> </span><span lang="FA">بردن کارایی(ترکیب روش های ۲ و ۳</span><span>)</span></p>
<p align="center"><span><!--[if gte vml 1]><v:shape  id="_x0000_i1034" type="#_x0000_t75" style='width:246.75pt;height:61.5pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image006.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image006.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\b6.jpg" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/b6.jpg" border="0" alt="" width="329" height="82" /></span></p>
<p> </p>
<p><strong><span lang="AR-SA">روشهای مختلف بلاک بندی</span></strong><strong><span> :</span></strong><span><br />
</span></p>
<p><span lang="AR-SA"><strong>روشهای معروف بلاک یندی</strong></span><strong></strong><span lang="AR-SA"><strong> </strong></span><span lang="AR-SA"><strong>عبارتند از</strong></span><strong></strong><span><strong> :</strong></span></p>
<p><span> <strong>۱- </strong></span><strong><span lang="AR-SA">بلاک بندی رکوردهای با طول ثابت</span></strong><strong><span> :</span></strong><span> </span><span lang="AR-SA">که معمولاً یکپاره یا</span><span> unspanned </span><span lang="AR-SA">هستند</span><span>.</span></p>
<p align="center"><span><!--[if gte vml 1]><v:shape  id="_x0000_i1033" type="#_x0000_t75" style='width:330.75pt;height:99pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image007.gif" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image007.gif"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\b7.gif" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/b7.gif" border="0" alt="" width="441" height="132" /></span></p>
<p style="text-align: right; "><strong><span lang="AR-SA">پارامترهای مورد استفاده</span></strong><strong><span> :<br />
</span></strong><strong><span> </span></strong><span>W : </span><span lang="AR-SA">میزان حافظه هرز</span><span><br />
</span><span> </span><span>WB : </span><span lang="AR-SA">میزان حافظه هرز با ازاء هر بلاک</span><span><br />
</span><span> </span><span>WR : </span><span lang="AR-SA">میزان حافظه هرز با ازاء هر رکورد</span><span><br />
</span><span>  </span><span>Tf : </span><span lang="AR-SA">تعداد بلاکها در شیار یا فاکتور</span><span lang="AR-SA"> </span><span lang="AR-SA">تراکینگ</span><span><br />
</span><span> </span><span>W1 : </span><span lang="AR-SA">حافظه هرز ناشی از گپ</span><span><br />
</span><span> </span><span>W2 : </span><span lang="AR-SA">حافظه هرز ناشی از نگنجیدن رکورد آخر در</span><span lang="AR-SA"> </span><span lang="AR-SA">بلاک</span><span><br />
</span><span> </span><span>W3 : </span><span lang="AR-SA">حافظه هرز ناشی از نگنجیدن بلاک آخر در</span><span lang="AR-SA"> </span><span lang="AR-SA">شیار</span><span><br />
 </span></p>
<p><span> </span><span lang="AR-SA">مقدار</span><span lang="AR-SA"> </span><span lang="AR-SA">متوسط</span><span> W2 </span><span lang="AR-SA">برابر</span><span> R/2 </span><span lang="AR-SA">می باشد</span><span>.<br />
 </span></p>
<p><strong><span lang="AR-SA">فرمولهای مربوطه</span></strong><strong><span> :</span></strong></p>
<p align="center"><span>       </span><span><!--[if gte vml 1]><v:shape  id="_x0000_i1032" type="#_x0000_t75" style='width:42.75pt;height:30.75pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image008.gif" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image008.gif"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\bfs.gif" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/bfs.gif" border="0" alt="" width="57" height="41" /></span><span>           </span><span><!--[if gte vml 1]><v:shape  id="_x0000_i1031" type="#_x0000_t75" style='width:93.75pt;height:30pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image009.gif" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image009.gif"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\b8.gif" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/b8.gif" border="0" alt="" width="125" height="40" /></span></p>
<p><span><br />
<strong>۲- </strong></span><strong><span lang="AR-SA">بلاک بندی رکوردهای با طول متغیر و دوپاره</span></strong><strong><span> ( spanned ) : </span></strong></p>
<p><span><!--[if gte vml 1]><v:shape  id="_x0000_i1030" type="#_x0000_t75" style='width:375pt;height:99pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image010.gif" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image010.gif"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\b9.gif" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/b9.gif" border="0" alt="" width="500" height="132" /></span></p>
<p><span lang="AR-SA">در شکل فوق چون</span><span> R3 </span><span lang="AR-SA">به طور کامل درون بلاک اول نمی گنجد به صورت دوپاره</span><span lang="AR-SA"> </span><span lang="AR-SA">ذخیره می شود</span><span>.<br />
 </span></p>
<p><strong><span lang="AR-SA">فرمولهای مربوطه</span></strong><strong><span> :</span></strong></p>
<p align="center"><span><!--[if gte vml 1]><v:shape  id="_x0000_i1029" type="#_x0000_t75" style='width:50.25pt;height:27pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image011.gif" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image011.gif"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\b11.gif" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/b11.gif" border="0" alt="" width="67" height="36" /></span><span>          </span><span><!--[if gte vml 1]><v:shape  id="_x0000_i1028" type="#_x0000_t75" style='width:117pt;height:30pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image012.gif" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image012.gif"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\b10.gif" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/b10.gif" border="0" alt="" width="156" height="40" /></span></p>
<p> </p>
<p><strong>۳- </strong><strong><span lang="AR-SA">بلاک بندی رکوردهای با طول متغیر و یکپاره</span></strong><strong><span> ( unspanned ) : </span></strong></p>
<p align="center"><span><!--[if gte vml 1]><v:shape  id="_x0000_i1027" type="#_x0000_t75" style='width:375pt;height:84pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image013.gif" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image013.gif"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\b12.gif" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/b12.gif" border="0" alt="" width="500" height="112" /></span></p>
<p><strong><span lang="AR-SA">فرمولهای مربوطه</span></strong><strong><span> :</span></strong></p>
<p align="center"><strong><span><!--[if gte vml 1]><v:shape  id="_x0000_i1026" type="#_x0000_t75" style='width:56.25pt;height:32.25pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image014.gif" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image014.gif"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\b14.gif" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/b14.gif" border="0" alt="" width="75" height="43" /></span></strong><strong><span>             </span></strong><strong><span><!--[if gte vml 1]><v:shape  id="_x0000_i1025" type="#_x0000_t75" style='width:120pt;height:30pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image015.gif" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image015.gif"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20دوم%20-%20lesson%20two_files\b13.gif" /> </v:shape><![endif]--><img style="border: 0px initial initial;" src="http://amfy.ir/wp-content/uploads/2008/11/b13.gif" border="0" alt="" width="160" height="40" /></span></strong></p>
<p><span> </span></p>
<p class="MsoNormal"><span> </span></p>
]]></content:encoded>
			<wfw:commentRss>http://amfy.ir/?feed=rss2&amp;p=29</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>فصل اول: رسانه های ذخیره سازی</title>
		<link>http://amfy.ir/?p=15</link>
		<comments>http://amfy.ir/?p=15#comments</comments>
		<pubDate>Sun, 23 Nov 2008 18:03:02 +0000</pubDate>
		<dc:creator>مهران روشندل</dc:creator>
				<category><![CDATA[ذخیره و بازیابی اطلاعات]]></category>
		<category><![CDATA[پودمان چهارم رشته نرم افزار کامپیوتر]]></category>

		<guid isPermaLink="false">http://amfy.ir/?p=15</guid>
		<description><![CDATA[ حافظه
 رسانه های ذخیره سازی چه در محیط درون ماشینی و چه در محیط برون ماشینی حافظه نام دارند.
حافظه ها به دو دستة کلی تقسیم می شوند :
۱- حافظه های درون ماشینی 
۲- حافظه های برون ماشینی 
حافظه های برون ماشینی گسترش حافظه های درون ماشینی با ظرفیت بیشتر و سرعت دستیابی کمتر هستند.
 

ویژگیهای مشترک انواع مختلف [...]]]></description>
			<content:encoded><![CDATA[<p> <strong>حافظه</strong></p>
<p class="MsoNormal"><span lang="FA"> رسانه های ذخیره سازی چه در محیط درون ماشینی و چه در محیط برون ماشینی حافظه نام دارند.</span></p>
<p class="MsoNormal"><span lang="FA">حافظه ها به دو دستة کلی تقسیم می شوند :</span></p>
<p class="MsoNormal"><span lang="FA">۱- حافظه های درون ماشینی </span></p>
<p class="MsoNormal"><span lang="FA">۲- حافظه های برون ماشینی </span></p>
<p class="MsoNormal"><span lang="FA">حافظه های برون ماشینی گسترش حافظه های درون ماشینی با ظرفیت بیشتر و سرعت دستیابی کمتر هستند.</span></p>
<p class="MsoNormal"><span lang="FA"> <span id="more-15"></span><br />
</span></p>
<p class="MsoNormal"><strong><span lang="FA">ویژگیهای مشترک انواع مختلف حافظه ها</span></strong></p>
<p class="MsoNormal"><span lang="AR-SA">۱٫</span><span lang="AR-SA">       </span><span lang="FA">ظرفیت ( </span><span>Capacity</span><span lang="FA"> ) : ظرفیت حافظه به بیت یا بایت یا اضعاف آن بیان می شود.</span></p>
<p class="MsoNormal" style="text-align: left; "><span>۱KB=1024 B=2<sup>10</sup> B</span></p>
<p class="MsoNormal" style="text-align: left; "><span>1MB=1024 KB=2<sup>20</sup> B</span></p>
<p class="MsoNormal" style="text-align: left; "><span>1GB=1024 MB=2<sup>30</sup> B</span></p>
<p class="MsoNormal" style="text-align: left; "><span>1TB=1024 GB=2<sup>40</sup> B</span></p>
<p class="MsoNormal"><span lang="AR-SA"> </span></p>
<p class="MsoNormal"><span lang="AR-SA">۲٫</span><span lang="AR-SA">       </span><span lang="FA">سرعت انتقال ( </span><span>Transfer Rate</span><span lang="FA"> ) : کمیتی از اطلاعات قابل انتقال از حافظه یا به حافظه </span></p>
<p class="MsoNormal"><span lang="AR-SA">۳٫</span><span lang="AR-SA">       </span><span lang="FA">زمان دستیابی ( </span><span>Access Time</span><span lang="FA"> ) : مدت زمان بین لحظه صادر شدن دستور خواندن / نوشتن تا لحظه ای که دستیابی به داده موجود در حافظه اصلی (</span><span>word</span><span lang="FA">) یا حافظة خارجی (</span><span>Block</span><span lang="FA">) انجام می گیرد. </span></p>
<p class="MsoNormal"><span lang="AR-SA">۴٫</span><span lang="AR-SA">       </span><span lang="FA">آدرس پذیری ( </span><span>Addressability</span><span lang="FA"> ) : می توان اطلاعات حافظه را آدرس دهی کرد. </span></p>
<p class="MsoNormal"><span lang="AR-SA">۵٫</span><span lang="AR-SA">       </span><span lang="FA">نوشتن و خواندن ( </span><span>R/W</span><span lang="FA"> ) : می توان اطلاعات را در حافظه نوشت و یا خواند ( </span><span>Fetch</span><span lang="FA"> ) </span></p>
<p class="MsoNormal"><span lang="AR-SA">6.</span><span lang="AR-SA">       </span><span lang="FA">دستیابی پذیری ( </span><span>Accessibility</span><span lang="FA"> ) : عمل </span><span>R/W</span><span lang="FA"> در حافظه باید از طریق مکانیسم آدرس دهی صورت پذیرد.</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="AR-SA">علت استفاده از حافظه های برون ماشینی :</span></strong></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="AR-SA">۱٫</span><span lang="AR-SA">       </span><span lang="FA">محدود بودن ظزفیت حافظه های درون ماشینی </span></p>
<p class="MsoNormal"><span lang="AR-SA">۲٫</span><span lang="AR-SA">       </span><span lang="FA">گران بودن رسانه های ذخیره سازی سریع </span></p>
<p class="MsoNormal"><span lang="AR-SA">۳٫</span><span lang="AR-SA">       </span><span lang="FA">عدم لزوم ذخیرة تمام اطلاعات در حافظه های درون ماشینی </span></p>
<p class="MsoNormal"><span lang="AR-SA">۴٫</span><span lang="AR-SA">       </span><span lang="FA">نامانا بودن حافظه های درون ماشینی </span></p>
<p class="MsoNormal"><span lang="AR-SA">۵٫</span><span lang="AR-SA">       </span><span lang="FA">نیاز به دسترسی همروند ( </span><span>concurrent</span><span lang="FA"> ) به داده ها توسط چند فرایند</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="AR-SA">مقایسه دو نوع حافظه</span></strong></p>
<p class="MsoNormal"><span lang="FA">۱٫     بالا بودن ظرفیت حافظه های برون ماشینی</span></p>
<p class="MsoNormal"><span lang="FA">۲٫     بالا بودن هزینة یک بایت ( </span><span>cpb</span><span lang="FA"> ) در حافظه های درون ماشینی ( </span><span>cpb : cost per byte</span><span lang="FA"> )</span></p>
<p class="MsoNormal"><span lang="FA">3.     بالا بودن سرعت دستیابی در حافظه های درون ماشینی</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="AR-SA">رده بندی حافضه ها</span></strong></p>
<p class="MsoNormal"><span lang="AR-SA"> </span></p>
<p class="MsoNormal"><span lang="FA">۱٫     حافظه های درون ماشینی ( ثبات ( </span><span>register</span><span lang="FA"> ) ، حافظه نهان ( </span><span>cache</span><span lang="FA"> ) ، حافظة اصلی )</span></p>
<p class="MsoNormal"><span lang="FA">۲٫     دیسک مغناطیسی</span></p>
<p class="MsoNormal"><span lang="FA">۳٫     دیسک نوری ( </span><span>Optical Disk</span><span lang="FA">) و نوارهای ظرفیت بالا ( </span><span>High Density Tape</span><span lang="FA"> )</span></p>
<p class="MsoNormal"><span lang="FA">4.     کارتریج و نوار منگنه شدنی</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="AR-SA">انواع حافظه های برون ماشینی از نظر تکنولوژی ساخت</span></strong></p>
<p class="MsoNormal"><span lang="AR-SA">۱٫</span><span lang="AR-SA">       </span><span lang="FA">الکترومکانیک ( </span><span>Electro-Mechanic</span><span lang="FA"> ) ( کارت منگنه شدنی ، نوار منگنه شدنی ) </span></p>
<p class="MsoNormal"><span lang="AR-SA">۲٫</span><span lang="AR-SA">       </span><span lang="FA">الکترمغناطیس ( </span><span>Electro-Magnetic</span><span lang="FA"> ) ( نوار مغناطیسی ، دیسک مغناطیسی ، طبله ( </span><span>Drum</span><span lang="FA"> )) </span></p>
<p class="MsoNormal"><span lang="AR-SA">3.</span><span lang="AR-SA">       </span><span lang="FA">الکترواپتیک ( </span><span>Electro-Optic</span><span> </span><span lang="FA">) ( دیسک نوری ) </span></p>
<p class="MsoNormal"><span lang="AR-SA">۴٫</span><span lang="AR-SA">       </span><span lang="FA">الکترو مغنااپنیک ( </span><span>Electro-Magnetic-Optic</span><span lang="FA"> ) ( دیسک نوری-مغناطیسی )</span></p>
<p class="MsoNormal"><span lang="AR-SA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA">تفاوت های حافظه اصلی و جانبی :</span></strong></p>
<p class="MsoNormal"><span lang="FA">برنامه ها جهت اجرا بایستی به حافظه اصلی منتقل شوند ، به عبارت دیگر برنامه ها را روی حافظه جانبی نمی توانیم اجرا کنیم ، به این دلیل که سرعت حافظه اصلی به مراتب بیشتر از حافظه جانبی است .</span></p>
<p class="MsoNormal"><span lang="FA">(((((( واسه فهمیدن این نکته ، فرض کنین که ماژول رم کامپیوترتون ،که همون حافظه اصلیش محسوب میشه رو در آوردین و حالا کامپیوتر رو روشن می کنین .</span></p>
<p class="MsoNormal"><span lang="FA">خوب حالا چی میشه ؟!!!</span></p>
<p class="MsoNormal"><span lang="FA">شروع میکنه به بوق زدن نه ؟ </span></p>
<p class="MsoNormal"><span lang="FA">می دونین چرا ؟ </span></p>
<p class="MsoNormal"><span lang="FA">چون برنامه های بایاس و و راه انداز سیستم که باعث روشن شدن سیستم میشن باید واسه اجرا به این حافظه( حافظه اصلی) منتقل شن . ولی سیستم موقعی که می خواد این برنامه ها رو روو حافظه اصلی انتقال بده می بینه &#8220;ای داد بیداد&#8221; . به قول معروف &#8220;&#8221; جا تره و بچه نیست &#8220;&#8221; واسه همین شروع میکنه به جیغ زدن .))))))</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA">به دلیل تکنولوژی پیشرفته حافظه اصلی این نوع حافظه ها معمولاً گرانقیمت تر از حاظه های جانبی هستند ، ولی ظرفیت آنها کمتر از حافظه های جانبی است . تفاوت دیگر در نحوه نگهداری اطلاعات پس از قطع جریان یا خاموش شدن سیستم است ، اطلاعات حافظه اصلی به صورت فرار و غیر پایدار می باشند . در حالیکه در حافظه جانبی عکس این مورد را داریم . </span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><span lang="FA">                                 شکل پایین : </span><span>Ram</span><span lang="FA">  متداولترین نوع حافظه اصلی – البته فعلاً -</span></p>
<p class="MsoNormal" style="text-align: center;"><span lang="FA">                  <img class="aligncenter" title="Ram" src="http://amfy.ir/wp-content/uploads/2008/11/1.jpg" alt="" width="300" height="192" /></span></p>
<p class="MsoNormal"><span lang="AR-SA"> </span></p>
<p class="MsoNormal"><span lang="FA">دستگاه های ذخیره سازی که مکانیزم دستیابی به اطلاعات روی آنها به صورت ترتیبی </span><span>Sequential </span><span lang="FA"> است ، دارای سرعت پایینتری می باشند .</span></p>
<p class="MsoNormal"><span lang="FA">منظور از ترتیبی این است که برای رسیدن به اطلاعات خاصی ، بایستی از روی اطلاعاتی که قبل از اطلاعات مورد نظر قرار گرفته اند ، عبور نماییم . </span></p>
<p class="MsoNormal"><span lang="FA">(((((( بزارین واسه درک بهتر این نوع حافظه ها براتوون یه مثال بزنم :</span></p>
<p class="MsoNormal"><span lang="FA">فرض کنین دارین کاست آلبوم &#8221; دود عود &#8221; استاد شجریان رو گوش می دین  {خوش به حالتون </span><span><!--[if gte vml 1]><v:shape id="_x0000_i1053"  type="#_x0000_t75" style='width:13.5pt;height:13.5pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.gif" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.gif"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\29.gif" /> <o:lock v:ext="edit" cropping="t" /> </v:shape><![endif]--><img src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.gif" alt="" width="18" height="18" /></span><span lang="FA">} و می خواین قطعه &#8220;&#8221; در گل بمانده پای دل &#8230;. &#8220;&#8221; رو گوش کنین{واقعاً خوش به حالتون</span><span><!--[if gte vml 1]><v:shape id="_x0000_i1052"  type="#_x0000_t75" style='width:13.5pt;height:13.5pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.gif" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.gif"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\29.gif" /> <o:lock v:ext="edit" cropping="t" /> </v:shape><![endif]--><img src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.gif" alt="" width="18" height="18" /></span><span><!--[if gte vml 1]><v:shape id="_x0000_i1051" type="#_x0000_t75" style='width:13.5pt;  height:13.5pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.gif" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.gif"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\29.gif" /> <o:lock v:ext="edit" cropping="t" /> </v:shape><![endif]--><img src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.gif" alt="" width="18" height="18" /></span><span lang="FA"> } . واسه اینکار مجبورین تمام قطعه های قبلی رو یه جوری رد کنین تا این قسمت ترانه بیاد * با خودکار – با انگشت یا &#8230;*)))))) </span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA">اما در حالت دیگر که آن را دستیابی مستقیم یا </span><span>Direct access </span><span lang="FA"> می نامیم ، برای رسیدن به اطلاعات مشخصی لازم نیست از روی همه اطلاعات دیگر که قبل از آن قرار دارد ، عبور نماییم . بلکه با کوتاهترین زمان ممکن می توانیم به آن اطلاعات برسیم .</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA">(((((خوب حالا فرض کنید همون آلبوم رو روو سی دی یا هارتون دارین ظرف ۵ ثانیه میتونین بدون هیچ زحمتی از اوج هنر  لذت واقعی رو ببرین ))))))</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA">سلسله مراتب حافظه ها :</span></strong></p>
<p class="MsoNormal"><span lang="FA">هدف از ایجاد سلسله مراتب حافظه ها این است که سرعت و کارایی سیستم های ذخیره سازی در مقابل هزینه ای قابل توجیه افزایش یابد . </span></p>
<p class="MsoNormal" style="text-align: center; "><strong><span lang="FA">                    </span></strong><strong><span><!--[if gte vml 1]><v:shape id="_x0000_i1050"  type="#_x0000_t75" alt="سلسله مراتب حافظه ها" style='width:339pt;height:207pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image003.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image003.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\2.jpg" /> </v:shape><![endif]--><img class="aligncenter" src="http://amfy.ir/wp-content/uploads/2008/11/2.jpg" alt="سلسله مراتب حافظه ها" /></span></strong></p>
<p class="MsoNormal"><span lang="AR-SA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA">انواع حافظه های برون ماشینی از نظر تکنولوژی ساخت :</span></strong></p>
<p class="MsoNormal"><span lang="FA">۱ – <span><span>تکنولوژی الکترو مکانیک</span></span> : مانند کارت منگنه شدنی یا همان کارت پانچ</span></p>
<p class="MsoNormal"><span lang="FA">۲- <span><span>تکنولوژی الکترو مغناطیس</span></span> : مانند نوار مقناطیسی ، دیسک مغناطیسی و درام</span></p>
<p class="MsoNormal"><span lang="FA">۳- <span><span>تکنولوژی الکترو اپتیک</span></span>  : مانند دیسک نوری<span>(همون سی دی   و  دی وی دی خودمون )</span></span></p>
<p class="MsoNormal"><span lang="FA">۴- <span><span>تکنولوژی الکترو مغنااپتیک</span></span>: مانند دیسک های نوری و مغناطیسی</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal" align="center"><span lang="FA">تصویری از کارت پانچ  </span></p>
<p class="MsoNormal" style="text-align: center; "><span><img class="aligncenter" src="http://amfy.ir/wp-content/uploads/2008/11/3.jpg" alt="کارت پانچ" /></span><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA">تعریف نوار مغناطیسی :</span></strong></p>
<p class="MsoNormal"><span lang="FA">در واقع از نوعی پلاستیک با روکش مغناطیس شونده تشکیل شده است ، نوارها در عرض دارای تعدادی شیار می باشند . مثلاً نوار ۷ شیاره و یا نوار ۹ شیاره .</span></p>
<p class="MsoNormal"><span lang="FA">نوارها ممکن است از نقطه نظر ظرفیت ، طول ، سرعت و چگالی ، با یکدیگر متفاوت باشند . منظور از چگالی تعداد بیت های ذخیره شده در اینچ مربع می باشد . </span></p>
<p class="MsoNormal"><span lang="FA">یک فایل در طول نوار ذخیره می شود .</span></p>
<p class="MsoNormal"><span lang="FA">((((((سیستمش دقیقاً مثل نوار کاست معمولیه ))))))</span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal" align="center"><span lang="FA">تصاویری از نوار مغناطیسی</span></p>
<p class="MsoNormal" style="text-align: center; "><span><!--[if gte vml 1]><v:shape id="_x0000_i1048"  type="#_x0000_t75" alt="نوار مقناطیسی" style='width:187.5pt;height:105.75pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image005.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image005.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\4.jpg" /> </v:shape><![endif]--><img class="aligncenter" src="http://amfy.ir/wp-content/uploads/2008/11/4.jpg" alt="نوار مقناطیسی" width="250" height="141" /></span><span>          </span><span><!--[if gte vml 1]><v:shape id="_x0000_i1047"  type="#_x0000_t75" alt="نوار مغناطیسی" style='width:187.5pt;height:105.75pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image006.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image006.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\5.jpg" /> </v:shape><![endif]--><img class="aligncenter" src="http://amfy.ir/wp-content/uploads/2008/11/5.jpg" alt="نوار مغناطیسی" width="250" height="240" /></span></p>
<p class="MsoNormal"><span lang="AR-SA">                                    </span></p>
<p class="MsoNormal" style="text-align: center; "><span><!--[if gte vml 1]><v:shape id="_x0000_i1046"  type="#_x0000_t75" alt="نوار مغناطیسی" style='width:187.5pt;height:180pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image007.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image007.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\6.jpg" /> </v:shape><![endif]--><img class="aligncenter" src="http://amfy.ir/wp-content/uploads/2008/11/6.jpg" alt="نوار مغناطیسی" width="250" height="215" /></span></p>
<p class="MsoNormal"><span lang="AR-SA"> </span></p>
<p class="MsoNormal"><span lang="AR-SA"> </span></p>
<p class="MsoNormal"><span lang="FA"> زمانی که می خواهیم یک فایل را مورد پردازش قرار دهیم ، به دلیل محدود بودن حافظه اصلی و همچنین کم بودن فضای بافر ، امکان انتقال کل فایل به حافظه وجود ندارد ؛ لذا بایستی فایل ها را تقسیم بندی کنیم که اصطلاحاً  به این کار بلاکینگ می گوییم.</span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA">بین هر دو بلاک فضایی وجود دارد که در آن فضا هیچگونه اطلاعاتی ذخیره نمی شود . به این فضا ، فضای گپ (</span><span>Gap </span><span lang="FA"> ) یا هرزگفته می شود .</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA">از فضای گپ دو استفاده به عمل می آید :</span></strong></p>
<p class="MsoNormal"><span lang="AR-SA">۱-</span><span lang="AR-SA">      </span><span lang="FA">جداسازی اطلاعات از همدیگر</span></p>
<p class="MsoNormal"><span lang="AR-SA">۲-</span><span lang="AR-SA">      </span><span lang="FA">امکان تغییر سرعت در نوار یا خواندن و نوشتن .</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="FA">تعریف دوباره گپ </span></strong><span lang="FA">: فضایی است بلا استفاده بین دو گروه کاراکتر ضبط شده .</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA">تعریف دیسک مغناطیسی :</span></strong><span lang="FA"> رسانه ای است با دستیابی مستقیم و در واقع صفحه ای دایره ای که حول یک محور دوران می کند . <span>(((((( مثل هارد – فلاپی دیسک ( همون دیسک نرم ) – و حتی صفحات گرامافون ))))))</span></span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA">هر صفحه دیسک مغناطیسی از دایره های هم مرکزی تشکیل شده است که هر یک از این دایره ها شیار یا تراک (</span><span>Track</span><span lang="FA">) نام دارند .</span></p>
<p class="MsoNormal"><span lang="FA">هر شیار را به چند قسمت به نام سکتور (</span><span>Sector</span><span lang="AR-IQ">) یا ق</span><span lang="FA">طاع تقسیم می کنند .</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA">ممکن است دیسک دارای چند صفحه باشد . در دیسک های چند صفحه ای شیارهای هم شعاع را استوانه یا سیلندر می نامند </span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA"> در دیسک های چند صفحه ای فایل ها به صورت استوانه به استوانه ذخیره می شوند .</span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span> </span><span><!--[if gte vml 1]><v:shape id="_x0000_i1045" type="#_x0000_t75"  alt="دیسک مغناطیسی" style='width:187.5pt;height:161.25pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image008.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image008.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\7.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/8.jpg" alt="دیسک مغناطیسی" width="225" height="190" /></span><span>   </span><span><!--[if gte vml 1]><v:shape id="_x0000_i1044" type="#_x0000_t75"  alt="دیسک مغناطیسی" style='width:187.5pt;height:158.25pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image009.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image009.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\8.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/7.jpg" alt="دیسک مغناطیسی" width="225" height="194" /></span><span>     </span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><span lang="AR-SA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA">رده بندی دیسک ها : </span></strong></p>
<p class="MsoNormal"><span lang="FA">۱- از نظر امکان جابجا <span>شدن ((((( یعنی اینکه دیسک ما قابل حمل هستش یا نه ؟ مثلاً یه هارد دیسک معولی رو نمی تونیم توو جیب بزاریم و هر روز اینور اونورش کنیم – البته از دانشجوای اینجا هیچ چیز بعید نیست!!))))))</span></span></p>
<p class="MsoNormal"><span lang="FA">۲- از نظر ثابت یا متحرک بودن هد خواندن و نوشتن ( مانند دیسک های با هد ثابت و دیسک های با هد متحرک )</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA">در دیسک های با هد ثابت بازویی که هد خواندن و نوشتن به آن متصل است حرکت نمی کند .</span></p>
<p class="MsoNormal"><span lang="FA">در دیسک های با هد متحرک بازو بر روی دیسک حرکت دارد و از شیاری به شیار دیگر جابجا می شود .</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA">در دیسک های با هد ثابت هر شیار برای خود یک هد خواندن و نوشتن دارد و نیازی به حرکت بازو ندارد . </span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal" align="center"><span lang="FA">* این گونه دیسک ها ، سریعتر ، گرانتر و حساسترند .*</span></p>
<p class="MsoNormal"><span lang="FA">۳- از نظر تعداد  طرف (</span><span>Side</span><span lang="FA">) مثل دیسک های یک یا دو طرفه ( رویه )</span></p>
<p class="MsoNormal"><span lang="FA">۴-  از نظر  تعداد لایه در هر طرف . مثل تک لایه و دو لایه .</span></p>
<p class="MsoNormal"><span lang="FA">۵- از نظر تعداد صفحاتی که حول محور دوران می کنند .</span></p>
<p class="MsoNormal"><span lang="FA">(((((( تو قسمت های بالا فکر نکنم مشکلی داشته باشین . اگه سوالی داشتین حتماً بپرسین ، قول میدم اگه بلد بودم حتماً جواب بدم ))))))</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA">تقسیمات دیسک : </span></strong></p>
<p class="MsoNormal"><span><span lang="FA">استوانه :</span></span><span lang="FA"> تمام شیار های همشعاع را استوانه می گویند . </span></p>
<p class="MsoNormal"><span lang="FA"> <span><span lang="FA">شیار :</span></span><span lang="FA"> محل ضبط بیت های اطلاعات در هر طرف می باشد .</span></span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA"> <span><span lang="FA">سکتور :</span></span><span lang="FA"> تقسیماتی است از شیار با اندازه مساوی ، هر شیار ممکن است از چند سکتور تشکیل شده باشد .</span></span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA">                 </span><span><!--[if gte vml 1]><v:shape id="_x0000_i1043" type="#_x0000_t75"  style='width:303pt;height:203.25pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image010.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image010.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\9.jpg" /> </v:shape><![endif]--><img class="aligncenter" src="http://amfy.ir/wp-content/uploads/2008/11/9.jpg" alt="" /></span></p>
<p class="MsoNormal" align="center"><span><!--[if gte vml 1]><v:shape id="_x0000_i1042"  type="#_x0000_t75" style='width:116.25pt;height:115.5pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image011.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image011.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\11.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/11.jpg" alt="" width="155" height="154" /></span><span lang="FA">   </span><span><!--[if gte vml 1]><v:shape  id="_x0000_i1041" type="#_x0000_t75" style='width:187.5pt;height:120pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image013.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image013.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\10.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/10.jpg" alt="" width="250" height="160" /></span><span lang="FA">  </span></p>
<p class="MsoNormal" align="center"><span><!--[if gte vml 1]><v:shape id="_x0000_i1040"  type="#_x0000_t75" style='width:187.5pt;height:125.25pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image014.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image014.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\12.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/12.jpg" alt="" width="250" height="167" /> </span></p>
<p class="MsoNormal"><span lang="FA">تا حالا  خودتون نقش یه بیت رو بازی کردین ؟</span></p>
<p class="MsoNormal"><span lang="FA">فکر کردن لازم نداره . الآن هم دارین نقش یه بیت رو بازی می کنین . ولی این بیت ممکنه سه حالت داشته باشه: ۰    ،   ۱    و    یا     ۱-      . </span></p>
<p class="MsoNormal"><span lang="FA">خب شما کدوم هستین .</span></p>
<p class="MsoNormal"><span lang="FA">نگین صفر که اصلاً خوشم نمیاد.</span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA">اگه زمین رو یه درام حساب کنیم . ما همه بیت های این رسانه هستیم . تو شیارهای زندگیمون . با اعمالمون داریم یه بیت می شیم . </span></p>
<p class="MsoNormal"><span lang="FA">خدا کنه جزء بیت ها ی ۱ باشیم </span></p>
<p class="MsoNormal"><span lang="FA">هد های رو سرمون دارن بد جوری اطلاعات رو می خونن . تنها دیسک هایی که تو اونا تعداد هد ها بیشتر از تعداد شیار هاست ماییم .</span></p>
<p class="MsoNormal"><span lang="FA">هر کدوممون دو تا هد رو  سرمون داریم که مرتب دارن ۱ یا ۱- بودنمون رو می خونن .</span></p>
<p class="MsoNormal"><span lang="FA">هد های رو سرمون نه زمان انتظار دارن نه زمان پیگرد و نه زمان استقرار . </span></p>
<p class="MsoNormal"><span lang="FA">واسه همین حتی ۱ میلی ثانیه هم نمیتونیم از دستشون فرار کنیم . </span></p>
<p class="MsoNormal"><span lang="FA">بافر حساب و کتابمون هم اونقدر بزرگ که اصلاً احتیاج به بلاکینگ و این چرت و پرت ها نیست .</span></p>
<p class="MsoNormal" align="center"><span lang="FA">خدا کنه هممون <strong><span>یک</span></strong> باشیم .</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA">                                                       تصویری از عظمت خدا</span></p>
<p class="MsoNormal"><span lang="FA">                   </span><span><!--[if gte vml 1]><v:shape id="_x0000_i1039"  type="#_x0000_t75" style='width:300pt;height:200.25pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image015.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image015.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\13.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/13.jpg" alt="" width="400" height="267" /></span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA">                                    بازوها – هد ها – شیار – سکتور– استوانه و دیسک ها</span></p>
<p class="MsoNormal"><span lang="FA">                             </span><span><!--[if gte vml 1]><v:shape id="_x0000_i1038"  type="#_x0000_t75" style='width:262.5pt;height:136.5pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image016.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image016.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\14.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/14.jpg" alt="" width="350" height="182" /></span><span lang="FA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA"> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">پارامتر های دیسک : </span></strong></p>
<p class="MsoNormal"><span lang="AR-SA">۱-</span><span lang="AR-SA">      </span><span lang="FA">پارامترهای ظرفیتی </span></p>
<p class="MsoNormal"><span lang="AR-SA">۲-</span><span lang="AR-SA">      </span><span lang="FA">پارامتر های زمانی </span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA">مولفه های پارامترهای ظرفیتی :</span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="AR-SA">۱-۱</span><span lang="AR-SA">               </span><span lang="FA">– اندازه سکتور از ۳۲ تا ۴۰۹۶ بایت می تواند باشد .</span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="AR-SA">۱-۲</span><span lang="AR-SA">               </span><span lang="FA">– تعداد سکتور در شیار ؛ در فلاپی از ۴ تا ۳۲ و در بقیه موارد تا ۱۰۰ سکتور می باشد .</span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="AR-SA">۱-۳</span><span lang="AR-SA">               </span><span lang="FA">– تعداد شیار در هر طرف از ۲۰ تا ۲۰۰۰ عدد.</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA">میدونین کدوم رسانه بیشترین شیار رو در سطح خودش داره ؟</span></p>
<p class="MsoNormal"><span lang="FA">جواب : اسلام</span></p>
<p class="MsoNormal"><span lang="FA">تا حالا فکر کردین تعداد مسلمونای دنیا چقدره. موقعی که همه سراسر دنیا دور قبله وای میسن و نماز میخونن به نظر شما چند تا شیار رو تشکیل می دن ؟</span></p>
<p class="MsoNormal"><span lang="FA">از ۲۰۰۰ تا بیشتر نیست ؟</span></p>
<p class="MsoNormal"><span lang="AR-IQ"> </span></p>
<p class="MsoNormal"><span lang="AR-IQ">          </span></p>
<p class="MsoNormal"><span lang="AR-IQ"><strong>مولفه های پارامترهای زمانی :</strong></span></p>
<p class="MsoNormal"><span lang="AR-IQ">۲-۱ – زمان پیگرد (زمان استوانه جویی) : زمانی زمانی است که سپری می شود تا هد خواندن و نوشتن به استوانه مورد نظر برسد . یعنی استوانه ای که داده در آن قرار دارد . </span></p>
<p class="MsoNormal"><span lang="AR-IQ">توجه کنید که این زمان در دیسک های با بازوی ثابت برابر با صفر است .</span></p>
<p class="MsoNormal"><span lang="AR-IQ">متوسط این زمان را با </span><span lang="FA">پارامتر </span><span>S</span><span lang="FA"> نمایش می دهند و واحد آن </span><span>ms</span><span lang="FA"> می باشد . این زمان معمولاً بین ۲ تا ۳۰ میلی ثانیه می باشد .</span></p>
<p class="MsoNormal"><span lang="FA">و در اکثر دیسک ها مهمترین پارامتر تلقی می شود .</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA">۲-۲ </span><span lang="AR-IQ">– سرعت گردش دیسک :</span><span lang="FA"> با واحد دور در دقیقه بیان می شود. مثلاً ۵۲۰۰ یا ۷۲۰۰ دور در دقیقه . از این پارامتر زمان یک دور گردش دیسک بدست می آید . و آن را با پارامتر </span><span>۲r</span><span lang="FA"> نمایش می دهند . </span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA">۲-۳ </span><span lang="AR-IQ">– نرخ انتقال :</span><span lang="FA"> تعداد بایتی که که در هر ثانیه قابل انتقال است و با واحد بایت در ثانیه بیان می شود .</span></p>
<p class="MsoNormal"><span lang="FA">* نرخ انتقال اسمی : این نرخ توسط سازنده اعلام می شود </span></p>
<p class="MsoNormal"><span lang="FA">ولی </span></p>
<p class="MsoNormal"><span lang="FA">* نرخ انتقال رسمی یا واقعی : قابل محاسبه می باشد .</span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA">نرخ انتقال در دیسک های معمولی حدوداً ۱ تا ۵ مگابایت در ثانیه است . </span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA"> ۲-۴ – </span><span lang="AR-IQ">زمان استقرار : </span><span lang="FA">مدت زمانی که طول می کشد تا هد پس از رسیدن به استوانه مورد نظر از حالت لرزش خارج شود . این زمان حدوداً </span><span>۳ms</span><span lang="FA"> یا کمتر است .</span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA">نکته : این زمان در دیسک های با بازوی ثابت برابر صفر است .</span></p>
<p class="MsoNormal"><span lang="FA">۲-۵ – </span><span lang="AR-IQ">زمان انتظار  دوران ( زمان درنگ دوران):</span><span lang="FA"> مدت زمانی است که سپری می شود تا آغاز داده مورد نظر در اثر دوران دیسک به زیر هد خواندن و نوشتن برسد. متوسط این زمان را با پارامتر </span><span>r </span><span lang="FA"> نمایش می دهند .</span></p>
<p class="MsoNormal" align="center"><span lang="AR-IQ">نکته : زمان درنگ = نصف زمان گردش دیسک</span></p>
<p class="MsoNormal"><span lang="FA">زمان درنگ از ۵ تا ۹ میلی ثانیه است .</span></p>
<p class="MsoNormal"><span lang="FA">نکته : به مجموعه دو زمان </span><span>r</span><span lang="FA"> و </span><span>s</span><span lang="FA"> زمان دستیابی ناگهانی گفته می شود .</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal" align="center"><span lang="FA">بازو ها و هد های دیسک سخت        </span></p>
<p class="MsoNormal" style="text-align: center; "><span><!--[if gte vml 1]><v:shape id="_x0000_i1036"  type="#_x0000_t75" alt="بازو ها - هد" style='width:187.5pt;height:110.25pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image017.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image017.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\16.jpg" /> </v:shape><![endif]--><img class="aligncenter" src="http://amfy.ir/wp-content/uploads/2008/11/16.jpg" alt="بازو ها - هد" width="250" height="147" /></span></p>
<p class="MsoNormal"><span lang="AR-SA"> </span></p>
<p class="MsoNormal"><span lang="AR-SA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA">دیسک نرم <img src='http://amfy.ir/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> همون فلاپی خودمون )</span></strong><span lang="FA"> از رساناهای ذخیره سازی خارجی است با دستیابی مستقیم و از نظر شکل ظاهری مشابه با دیسک های متداول اما با ابعاد کرچکتر است .</span></p>
<p class="MsoNormal"><span lang="FA">جنس آن از پلاستیک و سختی دیسک های موسوم به دیسک های سخت را ندارد .</span></p>
<p class="MsoNormal"><span lang="FA">این دیسک در محفظه ای جای دارد که هم برای محافظت از تماسهای خارجی و هم به منظور ثابت بودن آن استفاده می شود .</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA">                               دیسک نرم ( از نوع فلاپی دیسک های ۳٫۵ اینچی) و فلاپی در رایو              </span></p>
<p class="MsoNormal"><span><!--[if gte vml 1]><v:shape id="_x0000_i1035"  type="#_x0000_t75" style='width:112.5pt;height:117.75pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image018.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image018.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\19.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/19.jpg" alt="" width="122" height="127" /></span><span lang="FA">      </span><span><!--[if gte vml 1]><v:shape id="_x0000_i1034" type="#_x0000_t75"  style='width:163.5pt;height:117.75pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image019.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image019.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\18.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/18.jpg" alt="" width="176" height="127" /></span><span lang="FA">      </span><span><!--[if gte vml 1]><v:shape id="_x0000_i1033" type="#_x0000_t75"  style='width:112.5pt;height:241.5pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image021.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image021.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\17.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/17.jpg" alt="" width="135" height="290" /></span><span lang="FA">              </span></p>
<p class="MsoNormal"><span lang="FA">  </span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><strong><span lang="FA">سی دی رام :</span></strong><span lang="FA"> این نوع دیسک چگالی بسیار بالایی دارد و تقریباً ۲۰۰ برابر دیسک های نرم ظرفیت دارد .بعلاوه هزینه آن بسیار پایین است <span>. (((((( بعضی وقتا ممکنه سی دی رام رو با دستگاهی که سی دی ها رو میخونه اشتباه بگیریم . حواستون باشه که دستگاه خوندن سی دی ها ( سی دی رام ها ) اسمش سی دی درایو یا </span></span><span>CD-Drive</span><span lang="FA"> هستش ولی ما اشتباهاً به اون می گیم </span><span>CD-Rom</span><span lang="FA"> . </span></p>
<p class="MsoNormal"><span lang="FA">شاید تا حالا خیلی وقتا مثل این جمله ها رو گفته باشین :</span></p>
<p class="MsoNormal"><span lang="FA">سلام ! راستی نگفتی سی دی رامت چیه ؟ ایسوز یا سونی ؟</span></p>
<p class="MsoNormal"><span lang="FA">یا </span></p>
<p class="MsoNormal"><span lang="FA">سی رامم خراب شده .</span></p>
<p class="MsoNormal"><span lang="FA">که باید بگین سی دی درایو یا سی دی درایورم.</span></p>
<p class="MsoNormal"><span lang="FA">)))))</span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal" align="center"><span lang="FA">    سی دی رام           و          سی دی درایو     </span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA">                  </span><span><!--[if gte vml 1]><v:shape  id="_x0000_i1032" type="#_x0000_t75" style='width:150pt;height:146.25pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image022.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image022.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\21.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/21.jpg" alt="" width="200" height="195" /></span><span lang="FA">    </span><span><!--[if gte vml 1]><v:shape id="_x0000_i1031" type="#_x0000_t75"  style='width:150pt;height:150pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image023.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image023.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\20.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/20.jpg" alt="" width="200" height="200" /></span></p>
<p class="MsoNormal"><span lang="FA">ظرفیت این نوع دیسک از ۵۰۰ مگابایت تا چند گیگابایت می باشد .</span></p>
<p class="MsoNormal"><span lang="FA">دیسکی است فقط خواندنی به این معنا که پس از قرار گرفتن اطلاعات بر روی آن دیگر غیر قابل پاک شدن می باشد و نمی توان دوباره رو آن نوشت .</span></p>
<p class="MsoNormal"><span lang="FA">قطر این نوع دیسک ها حدوداً ۱۲ سانتیمتر و پهنای آنها ۲/۱ میلیمتر است .</span></p>
<p class="MsoNormal"><span lang="FA">زمان استوانه جویی در این نوع دیسک ها نسبت به دیسک های مغناطیسی بسیار بیشتر و دارای نرخ انتقال پایینی نیز می باشند . ( حدود ۱۵۰ کیلو بایت )</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><strong><span lang="FA">دیسک های نوری - مغناطیسی :</span></strong></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA"> با تلفیق دو تکنولوژی مغناطیس و نور تلاش می شود تا دیسک هایی ایجاد شوند که هم خاصیت قابل پاک شدن داشته باشند و هم از چگالی و ظرفیت زیاد تری بهره مند شوند .</span></p>
<p class="MsoNormal"><span lang="FA">قطر این دیسک ها ۲۵/۵ اینچ و از نوع پاک شدنی  هستند و از سرعت بالایی برخوردارند . </span></p>
<p class="MsoNormal"><span lang="FA">سرعت انتقال این نوع دیسک ها حدوداً ۱ مگ بر ثانیه است .</span></p>
<p class="MsoNormal"><span lang="FA">بری نوشتن یک بیت تکنیک هایی ایجاد شده است ، از جمله برخورد لیزر با ایجاد حلت اکسیداسیون قویتر . رویه این دیسک ها که از آلیاژ فلز خاصی پوشیده شده است ، خاصیت مغناطیس شونده به خود می گیرد ( آهن – کبالت ) البته نه در دمای معمولی ، بلکه در دمای زیاد که برای بالا بردن دما از اشعه لیزر استفاده می شود .</span></p>
<p class="MsoNormal"><span lang="FA">برای خواندن از یک اشعه لیزر با فرکانس کمتر از حالت نوشتن از یک طرف دیسک به آن تابانده می شود و در طرف دیگر سنسوری وجود دارد که اشعه را دریافت می کند و بعد از تجزیه و تحلیل صفر یا یک بودن آن تجزیه و تحلیل می  کند .</span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="AR-SA"> </span></p>
<p class="MsoNormal"><span lang="FA">            </span><span><!--[if gte vml 1]><v:shape id="_x0000_i1030"  type="#_x0000_t75" style='width:112.5pt;height:122.25pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image024.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image024.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\24.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/24.jpg" alt="" width="150" height="163" /></span><span lang="FA">   </span><span><!--[if gte vml 1]><v:shape  id="_x0000_i1029" type="#_x0000_t75" style='width:112.5pt;height:110.25pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image025.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image025.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\23.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/23.jpg" alt="" width="150" height="147" /></span><span lang="FA">   </span><span><!--[if gte vml 1]><v:shape  id="_x0000_i1028" type="#_x0000_t75" style='width:112.5pt;height:116.25pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image026.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image026.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\22.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/22.jpg" alt="" width="150" height="155" /></span></p>
<p class="MsoNormal"><span lang="AR-SA">  </span></p>
<p class="MsoNormal"><strong><span lang="FA">درام</span></strong><strong><span> :</span></strong><span> </span><span lang="FA">رسانه ای است منطقاً معادل</span><span lang="FA"> </span><span lang="FA">دیسک با هد ثابت و تک استوانه</span><span lang="FA"> </span><span lang="FA">ای بدین معنی که استوانه ای</span><span lang="FA"> </span><span lang="FA">است با شیار هایی در سطح</span><span lang="FA"> </span><span lang="FA">خارجی . معمولاً برای هر شیار</span><span lang="FA"> </span><span lang="FA">یک هد خواندن و نوشتن وجود</span><span lang="FA"> </span><span lang="FA">دارد . ممکن است تعداد هد ها</span><span lang="FA"> </span><span lang="FA">از تعداد شیار</span><span lang="FA"> </span><span lang="FA">ها کمتر باشد</span><span> .</span></p>
<p class="MsoNormal"><span lang="FA">که در این صورت سیستم ذخیره سازی از نوع هد متحرک است . این رسانه را می توان حالت خاصی از دیسک تلقی کرد . همان پارامتر هایی که در دیسک وجود دارند در این رسانه نیز وجود دارند .</span></p>
<p class="MsoNormal"><span lang="FA">لازم به ذکر است که زمان استوانه جویی در تبله های با بازوی ثابت صفر است .</span></p>
<p class="MsoNormal"><span lang="FA">در ضمن ۸ تا ۲۰ ایتچ قطر و ۲ تا ۴ فوت طول و همچنین سرعت گردش ۴۰۰ تا ۱۵۰۰ دور در دقیقه هستند .</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA">موارد استفاده از درام :</span></p>
<p class="MsoNormal"><span lang="AR-SA">۱-</span><span lang="AR-SA">      </span><span lang="FA">دستگاه فتوکپی  </span></p>
<p class="MsoNormal"><span lang="AR-SA">۲-</span><span lang="AR-SA">      </span><span lang="FA">به عنوان حافظه پشتیبان </span></p>
<p class="MsoNormal"><span lang="AR-SA">۳-</span><span lang="AR-SA">      </span><span lang="FA">برای ضبط نرم افزار هایی که ثابت هستند و مرتباً از آنها استفاده می شود .</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal" align="center"><span lang="FA">نمونه هایی از درام</span></p>
<p class="MsoNormal"> </p>
<p class="MsoNormal"><span lang="FA">   </span><span><!--[if gte vml 1]><v:shape  id="_x0000_i1027" type="#_x0000_t75" style='width:187.5pt;height:135.75pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image027.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image027.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\26.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/26.jpg" alt="" width="225" height="163" /></span><span lang="FA"> </span><span><!--[if gte vml 1]><v:shape  id="_x0000_i1026" type="#_x0000_t75" style='width:207pt;height:137.25pt;  visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image028.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image028.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\25.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/25.jpg" alt="" width="248" height="165" /></span><span lang="FA">   </span></p>
<p class="MsoNormal"><span lang="AR-SA"> </span></p>
<p class="MsoNormal"><span lang="FA">                                               </span><span><!--[if gte vml 1]><v:shape id="_x0000_i1025" type="#_x0000_t75"  alt="درام" style='width:127.5pt;height:102.75pt;visibility:visible'> <v:imagedata src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image030.jpg" mce_src="file:///C:\DOCUME~1\Mehran\LOCALS~1\Temp\msohtmlclip1\01\clip_image030.jpg"   o:href="file:///H:\AMFY.ir\ذخیره%20و%20بازیابی%20اطلاعات\فصل%20اول%20-%20lesson%20one_files\27.jpg" /> </v:shape><![endif]--><img src="http://amfy.ir/wp-content/uploads/2008/11/27.jpg" alt="درام" width="170" height="137" /></span><span lang="FA">         </span></p>
<p class="MsoNormal"><span lang="AR-SA"> </span></p>
<p class="MsoNormal"><span lang="FA">                                              </span></p>
<p class="MsoNormal"><strong><span lang="FA">فیلد (</span></strong><strong><span>Field</span></strong><strong><span lang="FA">):</span></strong><span lang="FA"> امکان ذخیره سازی یک واحد معنایی داده و نام دار را فیلد می گویند .</span></p>
<p class="MsoNormal"><span lang="FA">واحد معنایی داده حالت تجزیه ناپذیری دارد ( اتومیک </span><span>Atomic</span><span lang="FA"> ) ، به بیان ساده یعنی اگر آن را به اجزایی تجزیه کنیم ، اجزای حاصله در یک حیطه معنایی مشخص و در یک کاربرد مشخص فاقد معنا باشد . ( واسه اینکه معنی فیلدو خوب بفهمین یه اسم دو کلمه ای رو در نظر بگیرین ، مثل <span><span>علیرضا</span></span> ، این اسمو نمیشه به قطعات کوچکتر <span><span>علی</span></span> یا <span><span>رضا</span></span> تقسیم کنیم چون دیگه اون معنای واقعی اسم اولی رو نداره )</span></p>
<p class="MsoNormal"><span lang="FA">  </span></p>
<p class="MsoNormal"><span> </span></p>
]]></content:encoded>
			<wfw:commentRss>http://amfy.ir/?feed=rss2&amp;p=15</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>آموزش اکسس (بخش ششم)</title>
		<link>http://amfy.ir/?p=6</link>
		<comments>http://amfy.ir/?p=6#comments</comments>
		<pubDate>Thu, 14 Aug 2008 12:58:55 +0000</pubDate>
		<dc:creator>مهران روشندل</dc:creator>
				<category><![CDATA[دسته‌بندی نشده]]></category>

		<guid isPermaLink="false">http://localhost/AMFI.ir/?p=90</guid>
		<description><![CDATA[ 
Join کردن بیش از ۲ جدول برای Database های Access

کتاب ColdFusion MX Bible برای Join کردن بیش از دو جدول یک بانک اطلاعاتی راه حل زیر را پیشنهاد می کند: 
 

SELECT
c.CompanyID,
c.CompanyName,
e.LastName,
e.FirstName,
e.Salary,
d.FullName,
d.RelationShip
FROM
Company c INNER JOIN Employee e
ON c.CompanyID = e.CompanyID
INNER JOIN Dependant d
ON e.SSN = d.SSN 

که در بیشتر برنامه های Database Server درست عمل می [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; DIRECTION: rtl; unicode-bidi: embed; TEXT-ALIGN: right" dir="rtl"><span style="font-size: small;"><span style="font-family: Times New Roman;"><span style="mso-bidi-language: AR-SA; mso-no-proof: yes" lang="AR-SA"> </span><strong></strong></span></span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; DIRECTION: rtl; unicode-bidi: embed; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" dir="rtl"><strong><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-bidi-language: AR-SA; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';">Join</span></strong><strong><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"> <span lang="FA">کردن بیش از ۲ جدول برای </span></span></strong><strong><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-bidi-language: AR-SA; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';">Database</span></strong><strong><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"> های </span></strong><strong><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-bidi-language: AR-SA; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';">Access</span></strong><strong><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"><br />
</span></strong><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"><br />
کتاب </span><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-bidi-language: AR-SA; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';">ColdFusion MX Bible</span><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"> برای </span><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-bidi-language: AR-SA; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';">Join</span><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-bidi-language: AR-SA; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"> </span><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';">کردن بیش از دو جدول یک بانک اطلاعاتی راه حل زیر را پیشنهاد می کند: </span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; DIRECTION: rtl; unicode-bidi: embed; TEXT-ALIGN: right; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" dir="rtl"> </p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; DIRECTION: rtl; unicode-bidi: embed; TEXT-ALIGN: left; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" dir="rtl"><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-bidi-language: AR-SA; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"><br />
SELECT<br />
c.CompanyID,<br />
c.CompanyName,<br />
e.LastName,<br />
e.FirstName,<br />
e.Salary,<br />
d.FullName,<br />
d.RelationShip<br />
FROM<br />
Company c INNER JOIN Employee e<br />
ON c.CompanyID = e.CompanyID<br />
INNER JOIN Dependant d<br />
ON e.SSN = d.SSN </span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; DIRECTION: rtl; unicode-bidi: embed; TEXT-ALIGN: right" dir="rtl"><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"><span id="more-6"></span><br />
که در بیشتر برنامه های </span><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-bidi-language: AR-SA; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';">Database Server</span><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"> درست عمل می کند.<br />
اما در بانکهای اطلاعاتی </span><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-bidi-language: AR-SA; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';">Microsoft Access</span><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"> پیغام خطایی با توضیح زیر می دهد : </span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; DIRECTION: rtl; unicode-bidi: embed; TEXT-ALIGN: left; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" dir="rtl"><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-bidi-language: AR-SA; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-language: AR-SA; mso-no-proof: yes;">Operator expected</p>
<p></span></span></p>
<p> </p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; DIRECTION: rtl; unicode-bidi: embed; TEXT-ALIGN: right" dir="rtl"><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"><br />
من پس از یک کم جستجو در کتاب ها و پرسش از دیگران ، یک دوست آمریکایی من راه حل زیر را پیشنهاد داد. در اکسس در برخی قسمت ها وجو د پارانتز الزامی است با اینکه در انواع دیگر بانک های اطلاعاتی نیازی به آن پارانتز ها نیست. یعنی کد مورد نظر را باید به صورت زیر باز نویسی کنیم : </span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 12pt; DIRECTION: rtl; unicode-bidi: embed; TEXT-ALIGN: left; mso-margin-top-alt: auto" dir="rtl"><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-bidi-language: AR-SA; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-language: AR-SA; mso-no-proof: yes;">SELECT<br />
c.CompanyID,<br />
c.CompanyName,<br />
e.LastName,<br />
e.FirstName,<br />
e.Salary,<br />
d.FullName,<br />
d.RelationShip<br />
FROM<br />
(Company c INNER JOIN Employee e<br />
ON c.CompanyID = e.CompanyID)<br />
INNER JOIN Dependant d<br />
ON e.SSN = d.SSN</p>
<p></span></span></p>
<p> </p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; DIRECTION: rtl; unicode-bidi: embed; TEXT-ALIGN: right" dir="rtl"><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"><br />
و یک نمونه ی دیگر در اتصال ۴ جدول : </span></p>
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; DIRECTION: rtl; unicode-bidi: embed; TEXT-ALIGN: left; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" dir="rtl"><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-bidi-language: AR-SA; mso-no-proof: yes; mso-fareast-font-family: 'Times New Roman';"><span style="font-size: 10pt; color: #000000; font-family: 'Tahoma','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-language: AR-SA; mso-no-proof: yes;">SELECT<br />
cfarticle.id,<br />
cfarticle.title,<br />
cfarticle.description,<br />
cfarticle.dateadded,<br />
editorial.authorname as author,<br />
categories.name,<br />
levels.levelname<br />
FROM<br />
((cfarticle INNER JOIN categories ON cfarticle.category=categories.id)<br />
INNER JOIN editorial ON cfarticle.author=editorial.id)<br />
INNER JOIN levels ON cfarticle.skllevel=levels.id</p>
<p></span></span></p>
]]></content:encoded>
			<wfw:commentRss>http://amfy.ir/?feed=rss2&amp;p=6</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>آموزش اکسس (بخش پنجم)</title>
		<link>http://amfy.ir/?p=5</link>
		<comments>http://amfy.ir/?p=5#comments</comments>
		<pubDate>Thu, 14 Aug 2008 12:45:13 +0000</pubDate>
		<dc:creator>مهران روشندل</dc:creator>
				<category><![CDATA[دسته‌بندی نشده]]></category>

		<guid isPermaLink="false">http://localhost/AMFI.ir/?p=92</guid>
		<description><![CDATA[ماجول تاریخ هجری شمسی با توابع جانبی آن
در بانک اطلاعاتی Access فیلدهای نوع Date پاسخگوی نیاز کاربران فارسی که با تاریخ هجری شمسی کار می کنند نیست . البته برنامه هایی مثل پارسا ۹۹ تقویم سیستم را به تقویم هجری شمسی تبدیل می کند و بعد از آن کاربران فارسی می توانند از فیلدهای نوع [...]]]></description>
			<content:encoded><![CDATA[<p class="mojtext" style="margin: auto 0cm 12pt; direction: rtl; unicode-bidi: embed; text-align: right;" dir="rtl"><strong><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">ماجول تاریخ هجری شمسی با توابع جانبی آن<br />
</span></strong><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">در بانک اطلاعاتی </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">Access</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;"> فیلدهای نوع </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">Date</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;"> پاسخگوی نیاز کاربران فارسی که با تاریخ هجری شمسی کار می کنند نیست . البته برنامه هایی مثل پارسا ۹۹ تقویم سیستم را به تقویم هجری شمسی تبدیل می کند و بعد از آن کاربران فارسی می توانند از فیلدهای نوع </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">Date</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;"> اکسس استفاده کنند .بدین ترتیب پارسا مشکل تاریخ هجری شمسی را حل میکند ولی بعضا تاریخ شمسی سیستم بنا به دلایلی از بین میرود . مثلا اگربعد از نصب پارسا، </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">Office</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">نصب شود تاریخ هجری شمسی سیستم به هم می خورد. برای رهایی از وابستگی برنامه های شما به پارسا و &#8230; ، توابع زیر می تواند مشکل شما را بطور کامل حل کند .<br />
این ماجول در چندین برنامه تست شده و جواب گرفته است شما هم می توانید از آن استفاده کنید.<br />
(توجه داشته باشید که کدهای نوشته شده ، در اینجا از چپ به راست نمایش داده شده اند ولی با کپی آن در اکسس ، نمایش آن از چپ به راست خواهد شد)<br />
<span id="more-5"></span><br />
در صورت استفاده از این ماجول ، فیلدهای از نوع تاریخ را باید از نوع </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">Number</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;"> تعریف کنید. توضیحات بیشتر جهت استفاده از ماجول ، درون خود ماجول نوشته شده است.<br />
برای استفاده از این ماجول ، از دو خط پایین تر تا انتهای متن را در حافظه کپی کرده (</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">Copy</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">) و سپس در یک ماجول جدید در اکسس یا </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">VB</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;"> قرار دهید (</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">Paste</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">): </span></p>
<p style="direction: rtl; unicode-bidi: embed; text-align: right;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
&#8216; ************************************************************* </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt; direction: rtl; unicode-bidi: embed; text-align: right;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">&#8216; ۱- تعریف کنید </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">Number(Long</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">) است را بصورت </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">Date</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;"> فیلدهایی که نوع آنها<br />
&#8216; ۲- این فیلدها را بصورت ۰۰/۰۰/۰۰ تنظیم کنید </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">InputMask</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"> </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">خاصیت<br />
&#8216; بدلیل ۶ رقمی در نظر گرفتن فیلد تاریخ ، این توابع تا سال ۱۳۹۹ کارایی دارد<br />
&#8216; &#8230;<br />
&#8216; تاریخ جاری سیستم را به هجری شمسی تبدیل می کند </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">Shamsi</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">() تابع<br />
&#8216; بکار ببرید </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">Now</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">() را می توانید در گزارشات بجای تابع </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">Dat</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">() تابع<br />
&#8216; :برای جلوگیری از ورود تاریخ غلط به درون یک فیلد بترتیب زیر عمل میکنید<br />
&#8216; :بشکل زیر بکار ببرید </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">ValidationRule</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;"> را در خاصیت </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">ValidDate</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">() تابع<br />
&#8216; </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">ValidDate</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">([نام فیلد])=</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">True</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;"><br />
&#8216; &#8230; </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 10pt; direction: rtl; unicode-bidi: embed; text-align: left;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8216;*******************************************<br />
Public Function Rooz(F_Date As Long) As Byte<br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">این تابع عدد مربوط به روز یک تاریخ را برمگرداند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Rooz = F_Date Mod 100<br />
End Function<br />
&#8216;*******************************************<br />
Function Mah(F_Date As Long) As Byte<br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">این تابع عدد مربوط به ماه یک تاریخ را برمگرداند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Mah = Int((F_Date Mod 10000) / 100)<br />
End Function<br />
&#8216;*******************************************<br />
Public Function Sal(F_Date As Long) As Byte<br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">این تابع عدد مربوط به سال یک تاریخ را برمگرداند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Sal = Int(F_Date / 10000)<br />
End Function<br />
&#8216;*******************************************<br />
Public Function Kabiseh(ByVal OnlySal As Variant) As Byte<br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">ورودی تابع عدد دورقمی است</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">این تابع کبیسه بودن سال را برمیگرداند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اگر سال کبیسه باشد عدد یک و درغیر اینصورت صفر را بر میگرداند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Kabiseh = 0<br />
If OnlySal &gt;= 75 Then<br />
If (OnlySal &#8211; 75) Mod 4 = 0 Then<br />
Kabiseh = 1<br />
Exit Function<br />
End If<br />
ElseIf OnlySal &lt;= 70 Then<br />
If (70 &#8211; OnlySal) Mod 4 = 0 Then<br />
Kabiseh = 1<br />
Exit Function<br />
End If<br />
End If<span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">End Function<br />
&#8216;*******************************************<br />
Function ValidDate(F_Date As Long) As Boolean<br />
Dim M, S, R As Byte<br />
&#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">این تابع اعتبار یک عدد ورودی را از نظر تاریخ هجری شمسی بررسی می کند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
&#8216; </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">را برمی گرداند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"> False </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">واگر نامعتبر باشد</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"> True </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اگر تاریخ معتبر باشد</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
ValidDate = True<br />
S = Sal(F_Date)<br />
M = Mah(F_Date)<br />
R = Rooz(F_Date)<br />
&#8216;********<br />
If F_Date &lt; 100101 Then<br />
ValidDate = False<br />
Exit Function<br />
End IfIf M &gt; 12 Or M = 0 Or R = 0 Then<br />
ValidDate = False<br />
Exit Function<br />
End If</p>
<p>If R &gt; MahDays(S, M) Then<br />
ValidDate = False<br />
Exit Function<br />
End If<br />
End Function<br />
&#8216;*******************************************<br />
Public Function AddDay(ByVal F_Date As Long, ByVal add As Integer) As Long<br />
Dim K, M, S, R, Days As Byte<br />
R = Rooz(F_Date)<br />
M = Mah(F_Date)<br />
S = Sal(F_Date)<br />
K = Kabiseh(S)</p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">&#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">تبدیل روز به عدد ۱ جهت ادامه محاسبات و یا اتمام محاسبه</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Days = MahDays(S, M)<br />
If add &gt; Days &#8211; R Then<br />
add = add &#8211; (Days &#8211; R + 1)<br />
R = 1<br />
If M &lt; 12 Then<br />
M = M + 1<br />
Else<br />
M = 1<br />
S = S + 1<br />
End If<br />
Else<br />
R = R + add<br />
add = 0<br />
End If<span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">While add &gt; 0<br />
K = Kabiseh(S) &#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">کبیسه: ۱ و غیر کبیسه: ۰</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Days = MahDays(S, M) &#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">تعداد روزهای ماه فعلی</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Select Case add<br />
Case Is &lt; Days<br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اگر تعداد روزهای افزودنی کمتر از یک ماه باشد</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
R = R + add<br />
add = 0<br />
Case Days To IIf(K = 0, 365, 366) &#8211; 1<br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اگر تعداد روزهای افزودنی بیشتر از یک ماه و کمتر از یک سال باشد</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
add = add &#8211; Days<br />
If M &lt; 12 Then<br />
M = M + 1<br />
Else<br />
S = S + 1<br />
M = 1<br />
End If<br />
Case Else<br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اگر تعداد روزهای افزودنی بیشتر از یک سال باشد</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
S = S + 1<br />
add = add &#8211; IIf(K = 0, 365, 366)<br />
End Select<br />
Wend<br />
AddDay = (S * 10000) + (M * 100) + (R)End Function</p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">&#8216;***********************************************<br />
Public Function Shamsi() As Long<br />
&#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">تاریخ جاری سیستم را به تاریخ هجری شمسی تبدیل می کند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Dim Shamsi_Mabna As Long<br />
Dim Miladi_mabna As Date<br />
Dim Dif As Long<br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">در اینجا ۸۰/۱۰/۱۱ با ۲۰۰۲/۰۱/۰۱ معادل قرارداده شده</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Shamsi_Mabna = 791012<br />
Miladi_mabna = #1/1/01#<br />
Dif = DateDiff(&#8220;d&#8221;, Miladi_mabna, Date)<br />
If Dif &lt; 0 Then<br />
MsgBox &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">تاریخ جاری سیستم شما نادرست است , آنرا اصلاح کنید</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">.&#8221;<br />
Else<br />
Shamsi = AddDay(Shamsi_Mabna, Dif)<br />
End If<br />
End Function<br />
&#8216;***********************************************<br />
Public Function DayWeek(F_Date As Long) As String<br />
Dim a As String<br />
Dim N As Byte<br />
N = DayWeekNo(F_Date)<br />
Select Case N<br />
Case 0<br />
a = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">شنبه</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 1<br />
a = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">یکشنبه</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 2<br />
a = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">دوشنبه</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 3<br />
a = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">سه‌شنبه</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 4<br />
a = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">چهارشنبه</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 5<br />
a = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">پنج‌شنبه</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 6<br />
a = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">جمعه</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
End Select<br />
DayWeek = a<br />
End Function&#8217;***********************************************<br />
Public Function Dat()<br />
Dim D As Long<br />
D = Shamsi<br />
Dat = DayWeek(D) &amp; &#8221; 13&#8243; &amp; Sal(D) &amp; &#8220;/&#8221; &amp; Mah(D) &amp; &#8220;/&#8221; &amp; Rooz(D)<br />
End Function</p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">&#8216;***********************************************<br />
Public Function Diff(ByVal FromDate As Long, ByVal To_Date As Long) As Long<br />
&#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">این تابع تعداد روزهای بین دو تاریخ را ارائه می کند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Dim Tmp As Long<br />
Dim S1, M1, r1, S2, m2, r2 As Integer<br />
Dim Sumation As Single<br />
Dim Flag As Boolean<br />
Flag = False<br />
If FromDate = 0 Or IsNull(FromDate) = True Or To_Date = 0 Or IsNull(To_Date) = True Then<br />
Diff = 0<br />
Exit Function<br />
End If<span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">If FromDate &gt; To_Date Then<br />
&#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اگر تاریخ شروع از تاریخ پایان بزرگتر باشد آنها موقتا جابجا می شوند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Flag = True<br />
Tmp = FromDate<br />
FromDate = To_Date<br />
To_Date = Tmp<br />
End If<br />
r1 = Rooz(FromDate)<br />
M1 = Mah(FromDate)<br />
S1 = Sal(FromDate)<br />
r2 = Rooz(To_Date)<br />
m2 = Mah(To_Date)<br />
S2 = Sal(To_Date)<br />
Sumation = 0<span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">Do While S1 &lt; S2 &#8211; 1 Or (S1 = S2 &#8211; 1 And (M1 &lt; m2 Or (M1 = m2 And r1 &lt;= r2)))<br />
&#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اگر یک سال یا بیشتر اختلاف بود</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
If Kabiseh((S1)) = 1 Then<br />
If M1 = 12 And r1 = 30 Then<br />
Sumation = Sumation + 365<br />
r1 = 29<br />
Else<br />
Sumation = Sumation + 366<br />
End If<br />
Else<br />
Sumation = Sumation + 365<br />
End If<br />
S1 = S1 + 1<br />
Loop<span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">Do While S1 &lt; S2 Or M1 &lt; m2 &#8211; 1 Or (M1 = m2 &#8211; 1 And r1 &lt; r2)<br />
&#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اگر یک ماه یا بیشتر اختلاف بود</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Select Case M1<br />
Case 1 To 6<br />
If M1 = 6 And r1 = 31 Then<br />
Sumation = Sumation + 30<br />
r1 = 30<br />
Else<br />
Sumation = Sumation + 31<br />
End If<br />
M1 = M1 + 1<br />
Case 7 To 11<br />
If M1 = 11 And r1 = 30 And Kabiseh(S1) = 0 Then<br />
Sumation = Sumation + 29<br />
r1 = 29<br />
Else<br />
Sumation = Sumation + 30<br />
End If<br />
M1 = M1 + 1<br />
Case 12<br />
If Kabiseh(S1) = 1 Then<br />
Sumation = Sumation + 30<br />
Else<br />
Sumation = Sumation + 29<br />
End If<br />
S1 = S1 + 1<br />
M1 = 1<br />
End Select<br />
LoopIf M1 = m2 Then<br />
Sumation = Sumation + (r2 &#8211; r1)<br />
Else<br />
Select Case M1<br />
Case 1 To 6<br />
Sumation = Sumation + (31 &#8211; r1) + r2<br />
Case 7 To 11<br />
Sumation = Sumation + (30 &#8211; r1) + r2<br />
Case 12<br />
If Kabiseh(S1) = 1 Then<br />
Sumation = Sumation + (30 &#8211; r1) + r2<br />
Else<br />
Sumation = Sumation + (29 &#8211; r1) + r2<br />
End If<br />
End Select<br />
End If</p>
<p>If Flag = True Then<br />
Sumation = -Sumation<br />
End If<br />
Diff = Sumation<br />
End Function</p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">Public Function DayWeekNo(F_Date As Long) As String<br />
&#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">این تابع یک تاریخ را دریافت کرده و مشخص می کند چه روزی از هفته است</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اگر شنبه باشد عدد ۰</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اگر ۱شنبه باشد عدد ۱</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
&#8216;&#8230;&#8230;<br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اگر جمعه باشد عدد ۶</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Dim day As String<br />
Dim Shmsi_Mabna As Long<br />
Dim Dif As Long<br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">مبنا ۸۰/۱۰/۱۱</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Shmsi_Mabna = 801011<br />
Dif = Diff(Shmsi_Mabna, F_Date)<br />
If Shmsi_Mabna &gt; F_Date Then<br />
Dif = -Dif<br />
End If<br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">با توجه به اینکه ۸۰/۱۰/۱۱ ۳شنبه است محاسبه میشود</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"> day </span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">متغیر</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
day = (Dif + 3) Mod 7<br />
If day &lt; 0 Then<br />
DayWeekNo = day + 7<br />
Else<br />
DayWeekNo = day<br />
End If<br />
End Function<span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">Function MahName(ByVal Mah_no As Byte) As String<br />
Select Case Mah_no<br />
Case 1<br />
MahName = &#8221;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">فروردین</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 2<br />
MahName = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اردیبهشت</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 3<br />
MahName = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">خرداد</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 4<br />
MahName = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">تیر</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 5<br />
MahName = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">مرداد</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 6<br />
MahName = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">شهریور</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 7<br />
MahName = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">مهر</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 8<br />
MahName = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">آبان</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 9<br />
MahName = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">آذر</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 10<br />
MahName = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">دی</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 11<br />
MahName = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">بهمن</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
Case 12<br />
MahName = &#8220;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اسفند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;">&#8221;<br />
End Select<br />
End Function<span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">Function SalMah(ByVal F_Date As Long) As Integer<br />
&#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">چهار رقم اول تاریخ که معرف سال و ماه است را برمی گرداند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
SalMah = Val(Left$(F_Date, 4))<br />
End Function<span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">Function MahDays(ByVal Sal As Byte, ByVal Mah As Byte) As Byte<br />
&#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">این تابع تعداد روزهای یک ماه را برمی گرداند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Select Case Mah<br />
Case 1 To 6<br />
MahDays = 31<br />
Case 7 To 11<br />
MahDays = 30<br />
Case 12<br />
If Kabiseh(Sal) = 1 Then<br />
MahDays = 30<br />
Else<br />
MahDays = 29<br />
End If<br />
End SelectEnd Function</p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">Function Make_Date(ByVal F_Date As Long) As String<br />
&#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">یک تاریخ را بصورت یک رشته ۱۰ رقمی با ذکر چهار رقم برای سال ارائه می کند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Dim D As String<br />
D = Trim(Str(F_Date))<br />
If IsNull(F_Date) = True Or F_Date = 0 Then<br />
Make_Date = &#8220;&#8221;<br />
Else<br />
Make_Date = &#8220;13&#8243; &amp; Mid(D, 1, 2) &amp; &#8220;/&#8221; &amp; Mid(D, 3, 2) &amp; &#8220;/&#8221; &amp; Mid(D, 5, 2)<br />
End If<br />
End FunctionFunction NextMah(ByVal Sal_Mah As Integer) As Integer<br />
If (Sal_Mah Mod 100) = 12 Then<br />
NextMah = (Int(Sal_Mah / 100) + 1) * 100 + 1<br />
Else<br />
NextMah = Sal_Mah + 1<br />
End If<br />
End Function</p>
<p>Function PreviousMah(ByVal Sal_Mah As Integer) As Integer<br />
If (Sal_Mah Mod 100) = 1 Then<br />
PreviousMah = (Int(Sal_Mah / 100) &#8211; 1) * 100 + 12<br />
Else<br />
PreviousMah = Sal_Mah &#8211; 1<br />
End If<br />
End Function</p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">Function SubtractDay(ByVal F_Date As Long, ByVal Subtract As Long) As Long<br />
&#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">به تعداد روز معینی از یک تاریخ کم کرده و تاریخ حاصله را ارائه میکند</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Dim K, M, S, R, Days As ByteR = Rooz(F_Date)<br />
M = Mah(F_Date)<br />
S = Sal(F_Date)<br />
K = Kabiseh(S)</p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">&#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">تبدیل روز به عدد ۱ جهت ادامه محاسبات و یا اتمام محاسبه</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
If Subtract &gt;= R &#8211; 1 Then<br />
Subtract = Subtract &#8211; (R &#8211; 1)<br />
R = 1<br />
Else<br />
R = R &#8211; Subtract<br />
Subtract = 0<br />
End If<span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">While Subtract &gt; 0<br />
K = Kabiseh(S &#8211; 1) &#8216;</p>
<p></span></span></p>
<p><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">کبیسه: ۱ و غیر کبیسه: ۰</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Days = MahDays(IIf(M &gt;= 2, S, S &#8211; 1), IIf(M &gt;= 2, M &#8211; 1, 12)) &#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">تعداد روزهای ماه قبلی</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Select Case Subtract<br />
Case Is &lt; Days<br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اگر تعداد روزهای کاهش کمتر از یک ماه باشد</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
R = Days &#8211; Subtract + 1<br />
Subtract = 0<br />
If M &gt;= 2 Then<br />
M = M &#8211; 1<br />
Else<br />
S = S &#8211; 1<br />
M = 12<br />
End If<br />
Case Days To IIf(K = 0, 365, 366) &#8211; 1<br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اگر تعداد روزهای کاهش بیشتر از یک ماه و کمتر از یک سال باشد</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
Subtract = Subtract &#8211; Days<br />
If M &gt;= 2 Then<br />
M = M &#8211; 1<br />
Else<br />
S = S &#8211; 1<br />
M = 12<br />
End If<br />
Case Else<br />
&#8216;</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-no-proof: yes;">اگر تعداد روزهای کاهش بیشتر از یک سال باشد</span><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;"><br />
S = S &#8211; 1<br />
Subtract = Subtract &#8211; IIf(K = 0, 365, 366)<br />
End Select<br />
Wend<br />
SubtractDay = (S * 10000) + (M * 100) + (R)<span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA">End Function <strong></strong></p>
<p></span></span></p>
]]></content:encoded>
			<wfw:commentRss>http://amfy.ir/?feed=rss2&amp;p=5</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>تمرینات فصل سوم زبان C:</title>
		<link>http://amfy.ir/?p=10</link>
		<comments>http://amfy.ir/?p=10#comments</comments>
		<pubDate>Sat, 26 Jul 2008 06:19:37 +0000</pubDate>
		<dc:creator>مهران روشندل</dc:creator>
				<category><![CDATA[زبان برنامه نویسی C]]></category>
		<category><![CDATA[پودمان دوم رشته نرم افزار کامپیوتر]]></category>

		<guid isPermaLink="false">http://amfy.ir/?p=10</guid>
		<description><![CDATA[ 
در این پست تمرینات فصل سوم کتاب برنامه نویسی به زبان C نوشته مهندس عین اله جعفرنژادقمی بهمراه حل آن قرار دارد. 
 

۱ـ برنامه‌ای بنویسید که شماره دانشجویی و معدل تعداد n دانشجو را از ورودی خوانده، دانشجویی را که دومین معدل را از نظر بزرگی دارد پیدا کند و به خروجی ببرد؟
 
جواب: ابتدا باید [...]]]></description>
			<content:encoded><![CDATA[<p dir="ltr"> </p>
<p class="MsoNormal"><strong><span lang="FA"><span style="color: #800000;">در این پست تمرینات فصل سوم کتاب برنامه نویسی به زبان C نوشته مهندس عین اله جعفرنژادقمی بهمراه حل آن قرار دارد.</span></span></strong><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA"> <span id="more-10"></span><br />
</span></p>
<p class="MsoNormal"><strong><span lang="FA">۱ـ برنامه‌ای بنویسید که شماره دانشجویی و معدل تعداد </span></strong><strong><span>n</span></strong><strong><span lang="FA"> دانشجو را از ورودی خوانده، دانشجویی را که دومین معدل را از نظر بزرگی دارد پیدا کند و به خروجی ببرد؟</span></strong></p>
<p class="MsoNormal"><strong><span lang="FA"> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><span lang="FA"> </span><span lang="FA">ابتدا باید بدانیم که در این برنامه اگر تعداد دانشجوها از ۲ کمتر باشد نمی‌توانیم دومین معدل را محاسبه کنیم، پس برنامه پیغام </span><span>Error</span><span lang="FA"> را چاپ کرده و خارج می‌شود.</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span>n</span><span lang="FA"> : تعداد دانشجوها</span></p>
<p class="MsoNormal"><span>i</span><span lang="FA"> : ّشمارنده</span></p>
<p class="MsoNormal"><span>id-max1</span><span lang="FA"> : شماره دانشجویی دانشجو با بالاترین معدل</span></p>
<p class="MsoNormal"><span>id-max2</span><span lang="FA"> : شماره دانشجویی دانشجو با دومین معدل از نظر بزرگی</span></p>
<p class="MsoNormal"><span>ave-max1</span><span lang="FA"> : بالاترین معدل</span></p>
<p class="MsoNormal"><span>ave-max2</span><span lang="FA"> : دومین معدل از نظر بزرگی</span></p>
<p class="MsoNormal"><span>id</span><span lang="FA"> : شماره دانشجویی گرفته شده از ورودی</span></p>
<p class="MsoNormal"><span>ave</span><span lang="FA"> : معدل گرفته شده از ورودی</span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>int</span> n, i=0, id_max1, id_max2, id;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>float</span> ave_max1, ave_max2, ave;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>printf(<span>&#8220;Please enter number of student: &#8220;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>scanf(<span>&#8220;%d&#8221;</span>,&amp;n);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>if</span>(n&lt;2)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>printf(<span>&#8220;n Error&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>printf(<span>&#8220;n Please enter %d id: &#8220;</span>,i+1);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>scanf(<span>&#8220;%d&#8221;</span>,&amp;id);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>printf(<span>&#8220;n Please enter %d average: &#8220;</span>,i+1);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>scanf(<span>&#8220;%f&#8221;</span>,&amp;ave);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>id_max1=id;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>id_max2=id;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>ave_max1=ave;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>ave_max2=ave;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>i++;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>printf(<span>&#8220;n Please enter %d id: &#8220;</span>,i+1);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>scanf(<span>&#8220;%d&#8221;</span>,&amp;id);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>printf(<span>&#8220;n Please enter %d average: &#8220;</span>,i+1);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>scanf(<span>&#8220;%f&#8221;</span>,&amp;ave);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>if</span>(ave&gt;ave_max1)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>ave_max1=ave;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>id_max1=id;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>else</span></span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>ave_max2=ave;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>id_max2=id;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>i++;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>for</span>(i=3 ; i&lt;=n ; i++)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>printf(<span>&#8220;n Please enter %d id: &#8220;</span>,i);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>scanf(<span>&#8220;%d&#8221;</span>,&amp;id);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>printf(<span>&#8220;n Please enter %d average: &#8220;</span>,i);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>scanf(<span>&#8220;%f&#8221;</span>,&amp;ave);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>if</span>(ave&gt;=ave_max1)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>ave_max2=ave_max1;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>id_max2=id_max1;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>ave_max1=ave;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>id_max1=id;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>else</span> <span>if</span>(ave&gt;=ave_max2)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>ave_max2=ave;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>id_max2=id;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>printf(<span>&#8220;n the average is: %.2f , the id is: %d&#8221;</span>,ave_max2, id_max2);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span> </span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="FA">۲ـ برنامه‌ای بنویسید که اعدادی را از ورودی خوانده تشخیص دهد که آیا اعداد مورد نظر، کامل هستند یا خیر، عددی کامل است که مجموع مقسوم علیه‌های آن (به جز خودش) با آن عدد برابر باشد. پس از بررسی هر عدد، برنامه باید از کاربر سوال کند که می‌خواهد بکارش ادامه دهد یا خیر؟</span></strong></p>
<p class="MsoNormal"><strong><span lang="FA"> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><span lang="FA"> در این مسئله چون تعداد اعداد مشخص نشده است پس باید در هر مرحله از کاربر سوال شود که برای تشخیص عدد دیگری را در نظر دارد یا نه و بر اساس پاسخ کاربر مراحل مورد نظر اجرا شود.</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span>n</span><span lang="FA"> : عدد مورد نظر</span></p>
<p class="MsoNormal"><span>i</span><span lang="FA"> : ّشمارنده</span></p>
<p class="MsoNormal"><span>s</span><span> <span lang="FA">: شماره دانشجویی دانشجو با بالاترین معدل</span></span></p>
<p class="MsoNormal"><span>sum</span><span lang="FA"> : مجموع مقسوم علیه‌ها</span></p>
<p class="MsoNormal"><span>r</span><span lang="FA"> : باقیمانده تقسیم</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>int</span> n, i, sum, r;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>char</span> s=<span>&#8216;y&#8217;</span>;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>while</span>(s==<span>&#8216;y&#8217;</span>)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>sum=0;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>printf(<span>&#8220;n Please enter your number: &#8220;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>scanf(<span>&#8220;%d&#8221;</span>,&amp;n);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>for</span>(i=1 ; i</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>r=n%i;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span><span>if</span>(r==0)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                        </span>sum=sum+i;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>if</span>(sum==n)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>printf(<span>&#8220;n %d is perfect number &#8220;</span>,n);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>else</span></span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>printf(<span>&#8220;n %d is not perfect number &#8220;</span>,n);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>printf(<span>&#8220;n do you have another number?(y/n): &#8220;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>s=getche();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>}</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="FA">۳ـ برنامه‌ای بنویسید که خروجی زیر را در صفحه نمایش تولید کند.</span></strong></p>
<p class="MsoNormal" style="text-align: left;"><strong><span>*</span></strong><strong></strong></p>
<p class="MsoNormal" style="text-align: left;"><strong><span>**</span></strong></p>
<p class="MsoNormal" style="text-align: left;"><strong><span>***</span></strong></p>
<p class="MsoNormal" style="text-align: left;"><strong><span>****</span></strong></p>
<p class="MsoNormal" style="text-align: left;"><strong><span>*****</span></strong></p>
<p class="MsoNormal" style="text-align: left;"><strong><span>******</span></strong></p>
<p class="MsoNormal"><strong><span> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><span lang="FA"> این مسئله از طریق دو حلقه </span><span>for</span><span> <span lang="FA">تو در تو حل می‌شود. حلقه‌ی اول برای مشخص کردن شماره‌ی سطرها و حلقه‌ی دوم برای مشخص کردن تعداد ستاره‌ها در هر سطر که در این مسئله برابر همان شماره سطر می‌باشد.</span></span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span>i</span><span lang="FA"> : شمارنده حلقه اول</span></p>
<p class="MsoNormal"><span>j</span><span lang="FA"> : ّشمارنده حلقه دوم</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>int</span> i, j;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>for</span>(i=1 ; i&lt;=6 ; i++)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>printf(<span>&#8220;n&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>for</span>(j=1 ; j&lt;=i ; j++)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>printf(<span>&#8220;*&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span> </span></p>
<p class="MsoNormal" style="text-align: left;"><span> </span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA">۴ـ برنامه‌ای بنویسید که کاراکتری را که نشان دهنده رنگی است از ورودی خوانده، به شما بگوید که چه رنگی را می‌خواهد انتخاب کند. مثلا اگر کاربر حرف </span></strong><strong><span>‘r’</span></strong><strong><span lang="FA"> را وارد کرد برنامه به او بگوید که دوست دارد رنگ قرمز را انتخاب کند. برای تمام موارد، حروف کوچک و بزرگ کنترل شود، مثلا </span></strong><strong><span>‘r’</span></strong><strong><span lang="FA"> و </span></strong><strong><span>‘R’</span></strong><strong><span lang="FA"> برای رنگ قرمز.</span></strong></p>
<p class="MsoNormal"><strong><span lang="FA"> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">جواب: </span></strong></p>
<p class="MsoNormal"><span>s</span><span lang="FA"> : کاراکتر مشخص کننده یک رنگ</span></p>
<p class="MsoNormal"><span>s</span><span lang="FA"> فقط می‌تواند معرف رنگ قرمز، سبز، سفید، مشکی و زرد باشد و رنگ‌های دیگر در برنامه تعریف نشده هستند.</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>char</span> s;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>for</span>(;;)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>printf(<span>&#8220;n please enter first character of color: &#8220;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>s = getche();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>if</span>(s==<span>&#8216;r&#8217;</span>||s==<span>&#8216;R&#8217;</span>)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>printf(<span>&#8220;n your color is Red&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>else</span> <span>if</span>(s==<span>&#8216;g&#8217;</span>||s==<span>&#8216;G&#8217;</span>)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>printf(<span>&#8220;n your color is Green&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>else</span> <span>if</span>(s==<span>&#8216;w&#8217;</span>||s==<span>&#8216;W&#8217;</span>)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>printf(<span>&#8220;n your color is White&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>else</span> <span>if</span>(s==<span>&#8216;b&#8217;</span>||s==<span>&#8216;B&#8217;</span>)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>printf(<span>&#8220;n your color is Black&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>else</span> <span>if</span>(s==<span>&#8216;y&#8217;</span>||s==<span>&#8216;Y&#8217;</span>)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>printf(<span>&#8220;n your color is Yellow&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>else</span></span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>printf(<span>&#8220;n your selected no color&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span> </span></p>
<p class="MsoNormal"><strong><span> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA"> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA"> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">۵ـ برنامه‌ای بنویسید که تعداد </span></strong><strong><span>n</span></strong><strong><span> <span lang="FA">جمله از سری فیبوناجی را تولید کند.</span></span></strong></p>
<p class="MsoNormal"><span lang="FA"><span> </span>سری فیبوناجی</span><span>= ۱<span>  </span>۱<span>  </span>۲<span>  </span>۳<span>  </span>۵<span>  </span>۸<span>  </span>۱۳ …</span></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><strong></strong></p>
<p class="MsoNormal"><span>i</span><span lang="FA"> : شمارنده حلقه</span></p>
<p class="MsoNormal"><span>n</span><span lang="FA"> : تعداد جملات</span></p>
<p class="MsoNormal"><span>fi</span><span lang="FA"> : جمله‌ی شماره </span><span>i</span><span lang="FA"> از سری فیبوناجی</span></p>
<p class="MsoNormal"><span>temp</span><span lang="FA"> : متغیر کمکی<strong></strong></span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>int</span> i, n, f1=1 , f2=1 , temp;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>scanf(<span>&#8220;%d&#8221;</span>,&amp;n);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>for</span>(i=1 ; i&lt;=n ; i++)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>printf(<span>&#8220;%d<span>  </span>&#8220;</span>,f1);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>temp = f2;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>f2 = f1+f2;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>f1 = temp;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span> </span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="FA">۶ـ برنامه‌ای بنویسید که دو عدد صحیح مثبت را از ورودی خوانده، آنها را به روش تفریق بر هم، تقسیم کند؟</span></strong></p>
<p class="MsoNormal"><strong><span lang="FA"> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><span lang="FA"> </span></p>
<p class="MsoNormal"><span>x</span><span> <span lang="FA">: عدد اول</span></span></p>
<p class="MsoNormal"><span>y</span><span lang="FA"> : عدد دوم</span></p>
<p class="MsoNormal"><span>i</span><span lang="FA"> : ّشمارنده و بعد از اجرای برنامه </span><span>i</span><span lang="FA"> برابر است با خارج قسمت تقسیم</span></p>
<p class="MsoNormal"><span>temp</span><span lang="FA"> : متغیر کمکی</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>int</span> i=1, x, y, temp;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>printf(<span>&#8220;n please enter number(x,y);n&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>scanf(<span>&#8220;%d%d&#8221;</span>,&amp;x,&amp;y);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>temp = x;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>while</span>(x&gt;y)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>x = x-y;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>i++;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>printf(<span>&#8220;n %d / %d = %d&#8221;</span>,temp,y,i);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span> </span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA">۷ـ برنامه‌ای بنویسید که شماره کارمندی و حقوق تعدادی از کارکنان مؤسسه‌ای را دریافت کرده، بر اساس تعرفه زیر، مالیات حقوق آنها را محاسبه کند و به خروجی ببرد. سپس مشخص کند بیشترین دریافتی مربوط به کدام کارمند است؟</span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">از مالیات معاف<span>                                       </span></span></strong><strong><span>&lt;400,000</span></strong><strong><span lang="FA"> حقوق</span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">۱۰ درصد نسبت به مازاد<span>                          </span></span></strong><strong><span>&lt;500,000</span></strong><strong><span lang="FA"> حقوق </span></strong><strong><span>۴۰۰,۰۰۱&lt;</span></strong><strong></strong></p>
<p class="MsoNormal"><strong><span lang="FA">15 درصد نسبت به مازاد<span>                          </span></span></strong><strong><span>&lt;700,000</span></strong><strong><span lang="FA"> حقوق </span></strong><strong><span>۵۰۰,۰۰۱&lt;</span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">17 درصد نسبت به مازاد<span>                          </span></span></strong><strong><span><span>                  </span></span></strong><strong><span lang="FA">حقوق </span></strong><strong><span>۷۰۰۰,۰۰۰&lt;</span></strong></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong></p>
<p class="MsoNormal"><span>n</span><span lang="FA">: تعداد کارکنان</span></p>
<p class="MsoNormal"><span>i</span><span lang="FA">: شمارنده</span></p>
<p class="MsoNormal"><span>id</span><span lang="FA">: شماره کارمندی</span></p>
<p class="MsoNormal"><span>s</span><span lang="FA">: حقوق هر کارمند</span></p>
<p class="MsoNormal"><span>mal</span><span lang="FA">: مالیات مربوط به هر کارمند</span></p>
<p class="MsoNormal"><span>max</span><span lang="FA">: بالاترین دستمزد</span></p>
<p class="MsoNormal"><span>idmax</span><span lang="FA">: شماره کارمندی که بالاترین حقوق را دارد</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>int</span> id, idmax, n, i;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>float</span> s, mal, max=0.0;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>printf(<span>&#8220;n please enter number(n): &#8220;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>scanf(<span>&#8220;%d&#8221;</span>,&amp;n);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>for</span>(i=1 ; i&lt;=n ; i++)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>      </span>printf(<span>&#8220;n please enter %d ID: &#8220;</span>,i);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>scanf(<span>&#8220;%d&#8221;</span>,&amp;id);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>printf(<span>&#8220;n please enter %d salary: &#8220;</span>,i);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>scanf(<span>&#8220;%f&#8221;</span>,&amp;s);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>if</span>(s&lt;=400000)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>mal = 0.0;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>else</span> <span>if</span>(s&gt;400000 &amp;&amp; s&lt;=500000)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>mal = 0.1*s;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>else</span> <span>if</span>(s&gt;500000 &amp;&amp; s&lt;=700000)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>mal = 0.15*s;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>else</span> <span>if</span>(s&gt;700000)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>mal = 0.17*s;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>printf(<span>&#8221; maliat is: %1.2fn&#8221;</span>,mal);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>if</span>(s&gt;max)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>max=s;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>idmax=id;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>printf(<span>&#8220;n the MAX is: %f and ID is: %d&#8221;</span>,max , idmax);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>}</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="FA">۸ـ خروجی دستورات زیر را بنویسید.</span></strong></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>x = 5;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>while(&#8211;x&gt;0)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>printf(“%۳d”,x);</span></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><strong></strong></p>
<p class="MsoNormal"><span lang="FA">ابتدا در دستور </span><span>- &#8211; x</span><span lang="FA"> یک واحد از </span><span>x</span><span lang="FA"> کم شده و بعد مقایسه انجام می‌شود. در دستور </span><span>printf</span><span lang="FA"> ، </span><span>%۳d</span><span> <span lang="FA">نشان‌دهنده‌ی آن است که طول میدان ۳ می‌باشد و چون اعداد تک رقمی هستند و طول آنها از میدان کمتر است پس اعداد در سمت راست قرار گرفته و دو واجد قبل از آنها خالی می‌ماند.</span></span></p>
<p class="MsoNormal" style="text-align: right;"><span lang="FA">خروجی برنامه</span><span> : _ _ ۴ _ _ ۳ _ _ ۲ _ _ ۱</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">۹ـ دستورات زیر را با </span></strong><strong><span>for</span></strong><strong><span lang="FA"> بنویسید.</span></strong></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>int</span><span> i=1;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>while</span><span>(i&lt;=10)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>if</span>(i&lt;5 &amp;&amp; i!=2)&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>printf(<span>&#8220;%c&#8221;</span>,x);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>i++</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><strong><span> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><strong></strong></p>
<p class="MsoNormal"><strong><span> </span></strong></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>int</span><span> i;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>for</span><span>(i=1 ; i&lt;=10 ; i++)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>if</span>(i&lt;5 &amp;&amp; i!=2)&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>printf(<span>&#8220;%c&#8221;</span>,x);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>}</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="FA">۱۰ـ برنامه‌ای بنویسید که حاصل عبارت زیر را محاسبه کند </span></strong><strong><span>(n&lt;10)</span></strong><strong><span lang="FA">.</span></strong></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>1 + 1/2! + 1/3! + … + ۱/n!</span></p>
<p class="MsoNormal"><strong><span> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><strong></strong></p>
<p class="MsoNormal"><span>i</span><span lang="FA">: شمارنده‌ی حلقه‌ی بیرونی</span></p>
<p class="MsoNormal"><span>j</span><span lang="FA">: شمارنده حلقه داخلی</span></p>
<p class="MsoNormal"><span>n</span><span lang="FA">: تعداد کل جملات</span></p>
<p class="MsoNormal"><span>s</span><span lang="FA">: مجموع کل جملات</span></p>
<p class="MsoNormal"><span>fac</span><span lang="FA">: حاصل فاکتوریل موجود در کسر هر جمله</span></p>
<p class="MsoNormal"><span lang="FA">برای تعریف متغیر </span><span>fac</span><span lang="FA"> از </span><span>long int</span><span lang="FA"> استفاده می‌کنیم چون حاصل فاکتوریل اعداد بزرگ طول زیادی دارند.</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>int</span> n, i, j;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>float</span> sum=1.0;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>long</span> <span>int</span> fac;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>printf(<span>&#8220;n please enter number&lt;_x0031_0: _x0022__x003c_ _x002f_SPAN&gt;);</span></span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>scanf(<span>&#8220;%d&#8221;</span>,&amp;n);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>printf(<span>&#8220;n 1&#8243;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>for</span>(i=2 ; i&lt;=n ; i++)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>printf(<span>&#8220;+1/%d!&#8221;</span>,i);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>fac = 1;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span><span>for</span>(j=1 ; j&lt;=i ; j++)</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>                  </span>fac = fac*j;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>            </span>sum = sum + 1.0/fac;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>printf(<span>&#8220;= %f&#8221;</span>,sum);</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span> </span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="FA">۱۱ـ برنامه‌ای بنویسید که عددی را در مبنای </span></strong><strong><span>a</span></strong><strong><span lang="FA"> گرفته، آنرا به مبنای </span></strong><strong><span>b</span></strong><strong><span lang="FA"> ببرد.</span></strong><strong></strong></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><strong></strong></p>
<p class="MsoNormal"><span lang="FA">برای حل این مسئله ابتدا باید عدد در مبنای </span><span>a</span><span lang="FA"> را به عددی در مبنای ۱۰ تبدیل کنیم، برای این امر ابتدا عدد در مبنای </span><span>a</span><span lang="FA"> را به ۱۰ تقسیم می‌کنیم تا اولین رقم سمت راست عدد در مبنای </span><span>a</span><span> <span lang="FA">بدست آید (باقیمانده تقسیم) و بعد از آن را در </span></span><span>a</span><span lang="FA"> به توان صفر </span><span>(i)</span><span lang="FA"> ضرب می‌کنیم و بعد خارج قسمت تقسیم را دوباره بر ۱۰ تقسیم می‌کنیم تا رقم دوم نیز بدست آید یک واحد به </span><span>i</span><span lang="FA">‌ اضافه می‌کنیم و بعد رقم را در </span><span>a</span><span lang="FA"> به توان </span><span>i</span><span lang="FA"> ضرب می‌کنیم، آنقدر این کار را ادامه می‌دهیم تا خارج قسمت صفر شود. این روش برای تبدیل یک عدد مبنای </span><span>a</span><span lang="FA"> به عدد مبنای ۱۰ در ریاضی بکار می‌رود و بعد از آن عدد مبنای ۱۰ را به عدد مبنای </span><span>b</span><span lang="FA"> تبدیل می‌کنیم. برای این تبدیل عدد را به </span><span>b</span><span lang="FA"> تقسیم کرده و باقیمانده را در ۱۰ به توان صفر </span><span>(i)</span><span lang="FA"> ضرب می‌کنیم سپس خارج قسمت این تقسیم را نیز دوباره به </span><span>b</span><span lang="FA"> تقسیم کرده و باقیمانده را در ۱۰ به توان </span><span>i+1</span><span lang="FA"> ضرب می‌کنیم، این کار را آنقدر تکرار می‌کنیم تا خارج قسمت صفر شود این روش برای تبدیل عدد در مبنای ۱۰ به عدد در مبنای </span><span>b</span><span lang="FA"> در ریاضیات بکار می‌رود.</span></p>
<p class="MsoNormal"><span>a</span><span lang="FA">: مبنای عدد اول</span></p>
<p class="MsoNormal"><span>b</span><span lang="FA">: مبنای عدد دوم</span></p>
<p class="MsoNormal"><span>na</span><span lang="FA">: عدد در مبنای </span><span>a</span></p>
<p class="MsoNormal"><span>nb</span><span lang="FA">: عدد در مبنای </span><span>b</span></p>
<p class="MsoNormal"><span>n10</span><span lang="FA">: عدد در مبنای ۱۰</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤math.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>long</span> <span>int</span> a, b, na, nb, n10, i;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>printf(<span>&#8220;n please enter na: &#8220;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>scanf(<span>&#8220;%ld&#8221;</span>,&amp;na);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>printf(<span>&#8220;n please enter a: &#8220;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>scanf(<span>&#8220;%ld&#8221;</span>,&amp;a);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>printf(<span>&#8220;n please enter b: &#8220;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>scanf(<span>&#8220;%ld&#8221;</span>,&amp;b);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>n10 = 0;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>i = 0;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>while</span>(na&gt;0)</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>n10 = n10 + ((na%10)*pow(a,i));</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>na = na / 10;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>i++;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>nb = 0;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>i = 0;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>while</span>(n10&gt;0)</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>nb = nb + ((n10%b)*pow(10,i));</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>n10 = n10 / b;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>i++;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>printf(<span>&#8220;n nb is : %ld&#8221;</span>, nb);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>}</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="FA">۱۲ـ برنامه‌ای بنویسید که عددی از ۱ تا ۷ را از ورودی خوانده، روزی از هفته که معادل با آن است در خروجی چاپ کند (با </span></strong><strong><span>switch</span></strong><strong><span lang="FA">).</span></strong><strong></strong></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><strong></strong></p>
<p class="MsoNormal" style="text-align: right;"><span>day</span><span lang="FA">: شماره مورد نظر</span></p>
<p class="MsoNormal" style="text-align: left;"><span lang="FA"><span> </span></span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>int</span> day;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>for</span>(;;)</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>printf(<span>&#8220;n please enter number of day(1&#8230;.7): &#8220;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>scanf(<span>&#8220;%d&#8221;</span>,&amp;day);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span><span>switch</span>(day)</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span><span>case</span> 1:</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span>printf(<span>&#8220;**Saturday**&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span><span>break</span>;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span><span>case</span> 2:</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span>printf(<span>&#8220;**Sunday**&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span><span>break</span>;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span><span>case</span> 3:</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span>printf(<span>&#8220;**Monday**&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span><span>break</span>;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span><span>case</span> 4:</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span>printf(<span>&#8220;**Tuseday**&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span><span>break</span>;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span><span>case</span> 5:</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span>printf(<span>&#8220;**Wednesday**&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span><span>break</span>;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span><span>case</span> 6:</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span>printf(<span>&#8220;**Thursday**&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span><span>break</span>;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span><span>case</span> 7:</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span>printf(<span>&#8220;**Friday**&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span><span>break</span>;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span><span>default</span>:</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span>printf(<span>&#8220;n your number is False, please try again&#8230;&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span><span>      </span><span>break</span>;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>}</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA">۱۳ـ برنامه‌ای بنویسید که سال تولد کاربر و سال فعلی را از ورودی خوانده، مشخص کند که او چند سال، چند ماه، چند روز، چند ساعت، چند دقیقه و چند ثانیه عمر کرده است.</span></strong><strong></strong></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><strong></strong></p>
<p class="MsoNormal"><span lang="FA">هر سال ۱۲ ماه است، هر ماه ۳۰ روز، هر روز ۲۴ ساعت، هر ساعت ۶۰ دقیقه و هر دقیقه ۶۰ ثانیه است.</span></p>
<p class="MsoNormal"><span>y1</span><span lang="FA">: سال تولد کاربر</span></p>
<p class="MsoNormal"><span>y2</span><span lang="FA">: سال فعلی</span></p>
<p class="MsoNormal"><span>y</span><span lang="FA">: تعداد سال‌های محاسبه شده</span></p>
<p class="MsoNormal"><span>m</span><span lang="FA">: تعداد ماههای محاسبه شده</span></p>
<p class="MsoNormal"><span>d</span><span lang="FA">: تعداد روز محاسبه شده</span></p>
<p class="MsoNormal"><span>h</span><span lang="FA">: تعداد ساعت محاسبه شده</span></p>
<p class="MsoNormal"><span>mn</span><span lang="FA">: تعداد دقیقه محاسبه شده</span></p>
<p class="MsoNormal"><span>s</span><span lang="FA">: تعداد ثانیه محاسبه شده</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><span lang="FA"><span> </span></span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>int</span> y1, y2, y, m;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>long</span> <span>int</span> d, h, mn, s;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>printf(<span>&#8220;n your enter year of your brithday: &#8220;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>scanf(<span>&#8220;%d&#8221;</span>,&amp;y1);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>printf(<span>&#8220;n your enter this year: &#8220;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>scanf(<span>&#8220;%d&#8221;</span>,&amp;y2);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>y = y2 &#8211; y1;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>m = y * 12;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>d = m * 30;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>h = d * 24;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>mn = h * 60;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>s = mn * 60;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>printf(<span>&#8220;n your age is %d years and %d months and %ld days and %ld hours and %ld minutes and %ld seconds &#8220;</span>,y,m,d,h,mn,s);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>}</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA">۱۴ـ برنامه‌ای بنویسید که ضرایب معادله درجه دوم را از ورودی گرفته، معادله را حل کند.</span></strong><strong></strong></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><strong></strong></p>
<p class="MsoNormal"><span lang="FA">معادله درجه دوم</span><span> : ax<sup>2</sup> + bx + c = 0</span></p>
<p class="MsoNormal"><span lang="AR-SA"><span> </span></span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤math.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>float</span> a, b, c, D, x1, x2;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>printf(<span>&#8220;n please enter a,b,c:n&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>scanf(<span>&#8220;%f%f%f&#8221;</span>,&amp;a,&amp;b,&amp;c);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>D = b * b &#8211; 4 * a * c;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>if</span> (D&lt;0)</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>printf(<span>&#8220;n Error because the answer is not Real&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>else</span></span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>x1 = (-b+sqrt(D))/(2*a);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>x2 = (-b-sqrt(D))/(2*a);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>printf(<span>&#8220;n a is: %f, b is: %f, c is: %f &gt;&gt;&gt; x1 is: %f , x2 is: %f&#8221;</span>,a,b,c,x1,x2);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span> </span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="FA">۱۵ـ برنامه‌ای بنویسید که با استفاده از حلقه‌های تو در تو خروجی زیر را تولید کند.</span></strong><strong></strong></p>
<p class="MsoNormal" style="text-align: left;"><strong><span>$$$$$$</span></strong><strong></strong></p>
<p class="MsoNormal" style="text-align: left;"><strong><span>$$$$$$</span></strong></p>
<p class="MsoNormal" style="text-align: left;"><strong><span>$$$$$$</span></strong></p>
<p class="MsoNormal" style="text-align: left;"><strong><span>$$$$$$</span></strong></p>
<p class="MsoNormal"><strong><span> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><strong></strong></p>
<p class="MsoNormal"><span lang="FA">در این مسئله به دو حلقه تو در تو نیازمندیم، حلقه‌ی بیرونی مشخص کننده سطرهای خروجی و حلقه‌ی داخلی مشخص کننده‌ی تعداد </span><span>$</span><span lang="FA">ها در هر سطر می‌باشد.</span></p>
<p class="MsoNormal"><span>i</span><span lang="FA">: شمارنده حلقه‌ی خارجی</span></p>
<p class="MsoNormal"><span>j</span><span lang="FA">: شمارنده حلقه‌ی داخلی</span></p>
<p class="MsoNormal"><span lang="FA"><span> </span></span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>int</span> i, j;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>    </span><span>for</span>(i=1;i&lt;=4;i++)</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>printf(<span>&#8220;n&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span><span>for</span>(j=1;j&lt;=6;j++)</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span>printf(<span>&#8220;$&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>}</span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><span> </span></p>
<p class="MsoNormal"><strong><span lang="FA">۱۶ـ برنامه‌ای بنویسید که دو مقدار اعشاری را از ورودی خوانده و تفاضل حاصلضرب و حاصل تقسیم آنها را محاسبه کرده و به خروجی ببرد. برنامه وقتی خاتمه می‌یابد که هر دو عدد اعشاری صفر باشند.</span></strong><strong></strong></p>
<p class="MsoNormal"><strong><span lang="AR-SA"> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><strong></strong></p>
<p class="MsoNormal"><span>x</span><span lang="FA">: عدد اعشاری اول</span></p>
<p class="MsoNormal"><span>y</span><span lang="FA">: عدد اعشاری دوم</span></p>
<p class="MsoNormal"><span>m</span><span lang="FA">: ضرب دو عدد اعشاری</span></p>
<p class="MsoNormal"><span>n</span><span lang="FA">: تقسیم دو عدد اعشاری</span></p>
<p class="MsoNormal"><span>s</span><span lang="FA">: </span><span>m-n</span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>float</span> x, y, m, n, s;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>for</span>(;;)</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>printf(<span>&#8220;n 2 float number:(you can select 0 and 0 for Quitn&#8221;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>scanf(<span>&#8220;%f%f&#8221;</span>,&amp;x,&amp;y);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span><span>if</span>(x==0 &amp;&amp; y==0)</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span><span>break</span>;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span><span>else</span></span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span>m = x * y;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span>n = x / y;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span>s = m &#8211; n;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>                  </span>printf(<span>&#8220;n (%f*%f) &#8211; (%f/%f) = %f&#8221;</span>,x,y,x,y,s);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span> </span></p>
<p class="MsoNormal" style="text-align: left;"><span> </span></p>
<p class="MsoNormal" style="text-align: left;"><strong><span lang="FA">۱۷ـ برنامه‌ای بنویسید که یک عدد اعشاری مثل </span></strong><strong><span>۶۴۳٫۲۱</span></strong><strong><span lang="FA"> را خوانده، وارون آن را بیابد. وارون این عدد </span></strong><strong><span>۱۲٫۳۴۶</span></strong><strong><span lang="FA"> است.</span></strong><strong></strong></p>
<p class="MsoNormal" style="text-align: left;"><strong><span lang="AR-SA"> </span></strong></p>
<p class="MsoNormal" style="text-align: left;"><strong><span lang="FA">جواب:</span></strong><strong></strong></p>
<p class="MsoNormal" style="text-align: left;"><span><span> </span></span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤math.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>double</span> j, x, xx, a;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>long</span> <span>int</span> i;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>printf(<span>&#8220;n enter float number: &#8220;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>scanf(<span>&#8220;%lf&#8221;</span>,&amp;x);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>a = 0;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>i = -1;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>xx = x;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>while</span> (floor(xx)&gt;0)</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>a+=(((<span>long</span> <span>int</span>)floor(xx)%10)*pow(10,i));</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>xx/=10;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>i&#8211;;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>i = 0;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>j = (<span>long</span> <span>int</span>)x;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>while</span> (x!=j)</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>x=x*10;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>a+=(((<span>long</span> <span>int</span>)floor(x)%10)*pow(10,i));</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>i++;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>j=(<span>long</span> <span>int</span>)x;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>printf(<span>&#8220;n number is %f&#8221;</span>,a);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span> </span></p>
<p class="MsoNormal"><span lang="FA"> </span></p>
<p class="MsoNormal"><strong><span lang="FA">۱۸ـ برنامه‌ای بنویسید که یک عدد اعشاری را از ورودی خوانده، هر یک از قسمت‌های صحیح و اعشاری آنرا به صورت یک عدد صحیح به خروجی ببرد. به عنوان مثال، عدد </span></strong><strong><span>۱۳٫۴۲</span></strong><strong><span lang="FA"> به صورت دو عدد صحیح </span></strong><strong><span>۱۳</span></strong><strong><span lang="FA"> و </span></strong><strong><span>۴۲</span></strong><strong><span lang="FA"> به خروجی ببرد.</span></strong></p>
<p class="MsoNormal"><strong><span lang="AR-SA"> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">جواب:</span></strong><strong></strong></p>
<p class="MsoNormal"><span><span> </span></span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤stdio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤conio.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>#include</span><span>≤math.h&gt;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>int</span><span> main()</span></p>
<p class="MsoNormal" style="text-align: left;"><span>{</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>float</span> x, r;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>int</span> m;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>clrscr();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>printf(<span>&#8220;n enter a float number: &#8220;</span>);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>scanf(<span>&#8220;%f&#8221;</span>,&amp;x);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>m = (<span>int</span>)x;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>r = x &#8211; m;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>printf(<span>&#8220;n %f = %d + %f&#8221;</span>,x,m,r);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>while</span> (r &#8211; floor(r) != 0)</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>            </span>r = 10 * r;</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>printf(<span>&#8220;n %1.0f&#8221;</span>,r);</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span>getch();</span></p>
<p class="MsoNormal" style="text-align: left;"><span><span>      </span><span>return</span> 0;</span></p>
<p class="MsoNormal" style="text-align: left;"><span>}</span></p>
<p class="MsoNormal" style="text-align: left;"><span> </span></p>
<p class="MsoNormal"><strong><span> </span></strong></p>
<p class="MsoNormal"><strong><span lang="FA">نکته:</span></strong></p>
<p class="MsoNormal"><span lang="FA">در حل دو مسئله آخر از تابعی به نام تابع </span><span>floor()</span><span lang="FA"> استفاده کردیم. این تابع بزرگترین مقدار صحیح کوچکتر یا مساوی یک عدد را که به صورت </span><span>double</span><span> <span lang="FA">نمایش داده می‌شود محاسبه می‌کند و الگوی آن به صورت زیر است:</span></span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>Double floor (double num)</span></p>
<p class="MsoNormal"><span lang="FA">اگر مقدار </span><span>۱٫۰۲</span><span lang="FA"> به عنوان آرگومان تابع باشد نتیجه حاصل برابر با </span><span>۱٫۰</span><span lang="FA"> و اگر عدد </span><span>-۱٫۲۰</span><span lang="FA"> به عنوان آرگومان تابع باشد نتیجه‌ی حاصل برابر با </span><span>-۱٫۰</span><span lang="FA"> خواهد بود. دستور زیر عدد </span><span>۱۰</span><span lang="FA"> را به عنوان نتیجه عمل چاپ می‌کند:</span></p>
<p class="MsoNormal" style="text-align: left;" dir="ltr"><span>printf(“%f”,floor(10.9));</span></p>
<p><span lang="FA">این تابع جزء توابع ریاضی می‌باشد بنابراین برای استفاده از این تابع و توابع ریاضی دیگر باید فایل سرآیند تعریف شود.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://amfy.ir/?feed=rss2&amp;p=10</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>تمرین ستاره ۲۴/۲/۸۷ (زبان c)</title>
		<link>http://amfy.ir/?p=81</link>
		<comments>http://amfy.ir/?p=81#comments</comments>
		<pubDate>Thu, 15 May 2008 09:54:10 +0000</pubDate>
		<dc:creator>مهران روشندل</dc:creator>
				<category><![CDATA[زبان برنامه نویسی C]]></category>
		<category><![CDATA[پودمان دوم رشته نرم افزار کامپیوتر]]></category>

		<guid isPermaLink="false">http://localhost/AMFI.ir/?p=81</guid>
		<description><![CDATA[


تمرین ستاره ۲۴/۲/۸۷:
برنامه‌ای بنویسید که با گرفتن یک عدد فرد، خروجی بصورت زیر داشته باشد:
بطور مثال برای عدد ۵ داشته باشیم:
*          
*          *
*          *          *
*          *
*
 
جواب:

روش اول: (توسط حلقه for)
 
 
#include≤stdio.h&#62;
#include≤conio.h&#62;
&#60;stdio.h≥&#60;conio.h≥main()
 {
  int m,n,p,q,s;
  clrscr();
  scanf(&#8220;%d&#8221;,&#38;m);
  p=1;
  q = (int)m/2+1;
  for (s=1;s&#60;=m;s++)
   {
    for (n=1;n&#60;=p;n++)
      printf(&#8220;*   &#8220;);
 
    if (s&#60;=q)&#60;q)
      p+=1;
    else
      p-=1;
 
    printf(&#8220;\n&#8221;);
   }
  getch();
  return(0);
 }
 
 
روش دوم: [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: right;" dir="rtl">
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: justify;" dir="rtl"><strong></strong><span lang="FA"></span></p>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: center;" dir="rtl"></div>
<p><strong><span style="font-size: 10pt; color: #c00000; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" lang="FA">تمرین ستاره ۲۴/۲/۸۷:</span></strong></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: justify;" dir="rtl"><span style="font-size: 10pt; color: blue; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" lang="FA">برنامه‌ای بنویسید که با گرفتن یک عدد فرد، خروجی بصورت زیر داشته باشد:</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: justify;" dir="rtl"><span style="font-size: 10pt; color: blue; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" lang="FA">بطور مثال برای عدد ۵ داشته باشیم:</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left;" dir="rtl"><span style="font-size: 10pt; color: blue; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" dir="ltr">*<span style="mso-tab-count: 1;">          </span></span><span style="font-size: 10pt; color: blue; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" lang="FA"></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left;" dir="rtl"><span style="font-size: 10pt; color: blue; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" dir="ltr">*<span style="mso-tab-count: 1;">          </span>*</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left;" dir="rtl"><span style="font-size: 10pt; color: blue; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" dir="ltr">*<span style="mso-tab-count: 1;">          </span>*<span style="mso-tab-count: 1;">          </span>*</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left;" dir="rtl"><span style="font-size: 10pt; color: blue; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" dir="ltr">*<span style="mso-tab-count: 1;">          </span>*</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left;" dir="rtl"><span style="font-size: 10pt; color: blue; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" dir="ltr">*</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: justify;" dir="rtl"><span style="font-size: 10pt; color: blue; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" dir="ltr"> </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: justify;" dir="rtl"><strong><span style="font-size: 10pt; color: #c00000; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" lang="FA">جواب:</span></strong></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: justify;" dir="rtl"><strong><span style="font-size: 10pt; color: #c00000; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" lang="FA"><span id="more-81"></span></span></strong></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: justify;" dir="rtl"><strong><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" lang="FA">روش اول: (توسط حلقه </span></strong><strong><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" dir="ltr">for</span></strong><strong><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" lang="FA">)</span></strong></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: justify;" dir="rtl"><span style="font-size: 10pt; color: blue; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" lang="FA"> </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: justify;" dir="rtl"><span style="font-size: 10pt; color: blue; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" lang="FA"> </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; color: blue; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr">#include</span><span style="font-size: 10pt; color: #a31515; font-family: &quot;Courier New&quot;; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr">≤stdio.h&gt;</span><span style="font-size: 10pt; color: #a31515; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA"></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; color: blue; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr">#include</span><span style="font-size: 10pt; color: #a31515; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr">≤conio.h&gt;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span dir="ltr"><span style="font-size: small; font-family: Times New Roman;">&lt;stdio.h≥&lt;conio.h≥</span></span><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr">main()</span><span dir="ltr"></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;"> </span>{</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span><span style="color: blue;">int</span> m,n,p,q,s;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span>clrscr();</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span>scanf(<span style="color: #a31515;">&#8220;%d&#8221;</span>,&amp;m);</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span>p=1;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span>q = (<span style="color: blue;">int</span>)m/2+1;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span><span style="color: blue;">for</span> (s=1;s&lt;=m;s++)</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">   </span>{</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">    </span><span style="color: blue;">for</span> (n=1;n&lt;=p;n++)</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">      </span>printf(<span style="color: #a31515;">&#8220;*<span style="mso-spacerun: yes;">   </span>&#8220;</span>);</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"> </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">    </span><span style="color: blue;">if</span> (s&lt;=q)&lt;q)</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">      </span>p+=1;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">    </span><span style="color: blue;">else</span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">      </span>p-=1;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"> </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">    </span>printf(<span style="color: #a31515;">&#8220;\n&#8221;</span>);</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">   </span>}</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span>getch();</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span><span style="color: blue;">return</span>(0);</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;"> </span>}</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: justify;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"> </span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: right;" dir="rtl"><strong><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-no-proof: yes;" dir="ltr"> </span></strong></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: justify;" dir="rtl"><strong><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" lang="FA">روش دوم: (توسط حلقه </span></strong><strong><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" dir="ltr">while</span></strong><strong><span style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" lang="FA">)</span></strong></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; color: blue; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr">#include</span><span style="font-size: 10pt; color: #a31515; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr">≤stdio.h&gt;</span><span style="font-size: 10pt; color: #a31515; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" lang="AR-SA"></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; color: blue; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr">#include</span><span style="font-size: 10pt; color: #a31515; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr">≤conio.h&gt;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span dir="ltr"><span style="font-size: small; font-family: Times New Roman;">&lt;stdio.h≥&lt;conio.h≥</span></span><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr">main()</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;"> </span>{</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span><span style="color: blue;">int</span> m,n,p,q,s;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span>clrscr();</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span>scanf(<span style="color: #a31515;">&#8220;%d&#8221;</span>,&amp;m);</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span>p=1;s=1;q=1;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span>q = (<span style="color: blue;">int</span>)m/2+1;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span><span style="color: blue;">while</span> (s&lt;=m)</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">   </span>{</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">    </span>n=1;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">    </span><span style="color: blue;">while</span> (n&lt;=p)</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">      </span>{</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">       </span>printf(<span style="color: #a31515;">&#8220;*<span style="mso-spacerun: yes;">   </span>&#8220;</span>);</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">       </span>n+=1;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">      </span>}</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">    </span><span style="color: blue;">if</span> (s&lt;=q)&lt;q)</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">     </span><span style="mso-spacerun: yes;"> </span>p+=1;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">    </span><span style="color: blue;">else</span></span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">      </span>p-=1;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">    </span>printf(<span style="color: #a31515;">&#8220;\n&#8221;</span>);</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">    </span>s+=1;</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">   </span>}</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span>getch();</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left; mso-layout-grid-align: none;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;">  </span><span style="color: blue;">return</span>(0);</span></p>
<p class="MsoNormal" style="margin: 0cm 0cm 0pt; direction: rtl; unicode-bidi: embed; text-align: left;" dir="rtl"><span style="font-size: 10pt; font-family: &quot;Courier New&quot;; mso-bidi-language: AR-SA; mso-no-proof: yes;" dir="ltr"><span style="mso-spacerun: yes;"> </span>}</span><span style="font-size: 10pt; color: blue; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; mso-fareast-font-family: 'Times New Roman';" dir="ltr"></span></p>
]]></content:encoded>
			<wfw:commentRss>http://amfy.ir/?feed=rss2&amp;p=81</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>آرایه ها چهارشنبه ۲۴/۰۲/۸۷</title>
		<link>http://amfy.ir/?p=85</link>
		<comments>http://amfy.ir/?p=85#comments</comments>
		<pubDate>Thu, 15 May 2008 06:15:27 +0000</pubDate>
		<dc:creator>مهران روشندل</dc:creator>
				<category><![CDATA[ساختمان داده ها]]></category>
		<category><![CDATA[پودمان دوم رشته نرم افزار کامپیوتر]]></category>

		<guid isPermaLink="false">http://localhost/AMFI.ir/?p=85</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[]]></content:encoded>
			<wfw:commentRss>http://amfy.ir/?feed=rss2&amp;p=85</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
