Function

Function

ক্যারিয়ার গাইডলাইন নাদিম নওশাদ আগস্ট ২০২৩

আসসালামু আলাইকুম সবাইকে। কেমন আছো তোমরা? আশা করি অনেক ভালো আছো। তোমরা কি এমন কোনো বইয়ের কথা বলতে পারবে যে বইয়ে কোনো ভুল পাওয়া যায় না? যদি তোমরা বলে থাকো পবিত্র আল কোরআনের কথা, তাহলে তোমরা শতভাগ সঠিক উত্তর দিয়েছো। পবিত্র আল কোরআন এমন একটা বই, যেটা নাযিল হবার পর থেকে আজ অবধি কেউ এখানে কোনো ভুল খুঁজে বের করতে পারেনি। আরও মজার বিষয় কি জানো, যারাই এই মহান বইয়ে ভুল খুঁজতে চেষ্টা করেছে তারাই অবাক হয়েছে এর বাণীগুলো দেখে। তাদের কেউ কেউ পরবর্তীতে মুসলমান হয়েছে। তাই আমাদেরও উচিত এই বিস্ময়কর বইটিকে ভালোভাবে পড়া এবং বোঝার চেষ্টা করা ।


আচ্ছা এবার চলো আমরা পড়াশোনায় মন দেই। গত পর্বে আমরা pointer নিয়ে আলোচনা করেছিলাম। মনে আছে তো? আশা করি অনেক অনেক চর্চা করেছো pointer এর ব্যবহার নিয়ে। তারপরও চলো আরেকবার একটু ফিরে দেখা যাক pointer নিয়ে আমরা কী কী আলোচনা করেছিলাম। pointer হলো এমন একটা variable যেটা দিয়ে আমরা কোনোvalue কে তার memory address দিয়ে store করতে পারি। যখনই আমরা pointer variable কে call করবো, তখনই এর memory address এর সাথে যে value store করা আছে সেটা নিয়ে কাজ করতে পারবো। ariable name এর নাম দিয়ে এই memory address ব্যবহার করাকে variableএর referencing বলে। C++ এ pointer variable declare করার ৩টা পদ্ধতি আছে। 

1. string* pointer_one; 

2. string *pointer_two;

3. string * pointer_three;

এই ৩টা পদ্ধতির মধ্যে প্রথমটা সবচেয়ে বেশি প্রচলিত এবং গ্রহণযোগ্য । 


আজকে আমরা function সম্পর্কে আলোচনা করবো। function হচ্ছে একটা block of code যেটা শুধুমাত্র তখনই কাজ করবে যখন এটাকে call করা হবে। আমরা চাইলে একটা function এ বিভিন্ন value pass করতে পারি। আরে, ভয় পাওয়ার কোনো কারণ নেই। আমরা একে একে function এর খুঁটিনাটি সম্পর্কে আলোচনা করবো। function ব্যবহার করে আমরা একটা কোডকে বারবার ব্যবহার করতে পারি। মানে একবার কোড লেখার পর যখনই দরকার হবে তখনই call করা যাবে। এতে করে আমাদের কোড এর দৈর্ঘ্য কমে যাবে। Function এর syntax–

return_type function_name(parameters) {

  // code to be executed

// return value

}

int main() {

  function_name(); // calling the function

  return 0;

Return type : return type বলতে বোঝাচ্ছে আমরা কোন ঃtype এর data return করতে চাচ্ছি। এটা integer, float, string বা অন্য যেকোনো data type হতে পারে। আর কোনো data return করতে না চাইলে void লিখতে হবে।void function_name(parameters){}, int function_name(parameters){//code; return int_variable}। তোমরা কি কোনো মজার কথা মনে করতে পারো? আমরা main function লেখার সময় int main() লিখি, আবার সবার শেষে return 0 লিখি। এখন নিশ্চয়ই বিষয়টার কারণ উদঘাটন করতে পেরেছো।


Function Name : function name যেকোনো কিছু হতে পারে। এই name দিয়েই পরবর্তীতে function কে call করতে হবে। 


rameters : Parameter হলো passing variable যেটা function যেখান থেকে পধষষ হয় সেখান থেকে call করা হয়। বলতে পারো function যেখান থেকে call হবে সেটা দেখতে কেমন হবে তার একটা নকশা তৈরি করতে হয় function declare করার সময়। মানে কয়টা variable pass  হবে, কোন sreial এ data গুলো আসবে, সেগুলোর data type কী হবে, এগুলোর তথ্য দেওয়া লাগে। বুঝতে কী কষ্ট হয়ে যাচ্ছে নাকি? চিন্তার কোনো কারণ নেই, পরবর্তীতে আমরা parameters  নিয়ে আরও বিস্তর পড়াশোনা করবো । 


Return Value : আমরা যখন কোনো return type declare করি তখন সেই type এর value return করতে হয়। যদি return type integer হয়, তবে integer value return করতে হবে। আর যদি void হয় return type, তাহলে আর কিছু return করার দরকার নেই।


চলো একটা উদাহরণ দিয়ে আরও সহজে বোঝা যাক। ধরো, আমরা একটা ক্যালকুলেটার বানাতে চাচ্ছি। তাহলে আমাদের দুইটা সংখ্যার মধ্যে যোগ, বিয়োগ, গুণ কিংবা ভাগ করতে হবে। যেটা বারবার করতে হয়, তার জন্য function এর ব্যবহার খুব কার্যকরী। এখন তাহলে চলো আমরা যোগ, বিয়োগ, গুণ ও ভাগ এর জন্য আলাদা function তৈরি করি । 


যোগ এর জন্য-

int Addition(int a, int b){

int x =  a + b ;

return x;


বিয়োগ এর জন্য-

int Subtraction(int a, int b){

int x =  a - b ;

return x;


গুণ এর জন্য-

int Multiplication(int a, int b){

int x =  a * b ;

return x;


ভাগ এর জন্য-

int Division(int a, int b){

int x =  a / b ;

return x;

এখন main function টা তৈরি করতে হবে ।

int main(){

int num1,num2;

char operator;

cout<<'Enter numbers to calculate:  ';

cin>>num1;

cin>>operator;

cin>>num2;

if(operator=='+'){

cout<<Addition(num1,num2);

}else if(operator=='-'){

cout<<Subtraction(num1,num2);

}else if(operator=='*'){

cout<<Multiplication(num1,num2);

} else if(operator=='/'){

cout<<Division(num1,num2);

}else{

cout<<ÒInvalid Operator';

}

}

আশা করি আমরা function সম্পর্কে কিছুটা প্রাথমিক ধারণা লাভ করতে পেরেছি। এখন আমাদের বেশি বেশি প্র্যাকটিস করতে হবে। পরবর্তী পর্বে আমরা function নিয়ে আরো বিস্তারিত আলোচনা করবো ইনশাআল্লাহ।

আপনার মন্তাব্য লিখুন
অনলাইনে কিশোরকন্ঠ অর্ডার করুন
লেখকের আরও লেখা

সর্বাধিক পঠিত

আর্কাইভ

আরও পড়ুন...

CART 0

আপনার প্রোডাক্ট সমূহ