বাক্য গঠন
দ্বিগুণ এনএস ( দ্বিগুণ ভিত্তি, দ্বিগুণ এক্সপ);
দ্য এনএস () ফাংশন সংজ্ঞায়িত করা হয় গণিত হেডার ফাইল।
যুক্তি
এই ফাংশন দুটি যুক্তি নেয়, ভিত্তি এবং এক্সপ, এর মান গণনা করতে ভিত্তি এর ক্ষমতায় উত্থাপিত মেয়াদ শেষ । এখানে ভিত্তি এবং মেয়াদ শেষ উভয়ই দ্বিগুণ।
মূল্য ফেরত
সাফল্যের উপর, এনএস () ফাংশন এর মান প্রদান করে ভিত্তি এর ক্ষমতায় উত্থাপিত মেয়াদ শেষ ।
এর মান হলে মেয়াদ শেষ হল 0, এনএস () ফাংশন রিটার্ন 1।
যদি ভিত্তি নেতিবাচক এবং মেয়াদ শেষ অ অবিচ্ছেদ্য, এনএস () ফাংশন ফিরে NaN (নোট-এ-নম্বর)।
উদাহরণ
// উদাহরণ 1. সি#অন্তর্ভুক্ত
#অন্তর্ভুক্ত
intপ্রধান()
{
intফলাফল;
ফলাফল= (int) এনএস (3,5);
printf ('nPow (3,5) => %d ',ফলাফল);
printf ('nPow (3, -5) => %lf ', এনএস (3, -5));
printf ('nPow (-3, -5) => %lf ', এনএস (-3, -5));
printf ('nPow (3,5.1) => %lf ', এনএস (3,5.1));
printf ('nPow (-3,5.1) => %lf ', এনএস (-3,5.1));
printf ('npow (-3, -5.1) => %lfn', এনএস (-3, -5.1));
প্রত্যাবর্তন 0;
}
Example1.c তে, আমরা আউটপুট দেখেছি এনএস () ফাংশন এখানে আমরা ব্যবহার করি -এলএম গণিত লাইব্রেরিতে লিঙ্ক করার জন্য কমান্ড লাইন প্যারামিটার। লাইন 10 থেকে 13 পর্যন্ত, আমরা প্রত্যাশা অনুযায়ী আউটপুট পেয়েছি। 14 এবং 15 লাইনের জন্য, আমরা পেয়েছি -নান (একটি সংখ্যা নয়) কারণ দ্বিতীয় যুক্তিটি অবিচ্ছেদ্য নয়।
বিট শিফটিং ব্যবহার করে এক্সপোনেন্ট
যদি আমরা 2 এর শক্তিতে ঘাতক গণনা করতে চাই, তাহলে আমরা বিট শিফটিং ব্যবহার করে এটি করতে পারি।
M দ্বারা বাম স্থানান্তর প্রথম মেয়াদের সমান এবং 2 শক্তি m এর সমান।
n<< m = n*পাও (2, মি)
M দ্বারা ডান স্থানান্তর প্রথম মেয়াদের বিভাজনের সমতুল্য এবং শক্তি m থেকে 2।
n >> মি = n/pow (2, m)
এটি শুধুমাত্র তখনই কাজ করে যখন m ইতিবাচক হয়।
// উদাহরণ 2. সি#অন্তর্ভুক্ত
intপ্রধান()
{
printf ('nঘ<%d',ঘ<<3);
printf ('n5<%d',5<<3);
printf ('n-৫<%d', -53 => %ঘ', 40 >> 3);
printf ('n40>>3 => %ঘ', 40 >> 3);
printf ('n-40>>3 => %d n', -40 >> 3);
রিটার্ন 0;
}
Example2.c তে, আমরা দেখেছি কিভাবে বিট শিফট অপারেটরকে 2 এর শক্তিতে এক্সপোনেন্টের জন্য ব্যবহার করা যায়। কোডের জটিলতা কমাতে এটি খুবই উপকারী।
ব্যবহারকারী-সংজ্ঞায়িত ফাংশন ব্যবহার করে এক্সপোনেন্ট
আমরা সূচক গণনা করার জন্য একটি ব্যবহারকারী-সংজ্ঞায়িত ফাংশন লিখতে পারি। Example3.c তে, আমরা একটি ব্যবহারকারী-সংজ্ঞায়িত ফাংশন লিখব সূচক (), যা দুটি আর্গুমেন্ট ভিত্তিক এবং এক্সপ টাইপ ফ্লোট এন্ট ইন্টিজার নেয়।
// উদাহরণ 3. সি#অন্তর্ভুক্ত
ভাসাসূচক(ভাসাভিত্তি, int মেয়াদ শেষ )
{
ভাসাফলাফল=1.0;
ভাসাআমি;
যদি( মেয়াদ শেষ < 0)
{
মেয়াদ শেষ = -ঘ * মেয়াদ শেষ ;
জন্য(আমি=ঘ;আমি<= মেয়াদ শেষ ;আমি++)
ফলাফল=ফলাফল*ভিত্তি;
ফলাফল= 1.0/ফলাফল;
}
অন্য
{
জন্য(আমি=ঘ;আমি%চ', সূচক (3,0));
printf ('xp nexponent(3, -5) => %চ', সূচক (3, -5));
printf ('xp nexponent(-3, -5) => %চ', সূচক (-3, -5));
রিটার্ন 0;
}
Example3.c আমরা ব্যবহারকারী-সংজ্ঞায়িত ফাংশনের আউটপুট দেখেছি সূচক () । এই ফাংশনটি কাজ করা হয় যখন সূচকটি অবিচ্ছেদ্য। বাস্তব সূচক জন্য, আমরা ব্যবহার করতে হবে এনএস () ফাংশন
উপসংহার
এই নিবন্ধে, আমরা ব্যবহার করতে দেখেছি এনএস () ফাংশন এবং বিট নাড়াচাড়া অপারেটর কিভাবে সি ভাষায় এক্সপোনেন্ট গণনা করা যায়। আমরা সূচকগুলি গণনা করার জন্য আমাদের নিজস্ব ফাংশন লিখতে শিখেছি। এখন আমরা এই কৌশলগুলি আমাদের সি প্রোগ্রামে কোন সন্দেহ ছাড়াই ব্যবহার করতে পারি।