سلام دوستان اگر پروژه ای که در این پست آموزش داده شد را اجرا کرده باشد احتمالاً متوجه شده اید که یک مشکل در آن و جود دارد و آن مشکل این است که تعداد اعشاری که نشان می دهد زیاد است. در این پست می گویم که چگونه تعداد اعشار آن را کم کنیم.
به کد زیر دقّت کنید.
1 2 3 4 5 | float Number = (float)1.2354635; int N = 2; double d = Number * Math.Pow(10, N); int i = (int)d; double Number2 = i / Math.Pow(10, N); |
در کد بالا Number2 برابر 1.23 شده است. N را برابر تعداد اعشار مورد نظرمان قرار می دهیم.
خط 1 عدد 1.2354635 را به صورت float داخل متغیر Number که از نوع float است می ریزد.
Number=1.2354635
خط 2، N را تعریف می کند که متغیری از نوع int است.
N=2
خط 3، Number را در 10 به توان N ضرب می کند و آن را در متغیر d که از نوع double است می ریزد.
d= 123.54635
خط 4، متغیر d را به صورت int در آورده و در i که متغیری integer یا صحیح است می ریزد.
i=123
خط5 متغیر i را بر 10 به توان N تقسیم می کند و مقدار حاصل را (به صورت اعشاری) در متغیر Number2 از نوع double می ریزد.
Number2=1.23
نکته: اگر در کدی مثل مثال بالا تعداد اعشار مورد نظر ما کم بود می توانیم (برای مثال) به جای Math.Pow(10,2) بنویسیم :
(double)100
دقّت کنید (double) باید نوشته شود و اگر نه کل اعشار ها حذف می شود.
کد زیر کار کد قبلی را انجام می دهد.
1 2 3 4 | float Number = (float)(e.BytesReceived / 1024.0); double d = Number * (double)100; int i = (int)d; double Number2 = i / (double)100; |
تا دیگر کد ها خداحافظ