اثر پروانه ای

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

اثر پروانه ای

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

اثر پروانه ای

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

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

آخرین نظرات
  • ۱۳ بهمن ۰۱، ۱۵:۳۱ - حسنا سادات و سما سادات
    عالی

۶۸ مطلب با موضوع «تئوری» ثبت شده است

  • ۲
  • ۰

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

سلام.

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

پیرو همین انتقادات سازنده، بر آن شدیم تا در آخر هر درس، یک سری تمرین هم قرار دهیم، تا هنرآموزان عزیز علاوه بر Copy و Paste کردن کدها، مهارت حل مسائل برنامه نویسی با استفاده از همین ابزارهایی که تاکنون آموخته اند را کسب کنند. بدیهی است که برنامه نویسی، صرفا با کپی کردن کدها، بدست نمی آید. بنابراین خواهشمندیم سعی کنید خودتان مسائل مطرح شده در انتهای دروس را حل کنید.

درس 13 را به نحوه ساخت Class اختصاص دادیم و قبلا گفته بودیم که کلاس ها حاوی اجزایی می‌باشند. کلاس ها اجزای داده ای و عملیاتی مرتبط با هم را، دسته بندی می‌کنند. همان طور که ملاحضه فرمودید، متد factorial را در کلاس Math ایجاد کردیم.

اجازه دهید کمی در مورد فاکتوریل صحبت کنیم. (هرچند این صحبت، حاشیه ای بر این درس هست) به احتمال زیاد با این تابع ریاضی آشنایی دارید، اما برای عزیزانی که آشنایی ندارند کمی توضیح می‌دهم. فاکتوریل عدد n بصورت زیر محاسبه می شود: 

n! = 1 × 2 × 3 × 4 × ... × n-2 × n-1 × n

به عبارت دیگر، اعداد 1 تا n را در هم ضرب می کنیم.

  • غلامعلی حسینی بهجانی
  • ۲
  • ۰

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

سلام...

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

قبلا تا حدودی با "کلاس" و "شئ" آشنایی پیدا کردید. اما لازم هست که چند نکته رو در این مورد گوشزد کنم.

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

  • غلامعلی حسینی بهجانی
  • ۳
  • ۰

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

سلام...

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

شئ گرایی در برنامه نویسی، کار برنامه نویس ها رو بسیار ساده کرده به این دلیل که پیچیدگی برنامه‌های نوشته شده به این روش بسیار کم بوده ، هزینه آن کمتر و امکان توسعه سریع تر برنامه را به برنامه نویس خواهد داد. جلوی بسیاری از خطاهای منطقی در برنامه نویسی، با این روش گرفته می شود. البته این امکان وجود دارد که زبان برنامه نویسی مورد استفاده، تمام امکانات را برای نوشتن یک برنامه شئ‌گرا فراهم کرده باشه، اما برنامه نویسی ما به روش سنتی باشه! گفتن این مقدمه طولانی شاید کمی بی موقع باشه. پس بریم ببینیم این روش برنامه نویسی واقعا به چه شکل هست. البته باید بگم معمولا برنامه نویسی به این روش رو کسی به این زودی تدریس نمی کنه! و معمولا بعد از آشنایی هنرآموز با چند زبان غیر شئ‌گرای دیگر، این مباحث رو تدریس می کنند. اما به این دلیل که با اکثر مفاهیم اولیه تا حدودی آشنایی پیدا کرده اید، این مبحث رو زود تر مطرح کردیم. در ضمن تمام دروسی که تا اینجا گفته شده بسیار مختصر و خلاصه بوده اند.

  • غلامعلی حسینی بهجانی
  • ۲
  • ۰

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

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

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

  • غلامعلی حسینی بهجانی
  • ۲
  • ۰

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

سلام...

همونطوری که در جلسه قبل قولش رو داده بودم، در این درس می خوام در مورد محدوده متغیرها ، تبدیل رشته ها به عدد و همچنین ثابت ها، صحبت کنم. در قسمت عملی این درس هم با چندتا از اشیاء دیگر آشنا شویم. البته رسم بر اینه که به اشیائی که روی فرم میگذاریم "کنترل" بگیم، پس از حالا طبق همین رسم پیش خواهیم رفت.

