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
}

গভীর ডুব

ঐতিহাসিকভাবে, অসীম দশমিক অথবা অযৌক্তিক নম্বরগুলি সীমিত ডিজিটাল স্থানে ফিট করার জন্য বৃত্তাকারণ অত্যন্ত গুরুত্বপূর্ণ—অন্তত প্রাচীন কম্পিউটারের জন্য যাদের স্মৃতিতে প্রচুর সীমাবদ্ধতা ছিল। জাদুঘরের অ্যাবাকাসের কথা ভাবুন কিন্তু কম কারুকার্যপূর্ণ, বেশি গণিতীয়।

রাস্টের নেটিভ পদ্ধতিগুলির বিকল্প হল:

  1. format! ম্যাক্রো স্ট্রিং ফরম্যাটিংয়ের জন্য যা ডিফল্ট হিসেবে বৃত্তাকার করে।
  2. বিশেষায়িত গণিতীয় কাজের জন্য বাইরের ক্রেটস, যেমন round ক্রেট যা আরও সূক্ষ্ম নিয়ন্ত্রণ প্রদান করে।

গোপনে, রাস্টের বৃত্তাকার অপারেশনগুলি IEEE মানগুলির সাথে মিলে যায়—প্রযুক্তির অভিধানে “এটি আপনার গণিত শিক্ষকের মত বৃত্তাকার করে”। প্লাস, বাইনারি প্রতিনিধিত্বের কারণে, কিছু সংখ্যা প্রথাগতভাবে বৃত্তাকার করা যায় না, যেমন 0.1, তাদের বাইনারিতে অসীম প্রতিনিধিত্বের জন্য।

আরও দেখুন