পাইথনে গাণিতিক ফাংশন {Mathematical Functions in python}

 
পাইথনে গাণিতিক ফাংশন {Mathematical Functions in python}

একটি প্রোগ্রামে মৌলিক ক্রিয়াকলাপগুলির সাথে ডিল করার সময় অপারেটররা খুব সুবিধাজনক, আমরা পাইথনে দেওয়া বিল্ট-ইন ফাংশনগুলি বিভিন্ন উন্নত ক্রিয়াকলাপ সম্পাদন করতে ব্যবহার করতে পারি।উদাহরণস্বরূপ, একটি সংখ্যার বর্গমূল {square} মান গণনা করার জন্য, আমাদের কোন লজিক বিকাশের প্রয়োজন নেই। আমরা sqrt() ফাংশনটি ব্যবহার করতে পারি যা ইতিমধ্যে 'গণিত' মডিউলে দেওয়া আছে।উদাহরণস্বরূপ, 16 এর বর্গমূল গণনা করতে, আমরা ফাংশনটিকে বলতে পারি: sqrt(16)।এই ফাংশনটি 16 এর পসিটিভ বর্গমূল মান প্রদান করে,যেমন 16 বর্গমূল মান হবে 4.0।
পাইথনে, একটি মডিউল হল একটি ফাইল যাতে ফাংশন, ক্লাস বা ভেরিয়েবলের মতো দরকারী বস্তুর একটি গ্রুপ থাকে, 'গণিত' হল একটি মডিউল যা গাণিতিক ক্রিয়াকলাপ সম্পাদনের জন্য বেশ কয়েকটি ফাংশন ধারণ করে।আমরা যদি আমাদের পাইথন প্রোগ্রামে কোনো মডিউল ব্যবহার করতে চাই, তাহলে প্রথমে আমাদের সেই মডিউলটিকে 'import' স্টেটমেন্ট লিখে আমাদের প্রোগ্রামে ইম্পোর্ট {import} করতে হবে। উদাহরণস্বরূপ, 'গণিত' মডিউল ইম্পোর্ট করতে, আমরা লিখতে পারি: 

import math{codeBox}

এটি হয়ে গেলে, আমরা গণিত মডিউলে উপলব্ধ যে কোনো ফাংশন ব্যবহার করতে পারি।এখন, আমরা ফাংশনের আগে মডিউলের নাম লিখে ম্যাথ মডিউল থেকে sqrt() ফাংশন উল্লেখ করতে পারি :math.sqrt()।

x = math. sqrt(16){codeBox}

এখানে, 'x' মান 4.0 হবে।

আমরা ইম্পোর্ট স্টেটমেন্ট ব্যবহার করতে পারি:

import math as m{codeBox}

এই ক্ষেত্রে, আমরা 'গণিত' মডিউল ইম্পোর্ট করছি এবং আমাদের প্রোগ্রামে এটিকে 'm' হিসাবে নামকরণ করছি। সুতরাং, 'm' রিপ্রেসেন্টস করবে 'math' কে। সুতরাং 16 এর বর্গমূল গণনা করতে, আমরা লিখতে পারি:

x = m.sqrt (16){codeBox}

গণিত মডিউল থেকে সমস্ত ফাংশন ইম্পোর্ট করতে গণিতের স্টেটমেন্ট ইম্পোর্ট করতে উপযোগী। অন্যদিকে, যদি প্রোগ্রামার গণিত মডিউল থেকে শুধুমাত্র একটি বা দুটি ফাংশন আমদানি করতে চায়, তাহলে তিনি লিখতে পারেন:

from math import sqrt{codeBox}

এটি আমাদের প্রোগ্রামে শুধুমাত্র sqrt() ফাংশন উপলব্ধ করবে। প্রোগ্রামার গণিত মডিউল থেকে শুধুমাত্র সেই ফাংশনটি ব্যবহার করতে পারে কিন্তু তার প্রোগ্রামের অন্যান্য ফাংশন ব্যবহার করতে পারে না। একইভাবে, একাধিক ফাংশন ইম্পোর্ট করতে, কেউ লিখতে পারেন:

from math import factorial, sqrt{codeBox}

এখানে, প্রোগ্রামার ফ্যাক্টরিয়াল() এবং স্কোয়ার() নামে দুটি ফাংশন ইম্পোর্ট করছে। প্রোগ্রামার তাদের আগে মডিউল নাম ব্যবহার না করে এই ফাংশনগুলি ব্যবহার করতে পারে, যেমন:

x = sqrt(16)
y = factorial(5){codeBox}

