Rust:
संख्याओं को पूर्णांक बनाना
कैसे:
Rust में संख्या को गोल करना बहुत आसान है। f32
या f64
प्रकारों के लिए इन विधियों को देखें:
fn main() {
let num = 2.34567;
// निकटतम पूर्णांक के लिए गोल
let round = num.round();
println!("Round: {}", round); // Round: 2
// Floor - संख्या से कम या बराबर सबसे बड़ा पूर्णांक
let floor = num.floor();
println!("Floor: {}", floor); // Floor: 2
// Ceil - संख्या से अधिक या बराबर सबसे छोटा पूर्णांक
let ceil = num.ceil();
println!("Ceil: {}", ceil); // Ceil: 3
// Truncate - दशमलवीय अंशों के बिना पूर्णांक भाग
let trunc = num.trunc();
println!("Truncate: {}", trunc); // Truncate: 2
// दस की शक्ति के निकटतम गुणज के लिए
let multiple_of_ten = (num * 100.0).round() / 100.0;
println!("2 दशमलव जगहों तक के लिए गोल: {}", multiple_of_ten); // 2 दशमलव जगहों तक के लिए गोल: 2.35
}
गहराई में जाकर
ऐतिहासिक रूप से, गोल करना सीमित डिजिटल स्थानों में अनंत दशमलवों या अपरिमेय संख्याओं को समाविष्ट करने के लिए महत्वपूर्ण रहा है—यह पुराने कम्प्यूटरों के लिए एक जरूरत थी जिनकी स्मृति बहुत कम होती थी। गिनती करने के लिए अबेकस के बारे में सोचें लेकिन कम कारीगरी, अधिक गणित।
नेटिव Rust विधियों के विकल्प में शामिल हैं:
format!
मैक्रो स्ट्रिंग फॉर्मेटिंग के लिए जो डिफॉल्ट द्वारा गोल करता है।- विशेषज्ञ गणितीय कार्यों के लिए बाहरी crates, जैसे कि अधिक सूक्ष्म नियंत्रण के साथ
round
crate।
आंतरिक रूप से, Rust के गोल करने के ऑप्स IEEE मानकों के अनुरूप होते हैं—तकनीकी जार्गन के लिए “यह आपके गणित शिक्षक की चाहत के अनुसार गोल करता है।” प्लस, द्विआधारी प्रतिनिधित्व के कारण, कुछ संख्याएँ पारंपरिक रूप से गोल नहीं की जा सकतीं, जैसे 0.1, उनकी द्विआधारी में अनंत प्रतिनिधित्व के कारण।
देखे यह भी
- Rust दस्तावेज़ प्राइमिटिव प्रकार विधियों पर: https://doc.rust-lang.org/std/primitive.f64.html
- फ्लोटिंग-पॉइंट गणित (IEEE 754) के लिए IEEE मानक: https://ieeexplore.ieee.org/document/4610935
- अधिक जटिल गोल करने के लिए “round” crate: https://crates.io/crates/round