أقرب دالة عدد صحيح في بايثون

ربما تشهد على سمعتها كلغة برمجة قوية ومرنة ، تحتوي Python على العديد من المكتبات الداخلية لأتمتة المهام الحسابية والرياضية الشائعة أو المعقدة. تحتوي "مكتبة الرياضيات" على العديد من الطرق لإنجاز العمليات الحسابية أو العمليات النموذجية مثل التقريب. ومع ذلك ، فإن تقريب الكسور العشرية في بايثون لا يتم تقريبه إلى عدد صحيح ، بل إلى عدد عشري كامل. يتطلب التحويل إلى أعداد صحيحة استخدام مكتبة Python للرياضيات جنبًا إلى جنب مع استخدام بعض مكتبات التحويل المضمنة.

بايثون والتقريب

تقدم مكتبة Python للرياضيات مجموعة من الطرق المفيدة لتقريب الأرقام العشرية إلى أعداد صحيحة. يمكنك تقريب رقم بالطريقة التقليدية (لأسفل إلى أقرب رقم صحيح للأجزاء الكسرية عند 0.4 أو أقل ، ولأعلى للأجزاء 0.5 وأكبر) باستخدام طريقة "round ()". يوضح المثال التالي كيفية تقريب الأرقام العشرية باستخدام طريقة الجولة:

فيديو اليوم

f = 5.455 >>> round (f) 5.0 >>> دائرية (f ، 2) // تقرب إلى رقمين عشريين 5.46

طرق السقف والأرضية

كجزء من مكتبة الرياضيات ، توفر أساليب "floor ()" و "ceil ()" طريقة فريدة لتقريب الكسور العشرية التي قد تجدها مفيدة في بعض العمليات الحسابية. تقرب طريقة الكلمة إلى الأدنى إلى أقرب عدد صحيح نحو اللانهاية السالبة (بغض النظر عن القيمة العشرية) ، وسيتم تقريب طريقة السقف لأعلى إلى أقرب عدد صحيح باتجاه الموجب ما لا نهاية. يوضح المثال التالي كيفية عمل الوظيفتين:

استيراد الرياضيات >>> f = 3.5 >>> g = -3.5 >>> أرضية (f) 3.0 >>> سقف (3.5) 4.0 >>> أرضية (ز) -4.0 >>> سقف (ز) -3.0

التقريب والأعداد الصحيحة

توضح عمليات التقريب الموضحة كيفية عمل هذه الوظائف ، لكنها تُظهر أيضًا تأثيرًا جانبيًا: في إصدارات Python قبل 3.0 ، لا يتم تقريب الكسور العشرية إلى أعداد صحيحة ، بل إلى أعداد عشرية. نظرًا للطريقة التي يتم بها تمثيل الكسور العشرية بواسطة معماريات الكمبيوتر ، فقد يتسبب ذلك في حدوث مشكلات في الحسابات عالية الدقة حيث قد يحتاج المبرمجون إلى أعداد صحيحة. يمكنك تحويل رقم عائم إلى عدد صحيح باستخدام طريقة "int ()" ، كما في هذا المثال:

f = 3.5 >>> round (f) 4.0 >>> int (round (f)) 4

طريقة المثال

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

استيراد الرياضيات >>> عرّف عدد صحيح طابق (س):. .. عودة int (floor (x)) >>> def عدد صحيح Ceiling (x):. .. العودة int (ceil (x)) >>> def التقريب (x، dec):. .. إذا ديسمبر == 0:. .. العودة int (round (x))... آخر:... العودة (الجولة (س ، ديسمبر))