Dart:
סיבוב מספרים

איך לעשות:

Dart מספקת שיטות ילידיות בסוג num המרכזי לביצוע פעולות עיגול. כאן, נחקור שיטות כמו round(), floor(), ceil(), ואיך לעגל למספר מסוים של נקודות עשרוניות.

עיגול לספרה השלמה הקרובה ביותר:

var number = 3.56;
print(number.round()); // מוציא: 4

עיגול כלפי מטה:

print(number.floor()); // מוציא: 3

עיגול כלפי מעלה:

print(number.ceil()); // מוציא: 4

עיגול למספר מסוים של נקודות עשרוניות:

כדי לעגל למספר מסוים של נקודות עשרוניות, אנו יכולים להשתמש בשיטת toStringAsFixed(), אשר מחזירה מחרוזת, או להשתמש בשילוב של pow מ-dart:math לתוצאה מספרית.

import 'dart:math';

var number = 3.56789;
String roundedString = number.toStringAsFixed(2); // למטרות הצגה
print(roundedString); // מוציא: 3.57

double roundedNumber = double.parse(roundedString);
print(roundedNumber); // מוציא: 3.57

// חלופית, לתוצאה מספרית:
double roundedToDecimal = (number * pow(10, 2)).round().toDouble() / pow(10, 2);
print(roundedToDecimal); // מוציא: 3.57

על אף שספריית הליבה של Dart מכסה את רוב צרכי העיגול בצורה יעילה, לפעולות מתמטיות מורכבות יותר או דרישות עיגול מדויקות, ספריות כמו decimal יכולות להיות שימושיות. ספריית decimal מספקת דרך קלה לעבוד עם מספרים עשרוניים בלי לאבד דיוק, מה שמאוד נוח לחישובים פיננסיים, אך לשיטות עיגול פשוטות כפי שהוצג, הפונקציונליות המרכזית של Dart לרוב מספקת בהחלט.