اثر پروانه ای

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

اثر پروانه ای

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

اثر پروانه ای

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

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

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

۲۱ مطلب با کلمه‌ی کلیدی «data type» ثبت شده است

  • ۱
  • ۰

کلمه کلیدی double

کلمه کلیدی double بر یک نوع ساده با قابلیت ذخیره مقادیر ممیز-شناور 64-بیتی دلالت دارد. دقت و محدوده تقریبی نوع double بصورت زیر است:

  • نوع: double
  • محدوده تقریبی:

    ±5.0 × 10−324 to ±1.7 × 10308

  • دقت: 16-15 رقم
  • نوع دات نتی: System.Double

لیترال ها

بطور پیش فرض، با یک لیترال عددی حقیقی که در سمت راست عبارت انتساب قرار گرفته باشد به عنوان double رفتار می شود. اما ، اگر می خواهید با یک عدد صحیح به عنوان double رفتار شود، از پسوند d یا D استفاده کنید. برای مثال:

double x = 3D;

تبدیلات

شما می توانید نوع های عددی صحیح و نوع های ممیز-شناور را در یک عبارت با هم ترکیب کنید. در چنین موردی ، نوع های صحیح به نوع های ممیز-شناور تبدیل می شوند. ارزیابی عبارت، بر اساس قوانین زیر انجام می شود:

  • اگر یکی از نوع های ممیز-شناور double باشد،عبارت به صورت double ارزیابی می شود. در عبارت های بولی بصورت bool ارزیابی می شود.
  • اگر هیچ نوع double ی در عبارت وجود نداشته باشد، به صورت float ارزیابی خواهد شد. در عبارت های بولی بصورت bool ارزیابی می شود.

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

جدول زیر تبدیلات عددی ضمنی از پیش تعریف شده را نشان می دهد. تبدیلات ضمنی ممکن است در بسیاری مواقع ، از جمله فراخوانی متد و بیان های انتساب ، اتفاق بیافتد.


از به
sbyte short, int, long, float, double, یا decimal
byte short, ushort, int, uint, long, ulong, float, double, یا decimal
short int, long, float, double, یا decimal
ushort int, uint, long, ulong, float, double, یا decimal
int long, float, double, یا decimal
uint long, ulong, float, double, یا decimal
long float, double, یا decimal
char ushort, int, uint, long, ulong, float, double, یا decimal
float double
ulong float, double, یا decimal


ملاحظات

  • تبدیلات از int و uint یا long به float و از long به double ممکن است باعث از دست رفتن دقت شود، اما به مقدار ضرری وارد نمی شود.
  • هیچ تبدیل ضمنی ای به نوع char وجود ندارد.
  • هیچ تبدیل ضمنی ای بین نوع های ممیز-شناور و decimal وجود ندارد.
  • یک عبارت ثابت از نوع int می تواند به sbyte ، byte ، short ، ushort ، uint یا ulong تبدیل شود، مقدار تعیین شده عبارت ثابت در محدوده نوع مقصد می باشد.

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

نوع داده ای decimal

کلیدواژه decimal به یک نوع داده ای 128-بیتی اشاره دارد. در مقایسه با نوع های ممیز-شناور، نوع decimal دقت بیشتر و محدوده کمتری دارد، که آنرا برای محاسبات مالی و پولی مناسب کرده است. 

