הפונקציה השלמה הקרובה ביותר בפייתון
פיתון ועיגול
הספרייה פייתון מתמטיקה מציעה חבילה של שיטות שימושיות עבור עיגול מספרים עשרוניים לתוך מספרים שלמים. ניתן לסובב מספר באופן מסורתי (למספר השלם הקרוב ביותר בחלקי השבר של 0.4 או פחות, ולגדול בחלקים של 0.5 או יותר) בשיטת "סיבוב ("). הדוגמה הבאה מראה כיצד לעגל מספרים עשרוניים בשיטת "עגול":
f = 5.455 סיבוב (f) 5.0 סיבוב (f, 2) / / סיבובים ל 2 עשרוניות 5.46
שיטות הגג והקומה
כחלק מספריית המתמטיקה, השיטות "floor ()" ו- "ceil ()" מספקות דרך ייחודית לסיבוב ספרות עשרוניות שעשויות להיות שימושיות בחישובים מסוימים. שיטת הקרקע מסובבת למספר שלם הקרוב ביותר לאינסוף השלילי (ללא קשר לערך העשרוני), ושיטת הגג מעגלת אותו למספר השלם הקרוב ביותר לאינסוף החיובי. הדוגמה הבאה מראה כיצד פועלים שתי הפונקציות:
(3.5) 4.0 קומה 4.0 (g) -4.0 ceil (g) -3.0
עיגול שלם
פעולות העיגול המתוארות מראות כיצד להשתמש בפונקציות אלה, אך יש להן גם תופעות לוואי: בגירסאות פייתון לפני 3.0, מספרים עגולים מעוגלים לא מעוגלים למספר שלם, אלא לשברים עשרוניים. בשל הדרך לייצג ספרות עשרוניות בארכיטקטורות מחשב, הדבר עלול לגרום לבעיות בחישובים מדויקים ביותר שבהם מתכנתים זקוקים למספר שלם. ניתן להמיר מספר צף למספר שלם תוך שימוש בשיטת int (), כמו בדוגמה זו:
F = 3.5 סיבוב (f) 4.0 int (סיבוב (f)) 4
שיטה לדוגמה
באמצעות הידע הזה, אתה יכול לפתח שיטה בקלות עגולות עגולות לתוך מספרים שלמים. הדוגמאות הבאות מציגות דוגמאות קצרות של שיטות הקובעות את הגג והקומה של מספר כמספר שלם, ואחת מעוגלת למקום עשרוני שנבחר על ידי המשתמש (או מספר שלם):
לייבא מתמטיקה def integerFloor (x) :. . . לחזור int (קומה (x)) integerCeiling def (x) :. . . לחזור int (ceil (x)) עקיפה def (x, dec) :. . . אם dec == 0 :. . . לחזור int (עגול (x)). . . elseL . . Return (סיבוב (x, dec))