آموزش پيشرفته برنامه نويسي سي شارپ: آشنايي با متغير float

آموزش پيشرفته برنامه نويسي سي شارپ: آشنايي با متغير float

جلسه هفتم: آشنايي با متغير float

آموزش برنامه نويسي سي شارپ متد Constroctur

 

متغیر float، نوعی متغیر است که میتواند مقادیر اعشاری را درون خود ذخیره کند. این متغیر یک متغیر ۳۲bit یا ۴byte میباشد. دقت متغیر float تا ۷ عدد اعشار است. اگر بخواهید از اعداد اعشاری دقیق تری استفاده کنید از متغیر double استفاده خواهیم کرد که در جلسه بعد در مورد آن صحبت میکنیم. گفتیم که این متغیر ۳۲ بیتی یا ۴ بایتی میباشد.(هر بایت اندازه ۸ بیت است). این یعنی متغیر float به اندازه ۳۲ بیت، حافظه سیستم را اشغال میکند.  نمونه هایی از مقادیر اعشاری در متغیر float:

float number1 = 2.5f;

float number2 = 3.5436f;

float number3 = 0.254623f;

تفاوت متغیر int و float:

ممکن است برای شما سوال پیش آمده باشد که آیا میتوان از متغیر float را جایگزین متغیر int کرد یا خیر. میتوان اعداد صحیح را درون متغیر float قرار داد. اما ممکن است برنامه متغیر float را دیرتر از متغیر int پردازش کند. در نتیجه بهتر است برای اعداد صحیح تنها از متغیر int استفاده کنیم. در جدول زیر میتوانید مقدار فضایی که هر متغیر در حافظه سیستم شما مصرف میکند مشاهده کنید.

 

data type
همانطور که متغیر int و float، به اندازه ۴ بایت یا ۳۲ بیت از حافظه سیستم را اشغال میکنند.

اکنون با یک مثال بیشتر با این موضوع آشنا میشویم.. میخواهیم نمرات يک دانش آموز را باهم جمع کنيم و ميانگين نمرات را حساب کنيم. نمرات دروس يک دانش آموز به شرح زير است:

math (رياضي): ۱۵٫۷۵

phisic (فيزيک): ۱۴٫۲۵

English language (زبان انگليسي) : ۱۷٫۵

Chemistry (شيمي) : ۲۰

۱- در ابتدا تمام این نمرات را درون متغیر float قرار میدهیم.

float

static void Main(string[] args)
{
float math, Physics, Englishlanguage, Chemistry;

math = 15.75f;
Physics = 14.25f;
Englishlanguage = 17.5f;
Chemistry = 20;
}

نکته: در عبارت بالا، حتما مشاهده کرده اید که آخر هرمقدار، از حرف f استفاده کرده ایم. اگر از این کاراکتر در آخر هر مقدار اعشاری استفاده نکنیم، برنامه به صورت پیش فرض، این متغیر را از نوع متغیر double میشناسد. در نتیجه، در آخر مقادیری که درون متغیر float قرار میدهیم، از حرف f در آخر مقدار استفاده ميکنیم تا برنامه اين متغير را از نوع float بشناسد.

نکته: نمره شيمي دانش آموزش ۲۰ ميباشد،عدد ۲۰ یک عدد اعشاري نيست و از نوع یک عدد صحیح (int) میباشد که درون متغیر float قرار دارد. به همین دلیل نیازی نیست از حرف f در اخر این مقدار استفاده کنیم. در روشی دیگر میتوانيم نمره ۲۰ را درون يک متغير int قرار دهیم اما اين عمل باعث ميشود ما بخواهيم دو متيغر ايجاد کنيم. ايجاد دو متغير int و float سبب میشود برنامه با سرعت پردازش کمتري اجرا خواهد شود. در نتيجه ایجاد یک متغیر int برای نمره ۲۰ یک متغیر اضافی است، پس آن را درون متغیر float قرار میدهیم.

۲- در ادامه، تمام مقادير را باهم جمع خواهيم کرد. براي جمع کردن تمام مقادير، ما به يک متغير جديد احتياج خواهيم داشت تا حاصل جمع را درون متغير جديد ذخيره کنيم. متغير جديد را ايجاد ميکنيم و نام آن را answer ميگذاريم. سپس تمام مقادير را باهم جمع خواهيم کرد و حاصل جمع را درون متغير Answer قرار ميدهيم. حاصل جمع برابر با عدد ۶۷٫۵ خواهد بود همانند زير:

static void Main(string[] args)
{
float math, Physics, Englishlanguage, Chemistry, Answer;

math = 15.75f;
Physics = 14.25f;
Englishlanguage = 17.5f;
Chemistry = 20;

Answer = math + Physics + Englishlanguage + Chemistry;
}

۳- در ادامه، با استفاده از علامت ( / )، متغير Answer (حاصل جمع) را تقسيم بر تعداد نمرات (۴) ميکنيم. براي حاصل تقسيم بايد يک متغير جديد ايجاد کنيم. نام متغير جديد را Average ميگذاريم، حاصل تقسيم را در متغير Average قرار ميدهيم تا ميانگين بدست بيايد. همانند زير:

static void Main(string[] args)
{
float math, Physics, Englishlanguage, Chemistry, Answer, Average;

math = 15.75f;
Physics = 14.25f;
Englishlanguage = 17.5f;
Chemistry = 20;

Answer = math + Physics + Englishlanguage + Chemistry;
Average = Answer / 4;
}

float

۴- اکنون با استفاده از دستور ()Console.WriteLine مقدار دروني متغير Average را چاپ ميکنيم.

static void Main(string[] args)
{
float math, Physics, Englishlanguage, Chemistry, Answer, Average;

math = 15.75f;
Physics = 14.25f;
Englishlanguage = 17.5f;
Chemistry = 20;

Answer = math + Physics + Englishlanguage + Chemistry;
Average = Answer / 4;
Console.WriteLine(Average);
}

سپس برنامه را اجرا کنید. پس از اجرا شدن برنامه، نمره ۱۶٫۸۷۵ برای شما چاپ خواهد شد که میانگین نمرات میباشد.

float in c#

در جلسه آينده با متغير double آشنا خواهيم شد.

محمد امین مکارم

مطالب مرتبط

نقد و بررسی‌ها

نظر: