بسم الله الرحمن الرحیم
سلام. عذرخواهی می کنم بابت تأخیری که برای نوشتن درس جدید داشتم. یه مشغولیت هایی داشتم که باعث شد نتونم به موقع درخدمتتون باشم.
در این درس می خواهیم با الگوریتم آشنایی پیدا کنیم. الگوریتم که از نام خوارزمی دانشمند بزرگ ایرانی گرفته شده به معنای مجموعه ای متناهی از دستور العمل هاست که با پیگیری آنها مسأله ای را حل میکنیم. در واقع الگوریتم روشی گام به گام برای حل مسأله است.
الگوریتم ها دارای ویژگی هایی هستند که ذیلا" به آنها اشاره می کنیم:
-
ورودی
یک الگوریتم باید هیچ یا تعدادی پارامتر را به عنوان ورودی بپذیرد. -
خروجی
یک الگوریتم باید حداقل یک خروجی به عنوان نتیجه عملیات داشته باشد. -
قطعیت
دستورات الگوریتم باید با زبانی دقیق، و بیابهام بیان شوند. هر دستورالعمل نیز باید انجامپذیر باشد. دستورهایی نظیر "مقدار ۶ یا ۷ را به x اضافه کن" یا "حاصل تقسیم پنج بر صفر را محاسبه کن" مجاز نیستند؛ چرا که در مورد مثال اول، معلوم نیست که بالاخره چه عددی باید انتخاب شده و به x افزوده شود، و در خصوص مثال دوم هم تقسیم بر صفر در ریاضیات تعریف نشده است. - محدودیت
الگوریتم باید دارای شروع و پایان مشخصی باشد، به نحوی که اگر دستورات آن را دنبال کنیم، برای تمامی حالات، الگوریتم پس از طی مراحلی متناهی ، خاتمه یابد. به علاوه، زمان لازم برای خاتمه الگوریتم هم باید به گونهای معقول، کوتاه باشد.
طراحی و ساخت الگوریتم های مناسب در مرکز فعالیت های برنامه نویسی قرار دارد. (برگرفته از ویکی پدیا / با اندکی تصرف)
حالا همه این مواردی که گفتم برای این بود که در عمل ازشون استفاده کنیم. ما باید مسأله مورد نظر خودمون رو بررسی کرده و برای آن راه حلی ارائه دهیم. این راه حل باید بصورت دقیق و گام به گام باشد. اجازه دهید با چند مثال الگوریتمی آشنا شویم.
الگوریتم پختن نیمرو:
- شروع
- ظرف روی اجاق قرار دهید.
- روغن را اضافه کنید.
- اجاق را روشن کنید.
- اگر روغن به اندازه کافی گرم شده
- تخم مرغ را در ظرف بشکنید.
- به مقدار مورد نیاز نمک اضافه کنید.
- وقتی نیمرو پخته شد، اجاق را خاموش کنید.
- پایان
الگوریتم تلفن زدن به علیرضا:
- شروع
- شماره تلفن علیرضا را در دفترچه تلفن پیدا کنید.
- گوشی تلفن را بردارید.
- اگر بوق ممتد شنیدید به مرحله 5 بروید در غیراینصورت به مرحله 6 بروید.
- شماره گیری کنید.
- اگر صدای علیرضا را شنیدید صحبت کنید.
- گوشی را بگذارید.
- پایان
- شروع
- 1 -> count و 0 -> sum و 0 -> num
- کارهای زیر را تا زمانی که 10 => count است تکرار کن
- یک عدد از ورودی خوانده و در num ذخیره کن.
- sum <- sum + num
- count <- count + 1
- sum/10 را چاپ کن.
- الگوریتم محاسبه محیط و مساحت دایره
- الگوریتمی که دو مقدار از ورودی خوانده و مقدار بزرگتر را چاپ کند.
- الگوریتمی که عددی مثل x را دریافت کرده و در صورت زوج بودن ، 2x+5 و در غیر اینصورت 2x-5 را محاسبه و چاپ کند.
- الگوریتم حل معادله های دو مجهولی
- الگوریتم محاسبه فاکتوریل عدد x
- الگوریتمی که 100 عدد از ورودی دریافت کرده و تعداد اعدادی که بر 3 بخش پذیرند را چاپ کند.
- ...
عالیه!! (اسمایلی ذوق زده D;)
دستتون درد نکنه که با وجود اینهمه مشغله بازم بفکر بروز کردن وبلاگ هستیدو..
خدا خیرتون بده!