এখানে, 'x' এর মান হবে 4.0 এবং y' এর মান হবে 120। নিচে কিছু গণিত মডিউল থেকে গুরুত্বপূর্ণ গাণিতিক ফাংশনগুলিকে সংক্ষিপ্ত করে দেওয়া আছে । দয়া করে মনে রাখবেন যে এই ফাংশনগুলি জটিল সংখ্যার সাথে ব্যবহার করা যাবে না। জটিল সংখ্যার সাথে এই ফাংশনগুলি ব্যবহার করার জন্য,পাইথনে 'cmath' নামে একটি পৃথক মডিউল উপলব্ধ আছে। এছাড়া পাইথন গণিত মডিউলে কনস্টান্টস মডিউল উপলব্ধ আছে।

  • ceil(x) পরবর্তী উচ্চতর পূর্ণসংখ্যাতে x মান বাড়ায়। যদি x পূর্ণসংখ্যা হয়, তাহলে একই মান প্রদান করা হয়। যেমন:ceil(4.5) আউটপুট 5
  • floor(x) পূর্ববর্তী পূর্ণসংখ্যা মানের x মান হ্রাস করে। যদি x পূর্ণসংখ্যা হয়, তাহলে একই মান প্রদান করা হয়। যেমন:যেমন:floor(4.5) আউটপুট 4
  • degrees(x) রেডিয়ান থেকে ডিগ্রীতে কোণের মান x রূপান্তর করে। যেমন:degrees(3.14159) আউটপুট 179.9998479605043
  • radians(x) ডিগ্রী থেকে x মানকে রেডিয়ানে রূপান্তর করে।যেমন:radians(180) আউটপুট 3.141592653589793
  • sin(x) x এর সাইন মান দেয়। এখানে x এর মান রেডিয়ানে দেওয়া আছে। যেমন:sin(0.5) আউটপুট 0.479425538604203
  • cos(x) x এর কোসাইন মান দেয়। এখানে x এর মান রেডিয়ানে দেওয়া আছে। যেমন:cos(0.5) আউটপুট 0.8775825618903728
  • tan(x) x এর স্পর্শক মান প্রদান করে, x মান রেডিয়ান দেওয়া হয়। যেমন:tan(0.5) আউটপুট 0.5463024898437905
  • exp(x) x এর এক্সপোনেনটিয়াটিও মান প্রদান করে। এটি e ** x এর মতো। যেমন:exp(0.5) রিটার্ন 1.6487212707001282
  • fabs(x) x এর পূর্ণ মান বা (পসিটিভ পরিমাণ) দেয়। যেমন:fabs(-4.56) আউটপুট 4.56 
  • factorial(x) x এর ফ্যাক্টরিয়াল মান প্রদান করে। x পূর্ণসংখ্যা না হয়ে বা নেগেটিভ হলে 'ভ্যালু এরর'আসবে। যেমন:factorial(4) আউটপুট 24
  • fmod(x,y) x এবং y এর বিভাজনের অবশিষ্টাংশ প্রদান করে। fmod() '%' অপারেটরের চেয়ে ফ্লোট মানের জন্য মডুলাস গণনা করতে পছন্দ করে। * %' অপারেটর পূর্ণসংখ্যা মানের জন্য ভাল কাজ করে। যেমন:fmod(14.5,3) আউটপুট 2.5
  • fsum(values) ফ্লোটিং পয়েন্ট মানগুলির সঠিক যোগফল প্রদান করে। যেমন:fsum([1.5,2.4,-3.3]) আউটপুট 0.600000000000001
  • mod(x) x এর ফ্লোট এবং অবিচ্ছেদ্য অংশ প্রদান করে। যেমন:modf(2.56) আউটপুট (0.56,2.0)
  • log10(x) x এর বেস-10 লগারিদম প্রদান করে। যেমন:log10(5.2345) আউটপুট 0.7188752041406328
  • log(x,|,base) নির্দিষ্ট বেসের x এর ন্যাচারাল লগারিদম প্রদান করে। যেমন:log(5.5, 2) আউটপুট 2.4594316186372973
  • sqrt(x) x এর পসিটিভ বর্গমূল মান প্রদান করে। যেমন:sqrt(49)আউটপুট 7.0 
  • pow(x,y) x এর মান y এর ঘাত বাড়ায়। যেমন:pow (5, 3) আউটপুট 125.0 
  • gcd(x,y) x এবং y এর সর্বশ্রেষ্ঠ সাধারণ ভাজক দেয়। এটি পাইথন 3.5 এর পর থেকে উপলব্ধ। যেমন:gcd(25,30) আউটপুট 5
  • trunc(x) x এর আসল মানটি পূর্ণসংখ্যার মানের সাথে কাটা হয় এবং ফেরত দেওয়া হয়।যেমন:trunc(15.5676) আউটপুট 15
  • isinf(x) x একটি পসিটিভ বা নেগেটিভ সীমাহীন  হলে সত্য এবং অন্যথায় মিথ্যা প্রদান করে। যেমন:num=float('Inf') #num হল একটি ফ্লোট সংখ্যা যা সীমাহীন সংখ্যা নির্দেশ করে। isin(num) আউটপুট True
  • isnan(x) x একটি NaN হলে সত্য দেখায় (সংখ্যা নয়), এবং অন্যথায় মিথ্যা। যেমন:num=float('NaN') # NaN কে একটি ফ্লোট উপস্থাপনায় রূপান্তর করুন। isnan(num) আউটপুট True

কনস্টান্টস  ম্যাথ মডিউল

  • pi গাণিতিক কনস্টান্টস π = 3.141592 ..., উচ্চ নির্ভুলতা সহ।
  • e গাণিতিক কনস্টান্টস e = 2.718281 .... উচ্চ নির্ভুলতা সহ।
  • inf একটি ফ্লোটিং-পয়েন্ট পজিটিভ অসীমতা। (নেগেটিভ অসীমতার জন্য, math.inf ব্যবহার করুন।) float (inf) এর আউটপুটের সমতুল্য।
  • nan একটি ফ্লোটিং পয়েন্ট "সংখ্যা নয়"(NaN) ভ্যালুর । float('nan') এর আউটপুটের সমতুল্য।
একটি বৃত্তের ক্ষেত্রফল গণনা করার জন্য একটি পাইথন প্রোগ্রাম লিখি। আমরা জানি যে একটি বৃত্তের ক্ষেত্রফল নির্ণয়ের সূত্রটি হল pi * r * r। এই যুক্তিটি আমাদের প্রোগ্রামে ব্যবহৃত হয়। অবশ্যই, 'pi' মান উল্লেখ করতে, আমরা 'গণিত' মডিউলে কনস্ট্যান্ট ব্যবহার করতে পারি। সুতরাং, আমাদের 'গণিত' মডিউল ইম্পোর্ট করা উচিত।

import math
r=118.45
area=math.pi * r **2
print('Area of Circle=',area){codeBox}
নবীনতর পূর্বতন