دروس نهم

در اينجا دروس نهم را مشاهده مي كنيد

جمعه ۰۷ اردیبهشت ۰۳

وبلاگ دروس نهم

۶۶ بازديد

به وبلاگ درس نهم خوش آمديد 

در اين  وبلاگ منابع درسي نهم را مي بينيد

نمونه سوال فارسي نهم

۸۴ بازديد

سوالات نوبت

درس فارسي براي دانش آموزان درسخوان و سخت كوش نهم  

 

 

دانلود را بزنيد

 

از اينجا دانلود كنيد

جزوه علوم فصل ماشينها

۸۹ بازديد

مي توانيد از اينجا دانلود كنيد

بر روي دانلود زده و فايل را با خيال راحت دانلود كنيد

الگوريتم

۸۳ بازديد

همه‌ي ما – حتي كساني كه تا كنون برنامه نويسي نكرده‌اند – مي‌دانيم كه كامپيوترها و سيستم‌هاي كامپيوتري براي انجام هر كاري نياز به برنامه (Program) دارند.

اما برنامه نويسي معمولاً با نوشتن برنامه آغاز نمي‌شود. قبل از نوشتن برنامه لازم است گام به گام، كارهايي را كه بايد برنامه انجام دهد تعريف كنيم.

 به اين تعريف گام به گام يك عمليات، طراحي الگوريتم (Algorithm) گفته مي‌شود. 

مي‌توان گفت كساني كه كدنويسي بلدند، الگوريتم را به يك برنامه قابل اجرا در كامپيوترها تبديل مي‌كنند.

تفاوت برنامه نويسي با الگوريتم نويسي و طراحي الگوريتم چيست؟

كساني كه در محيط‌هاي سازماني فعاليت مي‌كنند، با تصور فرايندهاي عملياتي كسب و كار مي‌توانند تا حد زيادي مفهوم الگوريتم را درك كنند.

فرايندي كه يك نامه يا سند از رسيدن به دبيرخانه تا طبقه بندي و بررسي و ارجاع و اقدام و بايگاني طي مي‌كند، در الگوي ذهني برنامه نويسان يك الگوريتم محسوب مي‌شود: گام‌هاي متوالي با تعريف مشخص و تقدم و تأخر مشخص كه از نقطه‌اي شروع مي‌شوند و در نقطه‌اي به پايان مي‌رسند و ممكن است ده‌ها و صدها و هزاران بار تكرار شوند.

دانش‌آموزان هم احتمالاً با مرور مراحل ضرب دو عدد ده رقمي در يكديگر، مي‌توانند به خوبي مفهوم الگوريتم را درك و تصور كنند.

مثال الگوريتم در زندگي روزمره

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

اين نكته‌اي است كه در درس نظم شخصي هم تحت عنوان روتين‌هاي شخصي به آن اشاره كرديم.

[ درس مرتبط: روتين شخصي چيست و چرا اهميت دارد؟ ]

گاهي اوقات هم، ما ناآگاهانه الگوريتم مشخصي را انتخاب و استفاده مي‌كنيم.

اما وقتي مقياس فعاليت‌ها و مسئله‌ها بزرگ‌تر مي‌شود، بيش از هر زمان ديگري احساس مي‌كنيم كه نيازمند الگوريتم هستيم.

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

اگر پيش از اين با الگوريتم و مفهوم آن آشنا نبوده‌ايد، شايد بد نباشد در همين‌جا كمي به مرتب كردن دانش‌آموزان به ترتيب قد فكر كنيد و اينكه اگر شما باشيد چگونه اين كار را انجام مي‌دهيد.

براي اينكه كمي پيچيدگي‌هاي طراحي الگوريتم را – حتي در همين مثال ساده – تجربه كنيد، مي‌توانيد دو حالت زير را به صورت جداگانه در نظر بگيريد:

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

روش نمايش الگوريتم ها

گاهي اوقات الگوريتم‌هاي ساده را مي‌توان به صورت گام به گام با چند شماره گذاري شرح داد.

وقتي الگوريتم‌ها پيچيده‌تر مي‌شود از فلوچارت (Flowchart) براي نمايش آن‌ها استفاده مي‌شود. فلوچارت در زبان فارسي به روندنما ترجمه شده است.

نمونه يك فلوچارت يا روندنما براي نمايش الگوريتم

طبيعتاً كساني كه به برنامه نويسي علاقه دارند، گاهي از كدهاي برنامه‌نويسي و نيز برنامه‌هاي سمبليك هم براي نمايش الگوريتم استفاده مي‌كنند.

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

در اينجا چند خط برنامه جنريك (يا برنامه سمبليك) را براي نمايش يك الگوريتم مشاهده مي‌كنيد:

نمونه كد براي نمايش الگوريتم

چند مثال از الگوريتمهاي رايج

معمولاً آموزش الگوريتم را با الگوريتم هاي مرتب كردن (اصطلاحاً: Sorting) آغاز مي‌كنند.

مثالي هم كه در ابتداي اين درس براي مرتب كردن دانش‌آموزان بر اساس قد مطرح شد، از همين جنس بود.

اما دنياي تكنولوژي انبوهي از الگوريتم‌ها را در اطراف ما قرار داده كه معمولاً بدون اين‌كه به آن‌ها توجه كنيم، از نتايج‌شان استفاده مي‌كنيم.

در اينجا تنها از چند نمونه نام مي‌بريم و در درس‌هاي ديگر بسته به نياز، بحث مربوط به الگوريتم‌ها را بازتر خواهيم كرد:

 

   الگوريتم‌هاي مورد استفاده در موتورهاي جستجو براي پيدا كردن بهترين پاسخ‌ها براي پرسش كاربران

   در شكل كلي‌تر، الگوريتم‌هاي پيشنهاددهنده كه در بسياري از نرم‌افزارها از جمله شبكه هاي اجتماعي و خرده فروشي هاي ديجيتال (مثل آمازون و ديجي كالا)‌ دائماً از آنها استفاده مي‌كنيم (يا آنها از ما استفاده مي‌كنند).

   الگوريتم‌هاي رمزنگاري كه مي‌كوشند امنيت تبادل اطلاعات در شبكه‌هاي ارتباطي را افزايش دهند.

  الگوريتم‌هاي فشرده سازي اطلاعات كه حجم داده‌ها را تا حد امكان كاهش مي‌دهند.

 

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

بنابراين، طبيعي است آنچه در اينجا اشاره شد، نكاتي بسيار ابتدايي – گاه به قيمت حذف جزئيات و دقت علمي – بود تا صرفاً اين مفهوم براي دوستان عزيز شفاف‌تر شود.