اثر پروانه ای

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

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

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

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

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

برنامه نویسی مقدماتی سی شارپ / درس هشتم

چهارشنبه, ۱۱ دی ۱۳۹۲، ۱۲:۲۰ ب.ظ

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

باسلام...

در جلسه قبل یکی از مهمترین ساختار های برنامه نویسی (ساختار شرطی if..else) رو بررسی کردیم. با عملوندها و عملگرها آشنا شدیم. امیدوارم درس قبل رو بخوبی متوجه شده باشید.

در این جلسه به امید خدا در مورد ساختارهای تکرار صحبت می کنیم و یکی از مهمترین ساختارهای تکرار در برنامه نویسی سی شارپ رو با هم یاد می گیریم.

قبل از هرچیز باید ببینیم ساختار تکرار چی هست و چه کاربردی داره. در بیشتر مواقع نیاز داریم که یک کار تکراری رو بارها و بارها انجام بدیم. مثلا نام و نام خانوادگی 1000 نفر رو بپرسیم، عددهای زوج بین 2 تا 256 رو با هم جمع کنیم، فاکتوریل یک عدد رو محاسبه کنیم. رنگ یک دکمه رو بصورت متوالی قرمز و آبی کنیم و...

به ساختارهای تکرار، حلقه هم می گویند.

یکی از ساختارهای مهم تکرار ، ساختار while هست. به شکل کلی این ساختار توجه کنید:

while(Conditional Expression){
    Commands set
}

حلقه while ، تا زمانی که عبارت شرطی داخل پرانتز برابر با true باشد، مجموعه دستورات داخل آکولاد را اجرا می کند. ممکنه این عبارت هیچوقت برابر با false نشود، بنابراین حلقه تا بی نهایت ادامه پیدا می کند. اگر حلقه بصورت بی نهایت باشد، پس از اینکه مدتی از اجرای حلقه بگذرد برنامه با خطای Stack Overflow مواجه خواهد شد.(حالا فعلا کاری نداریم که این خطا چی هست).

بذارید در عمل با طرز کار این حلقه آشنا شویم. یک پروژه جدید بسازید و یک TextBox و یک دکمه روی فرم آن قرار دهید. خاصیت Name مربوط به شیئ TextBox رو به txtDisplay تغییر دهید.

loop structures example

برنامه پایین رو برای دکمه بنویسید. (البته اینکه می گوییم فلان برنامه رو برای دکمه بنویسید اصطلاح درستی نیست، بعدا که با "رویدادها" آشنا شدیم، متوجه خواهید شد)

while (txtDisplay.Text.Length < 5)
{
    txtDisplay.Text = txtDisplay.Text + "A";
}

این برنامه تا زمانی که طول متن داخل TextBox کمتر از 5 حرف باشد، حرف A را به TextBox اضافه می کند.

نکات جدید برنامه: 

  • برای بدست آوردن طول هر رشته ای می توانیم از خصوصیت Length آن رشته استفاده کنیم. دقت کنید که چطور طول متن داخل TextBox را بدست آورده ایم، سپس آنرا با 5 مقایسه کرده ایم.
  • به دستور  "txtDisplay.Text=txtDisplay.Text+"A  دقت کنید. به دستورهایی که در آنها علامت = وجود دارد، اصطلاحا "بیان انتساب" می گوییم. همیشه قسمت سمت راست علامت مساوی محاسبه شده سپس نتیجه آن به قسمت سمت چپ هدایت خواهد شد. باید توجه داشته باشید که مقدار قبلی قسمت سمت چپ با مقدار جدید جایگزین می شود.
  • در هر دور حلقه ، به متن داخل TextBox حرف A اضافه می شود. پس طبیعتا طول متن داخل TextBox زیادتر می شود؛ اما حلقه تا زمانی دستورهای داخل بلوک خود را اجرا می‌کند که طول متن کمتر از 5 باشد.