متغیرها علاوه بر اینکه دارای نام، نوع و مقدار اولیه هستند، دارای طول عمر و سطح دسترسی نیز می‌باشند. با سه تای اولی که آشنایی دارید. اما توی این درس قصد دارم شما رو با طول عمر و سطح دسترسی متغیرها آشنا کنم. شما بعد از آشنایی با این موارد توانایی نوشتن برنامه های بهتری را خواهید داشت.

  • غلامعلی حسینی بهجانی
  • ۲
  • ۰

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

سلام...

در جلسه قبل با حلقه های تکرار آشنا شدیم و با استفاده از حلقه while یک برنامه ساده نوشتیم. همچنین با انواع دیگری از متغیر ها آشنایی کمی پیدا کردیم. در این جلسه قصد دارم شما رو با نوع خاصی از متغیرها که در برنامه نویسی به "آرایه" مشهور هستند، آشنا کنم. همچنین با حلقه تکرار for هم آشنا شویم. با ما باشید...

متغیر های رشته ای یا string برای ذخیره سازی (موقت) یک متن بکار می روند. متغیرهای عددی ، از جمله int ، float ، byte و... برای ذخیره سازی اعداد مورد استفاده قرار می گیرند. اما نوشتن بعضی برنامه ها نیازمند تعداد زیادی متغیر است. برای مثال فرض کنید بخواهیم برنامه ای بنویسیم که نمرات یک دانشجو را گرفته و معدل او را محاسبه کند. یکی از راه حل ها می تواند این باشد که برای هر درس یک متغیر جداگانه بسازیم. بصورت زیر: (در کد زیر سعی کرده ام که روش های مختلف تعریف و مقدار دهی اولیه متغیرها رو نشان دهم)

float riazi=18.25f;
float fizik=16.5f,shimi,farsi=20.0f;
float miyangin=(riazi+fizik+shimi+farsi)/4;

برنامه محاسبه میانگین نمرات، یک برنامه با تعداد متغیرهای کم است. هرچند ما از بعضی دروس صرف نظر کردیم. اما تصور کنید بخواهید برنامه ای برای سرشماری یک شهر بزرگ را بنویسیم! که در آن نیاز به ذخیره اسم شهروندان داشته باشیم. چون می خواهیم بعدا تعداد افرادی را که نامشان "علی" هست را بفهمیم. از آن گذشته شاید بخواهیم نام ها را بر اساس حروف الفبا مرتب کنیم.

  • غلامعلی حسینی بهجانی
  • ۲
  • ۰

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

سلام دوستان عزیز...

همونطوری که در جلسه قبل گفتم، یکی از شاخصه هایی که به برنامه هوشمندی میده اینه که برنامه توانایی این رو داشته باشه که در شرایط مختلف تصمیم های مناسبی بگیره. چندتا مثال هم زدم. مثلا گفتم شما اگر گرسنه شوید سراغ غذا می روید. اگر بخواهید برنامه نویسی یاد بگیرید به باترفلای سر میزنید و... در جلسه قبل روش ساختن متغیر رشته ای رو هم یاد گرفتیم. در این درس ساختار شرطی "if" رو براتون تا حدودی شرح میدم. همچنین در این درس با عملگرها و عملوندها و عبارت ها آشنا خواهیم شد و از آنها در یک برنامه ساده اما خیلی هوشمندانه تر از برنامه های قبل استفاده می کنیم.

قبل از هرچیز اجازه دهید تا در مورد عملگر ، عملوند و عبارت صحبت کنیم. در برنامه نویسی، برخی از جملات هستند که نمی توانیم به آنها بگوییم "دستور" اما برای ما عمل خاصی رو انجام می دهند. خود این جملات از بخش هایی تشکیل شده اند که توضیح میدم. به این جملات ، "عبارت" یا Expression می گوییم.

عبارت ها از دو بخش عملوند و عملگر تشکیل شده اند. به شکل زیر دقت کنید:

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

در این شکل عملگرها رو با چهارضلعی های آبی مشخص کرده ام و عملوندها را با چهارضلعی های قرمز.

  • غلامعلی حسینی بهجانی
  • ۲
  • ۰

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

