المتابعون للمدونة

السبت، 31 مارس 2018

تنسيق الأعداد


تنسيق الأعداد:
تتيح لك الوسيلة ToString إمكانية اختيارية إضافية، وهي أداء تنسيق Formatting للعدد، ليبدو النص الناتج في أي شكل يناسبك.. لفعل هذا، يتم إرسال معامل إلى الوسيلة ToString يمثل صيغة التنسيق المرغوبة.. مثال:
Dim x As Double = 1234.6
MsgBox(x.ToString("N"))
لو جربت هذا المثال في حدث ضغط أي زر، فسيعرض مربع الرسالة النص:
1,234.600
حيث تم تنسيق العدد بحيث يحتوي على ثلاث خانات عشرية، كع وضع فاصلة الآلاف بين كل ثلاث خانات في الجزء الصحيح من العدد.
والجدول التالي يلخص لك صيغ التنسيق التي يمكنك إرسالها كمعامل إلى الوسيلة ToString: 

N أو n
تنسيق عدد طبيعي Normal، وهو يستخدم خانتين على يمين العلامة العشرية، ويستخدم فاصلة الآلاف , وإذا كان العدد سالبا تظهر الإشارة على يسار العدد.
C أو c
تنسيق عملة Currency، وهو يستخدم خانتين على يمين العلامة العشرية، ويستخدم فاصلة الآلاف , مع وضع علامة الدولار & على يسار العدد، وإن كانت العملة سالبة لا تكتب الإشارة، وإنما يتم وضع العدد كله بين قوسين.
ويختلف إذا تم عرضه باللغة المحلية للجهاز.. فمثلا: على الأجهزة التي تستخدم اللغة العربية (مصر)، سيتم وضع الاختصار ج. م. بعد العدد (اختصار جنيه مصري)، وذلك بدلا من استخدام علامة الدولار.. كما أن العملة السالبة لن توضع بين قوسين، بل سيتم وضع الإشارة السالبة أمام العدد بشكل عادي.
P أو p
تنسيق نسبة مئوية Percentage، حيث يتم ضرب الرقم في 100، ويتم تنسيق العدد الناتج مثل تنسيق العدد الطبيعي (N)، مع وضع مسافة بعد العدد تليها العلامة %.

 وتستطيع أن تضع بعد كل حرف من حروف التنسيق السابقة رقما ينحصر بين (0 و 99)، لتحدد عدد الخانات العشرية التي تريد وجودها في العدد.. الرقم 0 يعني عدم وجود خانات عشرية، حيث سيتم تقريب العدد إلى أقرب عدد صحيح.. أما الرقم 1 فيعني وجود خانة عشرية واحدة، والرقم 2 يعني وجود خانتين عشريتين... وهكذا، مع ملاحظة أن اختيار عدد خانات عشرية أقل من عدد الخانات العشرية في الرقم الأصلي، يؤدي إلى تقريب العدد إلى عدد الخانات المطلوب.. انظر الأمثلة التالية: 

الناتج
الكود
1,2345
Dim D As Double = 1234.6
MsgBox(D.ToString("N0"))
1,234.6
MsgBox(D.ToString("N1"))
1,234.600
MsgBox(D.ToString("N3"))
1,234.6
D = 1234.64
MsgBox(D.ToString("N1"))
1,234.7
D = 1234.66
MsgBox(D.ToString("N1"))
1,234.66
MsgBox(D.ToString("N"))
$1,234.7
MsgBox(D.ToString("C1"))
($1,234.66)
MsgBox((-D).ToString("C"))
123,467.00 %
MsgBox(D.ToString("P"))
123,467.000 %
MsgBox(D.ToString("P3"))

 من كتاب المبرمج الصغير للصف الثالث الإعدادي (الفصل الدراسي الثاني).. للتنزيل كاملا:

ليست هناك تعليقات:

إرسال تعليق

ملحوظة: يمكن لأعضاء المدونة فقط إرسال تعليق.

صفحة الشاعر