سعی کنید مقادیر و عبارات این برنامه را تغییر دهید و نتیجه را مشاهده کنید. مثلا علامت کوچکتر را با علامت های دیگری که در جلسه قبل با آنها آشنا شدید جایگزین کنید، سپس در نتیجه اجرای برنامه دقت کنید و برای آن دلیل بیاورید.
ادامه مبحث متغیرها:
تا اینجا کمی با متغیر آشنا شده ایم. متغیرهای رشته ای را مورد استفاده قرار دادیم. اما اجازه دهید بیشتر در مورد این جزء اساسی برنامه ها بیاموزیم.
متغیرها را می توان به دو دسته اصلی عددی و غیر عددی تقسیم کرد. متغیرهای رشته ای یا string در دسته غیرعددی ها قرار می گیرند.
متغیرهای عددی خود شامل دو دسته متغیرهای صحیح و متغیرهای اعشاری هستند. هرگاه بخواهیم یک عدد صحیح مانند 5 ، 136 ، 124313 و... را ذخیره کنیم باید آن ها را در متغیر نوع صحیح ذخیره کنیم. برای تعریف متغیرهای نوع صحیح به روش زیر عمل می کنیم:
int MyIntVariable=124313;

در عبارت بالا MyIntVariable ، نام متغیر بوده و کاملا صلیقه ای هست. کلمه کلیدی int به کامپیوتر می فهماند که باید یک متغیر نوع صحیح (Integer) بسازد. قسمت بعد از علامت مساوی کاملا اختیاری بوده و می توانید از آن صرف نظر کنید؛ این قسمت مقدار اولیه متغیر را مشخص می کند.

برای تعریف متغیرهای اعشاری به روش زیر عمل می کنیم:

float MyFloatVariable=3.1415f;

تنها نکته در مورد متغیرهای اعشاری این است که اگر دقت کنید بعد از عدد 3.1415 از حرف f استفاده کرده ایم. البته این کار ما علت هایی داره اما فعلا شما نیازی نیست درگیر این مسایل شوید.

علاوه بر int ، نوع های دیگری هم می توانیم برای متغیرهای صحیح تعریف کنیم. از جمله انواع متغیرهای صحیح می توان به byte ، long ، uint ، ulong و غیره اشاره کرده. تفاوت آنها در گنجایش آنها برای ذخیره اعداد هست. مثلا نوع byte حداکثر می تواند عددی به بزرگی 255 را در خود ذخیره کند.

من قبلا در مورد همه ی کلمات کلیدی موجود در سی شارپ ، مطالب کامل و جامعی رو در همین بلاگ قرار داده ام. تمام انواع عددی با کلمات کلیدی مربوط به خود تعریف می شوند. برای اطلاعات بیشتر می توانید به صفحه کلمات کلیدی سی شارپ مراجعه کنید.

ان شاء الله در جلسات آینده برنامه های جالبی با استفاده از همین متغیرها خواهیم ساخت.

موفق باشید.

نظرات  (۳)

سسلام من کلی پول دادم کلاس رفتم هیچی یاد نگرفتم ولی شما عالی هستیذ خدا خیرتون بدع

سسلام من کلی پول دادم کلاس رفتم هیچی یاد نگرفتم ولی شما عالی هستیذ خدا خیرتون بدع

  • رندخرابات
  • سلام..این برنامه هم خوب بود و اجرا شد!
    استاد شما پلاس هم فعالین ها..
    راستی یه کامنتم برا درس هفتم گذاشته بودم..تایید نکردید یا ثبت نشده؟
    پاسخ:
    سلام...
    متأسفانه یا خوشبختانه من توی اکثر شبکه های اجتماعی فعالیت دارم...
    تمام کامنت های شما بلا استثناء تا الآن تأیید شدن...

    ارسال نظر

    لطفا اگر می خواهید در بخش نظرات، کد برنامه مورد نظر خود را بنویسید، قسمت زیر (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="">
    تجدید کد امنیتی