اثر پروانه ای

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

اثر پروانه ای

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

اثر پروانه ای

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

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

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

کلمه کلیدی switch

بیان switch یک بیان کنترلی است که بوسیله انتخاب های چندگانه و مجموعه های شمارشی (enumerations) ، با پاس دادن کنترل اجرای برنامه به یکی از بیان های case داخلی اش، روند اجرایی برنامه را کنترل می کند؛ مانند مثال زیر:

int caseSwitch = 1;
switch (caseSwitch)
{
    case 1:
        Console.WriteLine("Case 1");
        break;
    case 2:
        Console.WriteLine("Case 2");
        break;
    default:
        Console.WriteLine("Default case");
        break;
}

کنترل اجرای برنامه به بیان case ی که با مقدار switch یکسان باشد، منتقل می شود. بیان switch می تواند حاوی هر تعداد از نمونه های case باشد، اما دو بیان case نمی توانند مقادیر یکسان داشته باشند.

 اجرای بدنه بیان switch از بیان انتخاب شده توسط switch شروع می شود و آنقدر ادامه پیدا می کند تا اینکه بیان break کنترل اجرا را به بیرون بدنه case انتقال دهد.بعد از هر بلوک case ، از جمله آخرین بلوک که یا بیان case و یا بیان default است، لازم است که از یک بیان پرشی (jump statement) ، از جمله break استفاده شود. با یک استثناء ، (بر خلاف بیان switch در ++C) ، سی شارپ از سقوط ضمنی از یک برچسب case به دیگری (با ننوشتن break)، پشتیبانی نمی کند. تنها استثنا این است که بیان case دارای هیچ کدی نباشد.

اگر هیچ عبارت case ی با مقدار switch یکسان نباشد، آنگاه روند اجرایی برنامه به بیان(های) بعد از برچسب اختیاری default ، منتقل می شود. اگر هیچ پرچسب default ی وجود نداشته باشد، کنترل به بیرون بیان switch منقل می شود.

class SwitchTest 
{
    static void Main()
    {
        Console.WriteLine("Coffee sizes: 1=Small 2=Medium 3=Large"); 
        Console.Write("Please enter your selection: "); 
        string s = Console.ReadLine(); 
        int n = int.Parse(s);
        int cost = 0;
        switch(n)
        {
        case 1:
            cost += 25;
            break;
        case 2:
            cost += 25;
            goto case 1;
        case 3:
            cost += 50;
            goto case 1;
        default:
            Console.WriteLine("Invalid selection. Please select 1, 2, or 3.");
            break;
        }
        if (cost != 0)
        {
            Console.WriteLine("Please insert {0} cents.", cost);
        }
        Console.WriteLine("Thank you for your business.");
    }
}
    /*
        Sample Input: 2

        Sample Output:
        Coffee sizes: 1=Small 2=Medium 3=Large
        Please enter your selection: 2
        Please insert 50 cents.
        Thank you for your business.
    */

در مثال قبل، متغیر نوع صحیحی به نام n، برای case های switch استفاده شده بود. دقت کنید که شما همچنین می توانید مستقیما" از متغیر رشته ای s استفاده کنید. در چنین حالتی باید بصورت زیر عمل کنید:

switch(s)
{
    case "1":
        // ...
    case "2":
        // ...
}

مثال زیر نشان می دهد که سقوط ضمنی از یک برچسب case به دیگری برای case های خالی، امکان پذیر است.

class SwitchTest2 
{
    static void Main()
    {
        int n = 2;
        switch(n) 
        {
            case 1:
            case 2: 
            case 3: 
                Console.WriteLine("It's 1, 2, or 3.");
                break; 
            default: 
                Console.WriteLine("Not sure what it is.");
                break; 
        }
    }
}
//  Output: It's 1, 2, or 3.

نظرات (۱)

سلام مهندس
واقعا سایت جالبی دارید خدا خیرتون بده
فقط لطفا اگه میشه توضیح بدید چطور میشه ورودی case یک کاراکتر باشه
ممنون
پاسخ:
سلام / ممنون ، لطف دارید...
اینطوری:
char ch = 'M';
switch (ch)
{
    case 'H':
        MessageBox.Show("Hello");
        break;
    case 'M':
        MessageBox.Show("Mahdi");
        break;
    default:
        MessageBox.Show("What?!");
        break;
}

ارسال نظر

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