سلام...


تا اینجای کار تقریبا می تونم بگم اصلا برنامه ای ننوشتیم. اما تا حدود کمی با برنامه نویسی کامپیوتر آشنایی پیدا کردیم. فهمیدیم که کامپیوتر دقیقا همون دستور هایی رو اجرا می کنه که ما بهش گفتیم؛ نه کمتر و نه بیشتر. کاش ما آدم ها هم در مقابل خدا مثل کامپیوتر باشیم.

کامپیوتر تک دستور ها رو یکی پس از دیگری اجرا می کنه. اگر برنامه ای که نوشته ایم مثلا 5 خط باشه، اول خط 1 ، بعد خط 2 ، بعد خط 3 و همینطور تا آخر برنامه دستورات اجرا خواهند شد.

هر دستور در برنامه نویسی به زبان سی شارپ با علامت ; خاتمه پیدا می کنه. به آخر دستور MessageBox.Show دقت کنید. ما با این علامت صرفا به کامپایلر گوشزد می کنیم که این خط از برنامه تمام شده و باید به خط بعدی رفته و دستور بعدی رو اجرا کنه. البته لزومی نداره که خط بعدی دقیقا یک خط بعد باشه. مثلا تمام حالت های زیر با هم مشابه هستند:

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

با نام و یاد خدا... سلام.

در جلسات قبل یاد گرفتیم که چطور برای دکمه برنامه بنویسیم، طوری که اگر در هنگام اجرای برنامه روی دکمه کلیک کنیم، کاری رو برامون انجام بده. به غیر از دکمه چند شیئ دیگه رو هم روی فرم قرار دادیم و از شیئ TextBox در برنامه خودمون استفاده کردیم و متوجه شدیم که چطور از خصوصیت Text مربوط به این شیئ استفاده کنیم. در مورد شیئ گرایی هم خیلی کوتاه صحبت کردیم و مفهوم کلاس و وراثت رو بصورت غیر آکادمیک! و خودمونی توضیح دادیم.

در این جلسه قصد دارم در مورد ساختار و اسکلت برنامه صحبت کنم. یعنی می خواهیم بدونیم اون نوشته هایی که در درس های قبل در موردشون توضیح ندادیم چی بودن. البته احتمالا" تا حدودی متوجه شده باشید.

  • غلامعلی حسینی بهجانی
  • ۱
  • ۰

به نام خدا و سلام.

عذرخواهی بابت اینکه این درس رو دیر آپلود کردم.

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

زبان های برنامه نویسی هم مانند بقیه قسمت های نرم افزاری و سخت افزار کامپیوتر دچار تغییر و تحولات اساسی شده اند. یکی از پیشرفته ترین شیوه های برنامه نویسی ،  روش شیئ گرایی هست. شاید کمی زود باشه که در مورد شیئ گرایی صحبت کنیم اما چاره ای نیست!

برنامه نویسی شیئ گرا یا Object Oriented Programming یا OOP روشی در برنامه نویسی است که با همه اجزای برنامه مانند اشیاء در دنیای واقعی رفتار می‌کنه. این روش برنامه نویسی باعث پیشرف چشمگیری در دنیای نرم افزار شده. حالا باید ببینیم که اشیاء در دنیای واقعی چگونه اند تا بتونیم مفهوم اشیاء در برنامه نویسی رو بهتر متوجه شویم.

هر شیئ دارای یکسری خصوصیات هست که ما با اون خصوصیات اون شیئ رو می شناسیم. مثلا شیئ مداد دارای خصوصیاتی مثل رنگ، طول، قطر، نوع گرافیت، نام شرکت سازنده و... غیره می باشد.

ما در زندگی واقعی می توانیم از اشیاء دیگر شیئ جدیدی بسازیم! برای مثال اگر بخواهیم یک کاردستی درست کنیم ممکنه به جعبه، چسب، قیچی و حتی مداد نیاز داشته باشیم. هریک از این اشیاء مستقل هستند اما با ترکیب آنها شیئ جدیدی ساخته خواهد شد.

  • غلامعلی حسینی بهجانی