محدوده تقریبی و دقت نوع decimal در زیر آمده است:

  • نوع: decimal
  • محدوده تقریبی:

    (-7.9 x 1028 to 7.9 x 1028) / (100 to 28)

  • دقت: 29-28 رقم معنادار
  • نوع دات نتی: System.Decimal

    لیترال ها

    اگر شما می خواهید یک لیترال عددی حقیقی داشته باشید که با آن مانند decimal رفتار شود، از پسوند m یا M استفاده کنید، برای مثال:

    decimal myMoney = 300.5m;

    بدون پسوند m ، با عدد مانند double رفتار شده و تولید یک خطای کامپایل می نماید.

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

    کلمه کلیدی char

    کلمه کلیدی char برای اعلان کاراکتر یونیکد (Unicode) که محدوده آن در زیر آمده استفاده می شود. کاراکترهای یونیکد، کاراکترهایی 16-بیتی هستند که برای نمایش اکثر زبان های نوشتاری شناخته شده در دنیا مورد استفاده قرار می گیرند.

    • نوع: char
    • محدوده: از U+0000 تا U+ffff
    • اندازه: کاراکتر 16-بیتی یونیکد
    • نوع دات نتی: System.Char


    لیترال ها:

    ثابت های از نوع char می توانند بصورت لیترال های کاراکتری، توالی گریز شانزده شانزدهی (Hexadecimal escape swquence)، یا نماینده یونیکد، نوشته شوند. شما همچنین می توانید کد های کاراکتری صحیح را قالب ریزی (cast) کنید. در مثال زیر چهار متغیر char با کاراکتر X ، مقداردهی اولیه شده اند:

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

    کلیدواژه class

    کلاس ها با استفاده از کلمه کلیدی class ، بصورتی که در مثال زیر نشان داده شده، اعلان می شوند.

    class TestClass
    {
        // Methods, properties, fields, events, delegates 
        // and nested classes go here.
    }

    ملاحظات

    بر خلاف ++C ، در #C فقط یک ارث بری مجاز است. به بیانی دیگر، پیاده سازی یک کلاس فقط می تواند از یک کلاس پایه ای ، ارث بری شود. هرچند، یک کلاس می تواند بیش از یک رابط (interface) را پیاده سازی (implement) کند. جدول زیر مثال هایی از ارث بری کلاس و پیاده سازی رابط را نشان می دهد.

    ارث بری مثال
    بدون ارث بری
    class ClassA { }
    ارث بری یگانه
    class DerivedClass: BaseClass { }
    بدون ارث بری، پیاده سازی دو رابط
    class ImplClass: IFace1, IFace2 { }
    ارث بری یگانه، پیاده سازی یک رابط
    class ImplDerivedClass: BaseClass, IFace1 { }

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

    کلمه کلیدی void

    کلمه کلیدی void وقتی به عنوان نوع خروجی یک متد استفاده می شود، نشان می دهد که آن متد هیچ مقداری را برگشت نمی دهد.

    کلیدواژه void در لیست پارامتر های متد، مجاز نیست. متدی که هیچ پارامتری ندارد و هیچ مقداری را برگشت نمی دهد بصورت زیر اعلان می شود:

    void SampleMethod();

    void همچنین در یک زمینه نا امن (unsafe context - محیطی که سیستم مدیریت حافظه در آن دخالت نمی کند) برای اعلان یک اشاره گر به یک نوع نامشخص، استفاده می شود.

    کلمه کلیدی void نام مستعاری برای نوع دات نتی System.Void می باشد.

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

    Type : نوع

    سیستم تایپ (نوع) سی شارپ شامل مقوله های زیر است:

    • نوع های مقداری
    • نوع های مرجع
    • نوع های اشاره گر

    متغیرهایی که از نوع مقداری هستند، داده ها را ذخیره می کنند؛ و آنهایی که از نوع مرجع هستند، ارجاع های به داده های واقعی را ذخیره می کنند. نوع های مرجع، همچنین با نام شیئ (object) شناخته می شوند. نوع های اشاره گر فقط در شیوه برنامه نویسی نا امن (unsafe) قابل استفاده هستند.

    با استفاده از boxing و unboxing، این امکان وجود دارد که یک نوع مقداری را به نوع مرجع تبدیل کنیم و دوباره آنرا به نوع مقداری برگردانیم. شما نمی توانید یک نوع مرجع را به نوع مقداری تبدیل کنید، مگر آنکه آن نوع مرجع از روش باکسینگ به نوع مرجع تبدیل شده باشد.

    در مورد void (تهی) می توانید در تاپیک "کلمه کلیدی void" مطالبی را بیاموزید.

    نوع های مقداری نیز nullable هستند، به این معنی که آنها می توانند یک وضعیت غیر-مقداری را در خود ذخیره کنند.


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

    کلمه کیدی byte یک نوع عددی صحیح که مقادیر را طبق جدول زیر می تواند ذخیره کند، تعریف می کند.

    • نوع : byte
    • محدوده : 0 تا 255
    • اندازه : صحیح 8-بیتی بی علامت
    • نوع دات نتی: System.Byte


    لیترال ها:

    شما می توانید مانند مثال زیر یک متغیر byte را اعلان و مقداردهی اولیه کنید:

    byte myByte = 255;

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

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

    کلمه کلیدی bool نام مستعاری برای System.Boolean می باشد که برای اعلان متغیرهایی برای ذخیره سازی مقادیر بولی true (درست) و false (غلط) استفاده می شود.

    نکته:

    اگر به متغیر بولی ای نیاز دارید که دارای مقدار null هم می باشد، از ?bool استفاده کنید.


    لیترال ها:

    شما می توانید یک مقدار بولی را به یک متغیر bool اختصاص دهید. همچنین می توانید یک عبارت را که نتیجه آن بصورت bool ارزیابی می شود را به متغیر bool اختصاص دهید.

    public class BoolTest
    {
        static void Main()
        {
            bool b = true;
    
            // WriteLine automatically converts the value of b to text.
            Console.WriteLine(b);
    
            int days = DateTime.Now.DayOfYear;
    
    
            // Assign the result of a boolean expression to b.
            b = (days % 2 == 0);
    
            // Branch depending on whether b is true or false.
            if (b)
            {
                Console.WriteLine("days is an even number");
            }
            else
            {
                Console.WriteLine("days is an odd number");
            }   
        }
    }
    /* Output:
      True
      days is an <even/odd> number
    */

    false ، مقدار پیش فرض برای متغیرهای bool و ?bool است.

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

    کلمه کلیدی long ، نوع داده ای صحیحی را مشخص می کند که مقادیر وابسته به اندازه و محدودیت نشان داده شده زیر را ذخیره می کند:

    • نوع: long
    • محدوده: از –9,223,372,036,854,775,808 تا 9,223,372,036,854,775,807
    • اندازه: صحیح علامتدار 64 بیتی
    • نوع دات نتی: System.Int64

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