PHP:
জটিল সংখ্যার সাথে কাজ করা
কিভাবে:
PHP ext-intl
এক্সটেনশনের মাধ্যমে NumberFormatter
ক্লাস ব্যবহার করে জটিল সংখ্যাগুলিকে সমর্থন করে থাকে। এখানে একটি উদাহরণ দেওয়া হল:
// intl এক্সটেনশন লোড করা আছে কিনা তা যাচাই করুন
if (!extension_loaded('intl')) {
die("intl এক্সটেনশন সক্রিয় নয়। এই কোড চালানোর জন্য দয়া করে এটি সক্রিয় করুন।");
}
function addComplexNumbers($a, $b) {
// NumberFormatter ব্যবহার করে জটিল সংখ্যা পার্স এবং ফরম্যাট করুন
$formatter = new NumberFormatter('en_US', NumberFormatter::PATTERN_RULEBASED, 'i = -1;');
// স্ট্রিং থেকে জটিল সংখ্যা পার্স করুন
$numA = $formatter->parse($a, NumberFormatter::TYPE_DOUBLE);
$numB = $formatter->parse($b, NumberFormatter::TYPE_DOUBLE);
// যোগ কর্ম সম্পাদন করুন
$sum = $numA + $numB;
// ফলাফলকে জটিল সংখ্যা হিসাবে ফরম্যাট করুন
return $formatter->format($sum);
}
echo addComplexNumbers('5+3i', '2+7i'); // আউটপুট: 7+10i
গভীর ডুব
ext-intl
আগে, PHP-এ জটিল সংখ্যার জন্য নেটিভ সমর্থন ছিল না। ডেভেলপাররা জটিল সংখ্যা সমাধানের জন্য ফাংশন বা কাস্টম ক্লাস লাইব্রেরিগুলি ব্যবহার করত। জটিল অপারেশনগুলি ক্লান্তিকর এবং ত্রুটিপূর্ণ হতে পারে, কিন্তু ext-intl
ICU লাইব্রেরির সাথে মিল রেখে জটিল সংখ্যাগুলিকে প্রদর্শন এবং পার্স করার একটি আন্তর্জাতিকীকৃত উপায় প্রদান করে।
এছাড়াও, ভারী গণিত অপারেশনের জন্য, কেউ কেউ আরও গণিত-বান্ধব ভাষায় (যেমন C বা Python) লিখিত বাহ্যিক লাইব্রেরিগুলি ব্যবহার করতে পারে এবং PHP-র মাধ্যমে তাদের সাথে ইন্টারফেস করতে পারে। বাস্তবায়নের ব্যাপারে, ext-intl
পেছনের পর্দায় এর ব্যবস্থাপনা করে, সঠিক অঙ্কগণিত নিশ্চিত করে এবং প্রোগ্রামার থেকে জটিলতা লুকিয়ে রাখে।
ঐতিহাসিকভাবে, জটিল সংখ্যাগুলি ‘কাল্পনিক’ হিসাবে অপছন্দ করা হয়েছিল, কিন্তু এগুলি বিভিন্ন বৈজ্ঞানিক এবং গণিতীয় ক্ষেত্রের মৌলিক হয়ে উঠেছে, যা এগুলির বাস্তব বিশ্বের গুরুত্বকে আরও বেশি প্রকাশ করেছে তাদের কাল্পনিক অবস্থানের চেয়ে।