اثر پروانه ای

برنامه نویسی حرفه ای کامپیوتر به زبان سی شارپ - لیست کامل کلمات کلیدی در ʚĭɞ - ßữʈʨɾflỵ ⓔⓕⓕⓔⓒⓣ

مشخصات بلاگ
اثر پروانه ای

اثر پروانه‌ای نام پدیده‌ای است که به دلیل حساسیت سیستم‌های آشوب‌ناک به شرایط اولیه ایجاد می‌شود. این پدیده به این اشاره می‌کند که تغییری کوچک در یک سیستم آشوب‌ناک چون جو سیارهٔ زمین (مثلاً بال‌زدن پروانه) می‌تواند باعث تغییرات شدید (وقوع توفان در کشوری دیگر) در آینده شود.

ایده‌ٔ این‌که پروانه‌ای می‌تواند باعث تغییری آشوبی شود نخستین بار در ۱۹۵۲ در داستان کوتاهی به نام آوای تندر اثر ری بردبری مطرح شد. عبارت «اثر پروانه ای» هم در ۱۹۶۱ در پی مقاله‌ای از ادوارد لورنتس به وجود آمد. وی در صد و سی و نهمین اجلاس ای‌ای‌ای‌اس در سال ۱۹۷۲ مقاله‌ای با این عنوان ارائه داد که «آیا بال‌زدن پروانه‌ای در برزیل می‌تواند باعث ایجاد تندباد در تکزاس شود؟»

آخرین نظرات
  • ۱۱ بهمن ۹۵، ۱۷:۱۸ - فاروق کریمی زاده
    خوب بود.
اثر پروانه ای

بسم الله الرحمن الرحیم

سلام. عذرخواهی می کنم بابت تأخیری که برای نوشتن درس جدید داشتم. یه مشغولیت هایی داشتم که باعث شد نتونم به موقع درخدمتتون باشم.

در این درس می خواهیم با الگوریتم آشنایی پیدا کنیم. الگوریتم که از نام خوارزمی دانشمند بزرگ ایرانی گرفته شده به معنای مجموعه ای متناهی از دستور العمل هاست که با پیگیری آنها مسأله ای را حل می‌کنیم. در واقع الگوریتم روشی گام به گام برای حل مسأله است.

الگوریتم ها دارای ویژگی هایی هستند که ذیلا" به آنها اشاره می کنیم:

  • ورودی
    یک الگوریتم باید هیچ یا تعدادی پارامتر را به عنوان ورودی بپذیرد.
  • خروجی
    یک الگوریتم باید حداقل یک خروجی به عنوان نتیجه عملیات داشته باشد.
  • قطعیت
    دستورات الگوریتم باید با زبانی دقیق، و بی‌ابهام بیان شوند. هر دستورالعمل نیز باید انجام‌پذیر باشد. دستورهایی نظیر "مقدار ۶ یا ۷ را به x اضافه کن" یا "حاصل تقسیم پنج بر صفر را محاسبه کن" مجاز نیستند؛ چرا که در مورد مثال اول، معلوم نیست که بالاخره چه عددی باید انتخاب شده و به x افزوده شود، و در خصوص مثال دوم هم تقسیم بر صفر در ریاضیات تعریف نشده‌ است.
  • محدودیت
    الگوریتم باید دارای شروع و پایان مشخصی باشد، به نحوی که اگر دستورات آن را دنبال کنیم، برای تمامی حالات، الگوریتم پس از طی مراحلی متناهی ، خاتمه یابد. به علاوه، زمان لازم برای خاتمه الگوریتم هم باید به گونه‌ای معقول، کوتاه باشد.

طراحی و ساخت الگوریتم های مناسب در مرکز فعالیت های برنامه نویسی قرار دارد. (برگرفته از ویکی پدیا / با اندکی تصرف)

حالا همه این مواردی که گفتم برای این بود که در عمل ازشون استفاده کنیم. ما باید مسأله مورد نظر خودمون رو بررسی کرده و برای آن راه حلی ارائه دهیم. این راه حل باید بصورت دقیق و گام به گام باشد. اجازه دهید با چند مثال الگوریتمی آشنا شویم.

الگوریتم پختن نیمرو:

  1. شروع
  2. ظرف روی اجاق قرار دهید.
  3. روغن را اضافه کنید.
  4. اجاق را روشن کنید.
  5. اگر روغن به اندازه کافی گرم شده
    1. تخم مرغ را در ظرف بشکنید.
    2. به مقدار مورد نیاز نمک اضافه کنید.
  6. وقتی نیمرو پخته شد، اجاق را خاموش کنید.
  7. پایان

الگوریتم تلفن زدن به علیرضا:

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

    نظرات  (۲)

  1. رندخرابات
  2. به به..به این سرعت ما شدیم نیمه حرفه ای؟
    عالیه!! (اسمایلی ذوق زده D;)
    دستتون درد نکنه که با وجود اینهمه مشغله بازم بفکر بروز کردن وبلاگ هستیدو..
    خدا خیرتون بده!
    پاسخ:
    اگه واقعا مطالب قبلی رو بخوبی یاد گرفته باشید... بله
    سلام وقتتون بخیرببخشید آموزشاتون رو چندروز درمیان میزارین سایت؟میخوام بدونم که بیخودگوشیمو واسه اینترنت شارژنکنم
    پاسخ:
    سلام...
    ممنون که به این بلاگ لطف دارید...
    متأسفانه این روزها جاهای زیادی مشغولم و به همین دلیل وبلاگ رو نمی تونم بصورت منظم بروز کنم. اما معمولا هر هفته 2 مطلب توی وبلاگ قرار می گیره. درس بعدی رو فردا بعد از ظهر آپلود می کنم.
    موفق باشید.

    ارسال نظر

    لطفا اگر می خواهید در بخش نظرات، کد برنامه مورد نظر خود را بنویسید، قسمت زیر (Program Code) را کپی کرده، و در کادر "پیام" ، paste کنید. سپس برنامه مورد نظر خود را در کادری که ایجاد می شود، وارد کنید.

    • کلید میانبر برای Copy کردن: Ctrl+C

    • کلید میانبر برای paste کردن: Ctrl+V

    //Program Code

    از همکاری شما کمال تشکر را دارم.

    ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
    شما میتوانید از این تگهای html استفاده کنید:
    <b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
    تجدید کد امنیتی