C#-এ MathF.Sqrt() মেথডটি একটি float (সিঙ্গেল-প্রিসিশন ফ্লোটিং-পয়েন্ট) মানের বর্গমূল (square root) গণনা করতে ব্যবহৃত হয়। এটি .NET Core 2.1 / .NET Standard 2.1 থেকে উপলব্ধ।
সিনট্যাক্স (Syntax)
public static float Sqrt(float x);
এখানে x হলো যে সংখ্যার বর্গমূল বের করতে হবে।
উদাহরণ ১: সাধারণ বর্গমূল এবং NaN হ্যান্ডলিং
using System;
public class Demo
{
public static void Main()
{
float val1 = 36f;
float val2 = float.NaN;
Console.WriteLine("MathF.Sqrt(val1) = " + MathF.Sqrt(val1));
Console.WriteLine("MathF.Sqrt(val2) = " + MathF.Sqrt(val2));
}
}
আউটপুট
MathF.Sqrt(val1) = 6 MathF.Sqrt(val2) = NaN
উদাহরণ ২: ঋণাত্মক সংখ্যা এবং শূন্য
using System;
public class Demo
{
public static void Main()
{
float val1 = -121f;
float val2 = 0f;
Console.WriteLine("MathF.Sqrt(val1) = " + MathF.Sqrt(val1));
Console.WriteLine("MathF.Sqrt(val2) = " + MathF.Sqrt(val2));
}
}
আউটপুট
MathF.Sqrt(val1) = NaN MathF.Sqrt(val2) = 0
MathF.Sqrt() vs Math.Sqrt()
| ফিচার | MathF.Sqrt() | Math.Sqrt() |
|---|---|---|
| ইনপুট টাইপ | float | double |
| রিটার্ন টাইপ | float | double |
| প্রিসিশন | ~৭ ডেসিমেল ডিজিট | ~১৫ ডেসিমেল ডিজিট |
| পারফরম্যান্স | টাইম একই, মেমরি কম | স্ট্যান্ডার্ড |
| উপলব্ধতা | .NET Core 2.1+ | সব ভার্সন |
বিশেষ মানের ফলাফল
x < 0→NaN(Not a Number)x = 0→0x = PositiveInfinity→PositiveInfinityx = NaN→NaN
প্রয়োগিক উদাহরণ: পাইথাগোরাস থিওরেম
using System;
public class PythagorasDemo
{
public static void Main()
{
float a = 3.0f;
float b = 4.0f;
// c = √(a² + b²)
float c = MathF.Sqrt(a * a + b * b);
Console.WriteLine($"a = {a}, b = {b}");
Console.WriteLine($"Hypotenuse c = {c}"); // 5.0
}
}
টিপস: গেম ডেভেলপমেন্ট বা রিয়েল-টাইম গ্রাফিক্সে float ব্যবহারের সময় MathF ক্লাসের মেথডগুলো Math ক্লাসের চেয়ে দ্রুত এবং মেমরি-দক্ষ।