Function (ফাংশন) কি লাইব্রেরি ফাংশন ও ইউজার-ডিফাইন্ড ফাংশন ব্যাখ্যা কর ফাংশনের বিভিন্ন উপাদান বর্ণনা কর

C function(ফাংশন)
ফাংশন হলো বøক অব কোড (Block of Code) যা নির্দিষ্ট কার্য সম্পাদন করে। ফাংশন চেনার সহজ উপায় হলো ফাংশনের নামের শেষে এক জোড়া প্রথম বন্ধনী ( ) থাকে। সি প্রোগ্রামে ফাংশনকে দু’ভাগে ভাগ করা হয়। যথা১। লাইব্রেরি ফাংশন ও ২। ব্যবহারকারী কর্তৃক তৈরিকৃত ফাংশন
লাইব্রেরি ফাংশন
যে সকল ফাংশন বিশেষ কিছু কার্য সম্পাদনের জন্য সি ভাষায় বিল্ট-ইন আছে তাকে লাইব্রেরি ফাংশন Library function বলে। লাইব্রেরি ফাংশনগুলোর ঘোষণা তাদের হেডার (.য) ফাইলে এবং বিস্তারিত বর্ণনা সংশ্লিষ্ট লাইব্রেরি
(.খরন) ফাইলে দেয়া থাকে। এজন্য সি প্রোগ্রামে কোন লাইব্রেরি ফাংশন ব্যবহার করলে প্রোগ্রামের শুরুতেই #রহপষঁফব
ডিরেক্টিভ স্টেটমেন্টের সাহায্যে সংশ্লিষ্ট হেডার ফাইল সংযুক্ত হয়ে থাকে। প্রোগ্রামে কোন হেডার ফাইল সংযুক্ত করা হলে
কম্পাইলার প্রোগ্রাম কম্পাইল করার সময় সংযুক্ত ফাইলের উপাদানগুলো সংশ্লিষ্ট লাইব্রেরি ফাইল থেকে কপি করে।
যেমন- ংয়ৎঃ() ফাংশনটি কোন ধনাত্মক সংখ্যার বর্গমূল নির্ণয় করে। ব্যবহারকারী কর্তৃক তৈরিকৃত ফাংশন
সি ভাষায় অনেক বিল্ট-ইন/লাইব্রেরি ফাংশন থাকা সত্তে¡ও প্রোগ্রাম রচনার সময় প্রয়োজন অনুযায়ী সব রকম ফাংশন
পাওয়া যায় না। সেক্ষেত্রে প্রোগ্রামার তার নিজের প্রয়োজন অনুযায়ী যে সকল ফাংশন তৈরি করে প্রোগ্রাম তথা সধরহ()
ফাংশনে ব্যবহার করেন সেগুলোকে ইউজার-ডিফাইন্ড () বা ব্যবহারকারী কর্তৃক তৈরিকৃত ফাংশন বলা হয়।
ফাংশনের উপাদান
সি প্রোগ্রামে কোনো লাইব্রেরি কিংবা ইউজার ডিফাইন্ড ফাংশন ব্যবহার করতে গেলে সাধারণত নি¤œলিখিত চারটি বিষয়
বিবেচনা করতে হবে :
 ফাংশন বর্ণনা (Function Definition)
 ফাংশন কল ( (Function Call)
 ফাংশন প্রোটোটাইপ (Function Prototype)
 ফাংশন রিটার্ণ টাইপ ও রিটার্ণ স্টেটমেন্ট
এগুলোকে ফাংশনের উপাদান বা অংশ বলা হয়।
৯.১৪.৪ ফাংশন বর্ণনা
ফাংশন বর্ণনার মাধ্যমে কম্পাইলারকে জানিয়ে দেয়া হয় যে, কাজ কি হবে এবং এবং কিভাবে করবে। একটি ইউজারডিফাইন্ড ফাংশন কতগুলো স্টেটমেন্ট নিয়ে গঠিত হয়। সামান্য কিছু ব্যতিক্রম ছাড়া ফাংশনের প্রতিটি স্টেটমেন্ট
সেমিকোলন দ্বারা শেষ হয়। ইউজার-ডিফাইন্ড ফাংশনের বর্ণনা তার ব্যবহারকারী বা সধরহ () ফাংশনের উপরে কিংবা নিচে
থাকে কিন্তু ভেতরে নয়। ইউজার ডিফাইন্ড ফাংশন ঘোষণার নিয়ম হলো :
Return Type Function Name (Argument List)
// Function Body
// Retun Statment (Depends on ReturnType)

এখানে জবঃঁৎহ ঞুঢ়ব যে কোন বৈধ ডাটা টাইপ, ঋঁহপঃরড়হ ঘধসব ব্যবহারকারী কর্তৃক দেয়া ফাংশনের নাম এবং
অৎমঁসবহঃখরংঃ ফাংশনে ব্যবহৃত আরগুমেন্টের তালিকা। ঋঁহপঃরড়হইড়ফু তে ফাংশনের বিস্তারিত বর্ণনা থাকে।
ঋঁহপঃরড়হ ইড়ফু- কেমন হবে তা ফাংশনের ধরন অর্থাৎ সমস্যার উপর নির্ভর করে। উল্লেখ্য ফাংশনের প্রথম বন্ধনির মধ্যে
কোন ভ্যারিয়েবল ঘোষণা করা হলে তাকে আরগুমেন্ট ভ্যারিয়েবল বলা হয়।
৯.১৪.৫ ফাংশন কল
যখন একটি ফাংশন অপর কোন ফাংশনকে ব্যবহার করে, তাকে ব্যবহাকারী বা মূল ফাংশন এবং যে ফাংশনটি ব্যবহার
করা হয় তাকে ব্যবহৃত বা কল্ড ফাংশন বলা হয়। আর এই প্রক্রিয়ার নাম ফাংশন কল। নিচের উদাহরণে সধরহ ( ) ফাংশন
উদাহরণ ঃ একটি আয়তক্ষেত্রের ক্ষেত্রফল ইউজার ডিফাইন ফাংশনের সাহায্যে তৈার করে মেইন ফাংশনে রিটার্ন করবে এমন একটি
তিনটি সংখ্যার মধ্যে ছোট সংখ্যা বের করার জন্য একটি ইউজার ডিফাইন্ড ফাংশন
ব্যবহার করে প্রোগ্রাম লিখুন।
সি ভাষার একটি অন্যতম সুবিধা হলো ফাংশনের ব্যবহার। সাধারণত সধরহ() ফাংশনের ভিতরে কতকগুলো
স্টেটমেন্ট, ফাংশন, গাণিতিক এক্সপ্রেশন ইত্যাদির সমন্বয়ে সি প্রোগ্রাম তৈরী হয়। নির্দিষ্ট কার্য সম্পাদনের জন্য
কতকগুলো স্টেটমেন্টের সমষ্টিই হল ফাংশন (ঋঁহপঃরড়হ) যা সধরহ প্রোগ্রাম এর ভিতরে বা বাইরে অবস্থান করতে পারে।
পাঠোত্তর মূল্যায়ন-৯.১৪
সঠিক উত্তরের পাশে টিক () চিহ্ন দিন
১। সি প্রোগ্রামের ফাংশন কত ধরনের?
ক) ২ খ) ৩
গ) ৩ ঘ) ৪
২। ফাংশনের উপাদান বা অংশ কয়টি?
ক) ২ খ) ৩
গ) ৪ ঘ) ৫
ব্যবহারিক
ব্যবহারিক ১ ঃ ত্রিভুজের ক্ষেত্রফল বের করার প্রোগ্রাম ।
তত্ত¡ ঃ ত্রিভুজের ক্ষেত্রফল নির্ণয়ের জন্য ংপধহভ() ব্যবহার কীবোর্ড হতে প্রথমে ত্রিভুজের ভ‚মি এবং ত্রিভুজের উচচতা গ্রহণ
করতে হবে। অতঃপর ক্ষেত্রফল = ১/২  ভ‚মি  উচচতা সূত্র ব্যবহার করে ত্রিভুজের ক্ষেত্রফল নির্ণয় করতে হবে।
যন্ত্রপাতির ব্যবহার ঃ যন্ত্রপাতি ব্যবহারের পূর্বে প্রয়োজনীয় যন্ত্রপাতি নির্বাচন বা সিলেক্ট করতে হয়। এক্ষেত্রে হার্ডওয়্যারের
পাশাপাশি প্রয়োজনীয় সফ্টওয়্যার এবং প্রোগ্রামিং ভাষাও নির্বাচন করতে হয়।
হার্ডওয়্যার ঃ একটি কম্পিউটার।
সফটওয়্যার ঃ অপারেটিং সিস্টেম : উইন্ডোজ ঢচ বা উইন্ডোজ ৭ ।
প্রোগ্রামিং ভাষা ঃ ইড়ৎষধহফ ঞঁৎনড় ঈ++ বা ঞঁৎনড় ঈ++ বা ঞঈডওঘ
উপরিউক্ত পরীক্ষণটি সম্পন্ন করার জন্য যন্ত্রপাতির ব্যবহারের ক্ষেত্রে নি¤œলিখিত ধাপসমূহ অনুসরণ করতে হবে১. ঈড়সঢ়ঁঃবৎ এর চড়বিৎ ঈড়হহবপঃরড়হ ভাল ভাবে ঈযবপশ করে ঈচট এর চড়বিৎ ঙঘ করতে হবে।
২. গরপৎড়ংড়ভঃ ডরহফড়ংি এর ডেস্কটপ চলে আসবে।
৩. সি প্রোগ্রামিং ভাষাটির যে কোন কম্পাইলার (ইড়ৎষধহফ ঞঁৎনড় ঈ++ বা ঞঁৎনড় ঈ++ বা ঞঈডওঘ) ইনস্টল
আছে কিনা তা নিশ্চিত হতে হবে।
৪. বর্ণিত পরীক্ষণটি সম্পন্ন করার জন্য ইনস্টলকৃত সি কম্পাইলার এর এডিটরটি চালু করতে হবে।
৫. পরীক্ষণটির কার্যক্রম সম্পন্ন হলে চালুকৃত প্রোগ্রাম বা প্রোগ্রামসমূহ বন্ধ করতে হবে এবং যথানিয়মে কম্পিউটারটি
বন্ধ বা শাট ডাউন করতে হবে। প্রয়োজনে বৈদ্যিুতিক সুইচ বন্ধ করে বিদ্যুৎ সংযোগ বিছিন্ন করতে হবে। ফলাফল উপস্থাপন ঃ
(১) প্রক্রিয়া অনুসরণ ঃ
পরীক্ষণটির কার্যক্রম সম্পন্ন করার জন্য নি¤œবর্ণিত ধাপগুলো অনুসরণ করতে হবে -
১. ডেস্কটপে অবস্থিত সি কম্পাইলার এর এডিটরটিতে ডবল ক্লিক করে চালু করতে হবে। অথবা প্রয়োজনীয়
লোকেশন থেকে সি কম্পাইলার এর এডিটরটি চালু করতে হবে।
২. ঋরষব মেনু থেকে ঘবি নির্বাচন করতে হবে।
৩. অতঃপর নি¤œলিখিত প্রোগ্রাম কোডসমূহ লিখতে হবে -
/* A program to calculate the area of a triangle. */
#include
#include
void main()
{
clrscr();
float base, height, area;
printf("\n Enter base of the triangle (in cm)= ");
scanf("%f", &base);
printf("\n Enter height of the triangle (in cm)= ");
scanf("%f", &height);
area= (base*height)/2;
printf("\n Area of the triangle is = %.2f square cm", area);
}

৪. কোডিং শেষে ঋরষব মেনুর ঝধাব অপশনে ক্লিক করতে হবে । ঝধাব ধং ডায়লগ বক্স আসবে। ঋরষব ঘধসব এর
জায়গায় যে কোন একটি নাম লিখে ঝধাব/ঙশ তে ক্লিক করলে উক্ত নামে ফাইলটি সংরক্ষিত হবে। যা মূলত
ঈ: \ঞঈ বা ঞঁৎনড় ঈ \ ইওঘ লোকেশনে সংরক্ষিত হবে।
(২) ব্যাখ্যা ঃ
১. প্রোগ্রামটিতে ইনপুট গ্রহণ করার জন্য লাইব্রেরি ফাংশন ংপধহভ()ব্যবহৃত হয়েছে। যার হেডার ফাইল হল ংঃফরড়.য ।
২. ফলাফল প্রর্দশন করার জন্য লাইব্রেরি ফাংশন ঢ়ৎরহঃভ() ব্যবহৃত হয়েছে। যার হেডার ফাইল হলো ংঃফরড়.য ।
৩. পষৎংপৎ() ফাংশনটি ব্যবহৃত হয়েছে আউটপুট পরিস্কার করার জন্য। যার হেডার ফাইল হলো পড়হরড়.য ।
৪. মবঃপয() ফাংশনটি ব্যবহৃত হয়েছে আউটপুট ধরে রাখার জন্য। যার হেডার ফাইল হলো পড়হরড়.য ।
৫. প্রোগ্রামটিতে ব্যবহৃত সকল ভ্যারিয়েবলই হলো ভষড়ঃরহম ঢ়ড়রহঃ বা দশমিকযুক্ত। তাই ভড়ৎসধঃ ংঢ়বপরভরবৎ হিসেবে
%ভ ব্যবহার করা হয়েছে।
৬. গাণিতিক ক্যালকুলেশনের ফলাফল দশমিকের পর দুই ঘর নেওয়ার জন্য %.২ভ ব্যবহার করা হয়েছে।
(৩) ফলাফল ঃ পূর্বের তৈরিকৃত প্রোগ্রাম নির্দিষ্ট লোকেশন হতে ওপেন করে অথবা প্রোগ্রাম কোডিং শেষ করার পর
প্রোগ্রাম কম্পাইল ( অষঃ +ঋ৯ বা ঈড়সঢ়রষব মেনু থেকে ঈড়সঢ়রষব কমান্ড ) করে প্রোগ্রাম রান বা নির্বাহ করার জন্য জঁহ
মেনু থেকে জঁহ কমান্ড নির্বাচন করলে প্রোগ্রামটি রান হবে অথবা ঈঃৎষ+ঋ৯ কী দুইটি একত্রে চাপ দিলেও প্রোগ্রাম রান
তত্ত¡ ঃ এরূপ ধারার যোগফল নির্ণয়ের জন্য শূন্য মানবিশিষ্ট একটি প্রারম্ভিক সংখ্যার সাথে ১, ২, ৩ এভাবে ক্রমিক
সংখ্যাগুলোর বর্গের যোগফল নির্ণয় করতে হবে এবং প্রতিবার আবর্তনের সময় লুপ কাউন্টারের মান ১ করে বৃদ্ধি করতে
হবে। এজন্য একটি উপযুক্ত লুপ স্টেটমেন্ট ব্যবহার করতে হবে।
যন্ত্রপাতির ব্যবহার ঃ যন্ত্রপাতি ব্যবহারের পূর্বে প্রয়োজনীয় যন্ত্রপাতি নির্বাচন বা সিলেক্ট করতে হয়। এক্ষেত্রে হার্ডওয়্যারের
পাশাপাশি প্রয়োজনীয় সফ্টওয়্যার এবং প্রোগ্রামিং ভাষাও নির্বাচন করতে হয়।
হার্ডওয়্যার ঃ একটি কম্পিউটার।
সফটওয়্যার ঃ অপারেটিং সিস্টেম : উইন্ডোজ ঢচ বা উইন্ডোজ ৭ ।
প্রোগ্রামিং ভাষা ঃ ইড়ৎষধহফ ঞঁৎনড় ঈ++ বা ঞঁৎনড় ঈ++ বা ঞঈডওঘ
উপরিউক্ত পরীক্ষণটি সম্পন্ন করার জন্য যন্ত্রপাতির ব্যবহারের ক্ষেত্রে নি¤œলিখিত ধাপসমূহ অনুসরণ করতে হবে১. ঈড়সঢ়ঁঃবৎ এর চড়বিৎ ঈড়হহবপঃরড়হ ভাল ভাবে ঈযবপশ করে ঈচট এর চড়বিৎ ঙঘ করতে হবে।
২. গরপৎড়ংড়ভঃ ডরহফড়ংি এর ডেস্কটপ চলে আসবে।
৩. সি প্রোগ্রামিং ভাষাটির যে কোন কম্পাইলার (ইড়ৎষধহফ ঞঁৎনড় ঈ++ বা ঞঁৎনড় ঈ++ বা ঞঈডওঘ) ইনস্টল
আছে কিনা তা নিশ্চিত হতে হবে।
৪. বর্ণিত পরীক্ষণটি সম্পন্ন করার জন্য ইনস্টলকৃত সি কম্পাইলার এর এডিটরটি চালু করতে হবে।
৫. পরীক্ষণটির কার্যক্রম সম্পন্ন হলে চালুকৃত প্রোগ্রাম বা প্রোগ্রামসমূহ বন্ধ করতে হবে এবং যথানিয়মে কম্পিউটারটি
বন্ধ বা শাট ডাউন করতে হবে। প্রয়োজনে বৈদ্যিুতিক সুইচ বন্ধ করে বিদ্যুৎ সংযোগ বিছিন্ন করতে হবে। ফলাফল উপস্থাপন ঃ
ক. জ্ঞান দক্ষতা স্তর
১। সি প্রোগ্রামিং ভাষা কী ?
২। ভ্যারিয়াবল বা চলক কী ?
৩। অ্যারে কী ?
৪। সাবস্ক্রিপটেড ভ্যারিয়াবল কী ?
৫। ফাংশন কী ?
খ. অনুধাবন দক্ষতা স্তর
১। সি++ বলতে কি বুঝায়?
২। সি প্রোগ্রামিং ল্যাংগুয়েজের সুবিধা ব্যাখ্যা করুন।
৩। সি ভাষার প্রোগ্রামে কোন ধরনের ফাইল আবশ্যক-ব্যাখ্যা করুন।
চূড়ান্ত মূল্যায়ন
বহুনির্বাচনী প্রশ্ন
ক. সাধারণ বহুনির্বাচনী প্রশ্ন
সঠিক উত্তরের পাশে টিক () চিহ্ন দিন
১। সি হচ্ছেক. অপারেটিং সিস্টেম খ. প্যাকেজ প্রোগ্রাম
গ. উচ্চতর প্রোগ্রামিং ভাষা ঘ. নি¤œস্তর প্রোগ্রামিং ভাষা
২। ঋড়ৎ লুপ এর শুরুতে কয়টি গুরুত্বপূর্ণ অংশ রয়েছে?
ক. দুই খ. তিন
গ. চার ঘ. ছয়
৩। সি ভাষার সাহায্যে কোন ধরনের প্রোগ্রাম লিখা যায়?
ক) ঙঢ়বৎধঃরহম ঝুংঃবস খ) ঈড়সঢ়রষবৎ
গ) ঞবীঃ বফরঃড়ৎ ঘ) সবগুলোই
৪। কোনটি লজিক্যাল অপারেটর?
ক) ্্ খ) = =
গ) + ঘ) সবগুলোই
৫। কোনটি লুপ স্টেটমেন্ট?
ক) রভ-বষংব খ) ংরিঃপয
গ) ভড়ৎ ঘ) নৎবধশ
খ. বহুপদি সমাপ্তিসূচক বহুনির্বাচনী প্রশ্ন
১। সি প্রোগ্রামিং ভাষা হলোর. কেস সেনসিটিভ
রর. চতুর্থ প্রজন্মের ভাষা
ররর. মধ্যম স্তরের ভাষা
নিচের কোনটি সঠিক ?
ক. র ও রর খ. র ও ররর
গ. রর ও ররর ঘ.র, রর ও ররর
২। হেডার ফাইল হলোÑ
র. ংঃফরড়.য
রর. সধঃয.য
ররর. রহঢ়ঁঃ.য
নিচের কোনটি সঠিক ?
ক. র ও রর খ. র ও ররর
গ. রর ও ররর ঘ.র, রর ও ররর
গ. অভিন্ন তথ্যভিত্তিক বহুনির্বাচনি প্রশ্ন
ক. ডাটা টাইপ কী ? ১
খ. সার্বজনীন ভাষা হিসেবে পরিচিত ভাষাটির ব্যাখ্যা করুন। ২
গ. উদ্দিপকের প্রোগ্রামটিতে ব্যবহৃত লুপটির বর্ণনা করুন । ৩
ঘ. উদ্দিপকের প্রোগ্রামে কি বলা হয়েছে এবং নির্বাহ করলে কি ধরনের ফলাফল পাওয়া যাবেÑবিশ্লেষণসহ মতামত দিন।৪
ক. সাবস্ক্রিপটেড ভ্যারিয়াবল কী? ১
খ. কোন ফাংশনটি সি প্রোগ্রামের জন্য অত্যাবশ্যকীয়? ব্যাখ্যা করুন। ২
গ. উদ্দীপকের প্রোগ্রামে কি বলা হয়েছে এবং প্রোগ্রামটি ব্যাখ্যা করুন। ৩
ঘ. উদ্দীপকের প্রোগ্রামটি ভড়ৎ এর পরিবর্তে ফড় ব্যবহার করে লিখুন এবং প্রোগ্রামটি নির্বাহ করলে কি ধরনের ফলাফল
পাওয়া যায়- বিশ্লেষণ করুন। ৪
উত্তরমালা :
পাঠোত্তর মূল্যায়ন- ইউনিট ৯
পাঠ - ৯.১ ১ খ ২ খ ৩ খ
পাঠ - ৯.২ ১ ক ২ ঘ
পাঠ - ৯.৩ ১ ঘ ২ ক
পাঠ - ৯.৪ ১ ক ২ গ
পাঠ - ৯.৫ ১ ক
পাঠ - ৯.৬ ১ গ ২ খ
পাঠ - ৯.৭ ১ খ ২ ক
পাঠ - ৯.৮ ১ খ ২ ক
পাঠ - ৯.৯ ১ ক ২ ঘ
পাঠ - ৯.১০ ১ ক ২ ঘ
পাঠ - ৯.১১ ১ খ ২ ঘ
পাঠ - ৯.১২ ১ ক ২ খ
পাঠ - ৯.১৩ ১ ক ২ ঘ
পাঠ - ৯.১৪ ১ ক ২ গ
বহুনির্বাচনী প্রশ্ন
ক. সাধারণ বহুনির্বাচনী প্রশ্ন
১ গ ২ খ ৩ ঘ ৪ ঘ ৫ গ
খ. বহুপদি সমাপ্তিসূচক বহুনির্বাচনী প্রশ্ন:
১ খ ২ ক
গ. অভিন্ন তথ্যভিত্তিক বহুনির্বাচনি প্রশ্ন
১ গ ২ ঘ

FOR MORE CLICK HERE
এইচএসসি বাংলা নোট ১ম পত্র ও ২য় পত্র
ENGLISH 1ST & SECOND PAPER
এইচএসসি আইসিটি নোট
এইচএসসি অর্থনীতি নোট ১ম পত্র ও ২য় পত্র
এইচএসসি পৌরনীতি ও সুশাসন ১ম পত্র
এইচএসসি পৌরনীতি নোট ২য় পত্র
এইচএসসি সমাজকর্ম নোট ১ম পত্র
এইচএসসি সমাজকর্ম নোট ২য় পত্র
এইচএসসি সমাজবিজ্ঞান নোট ১ম পত্র ও ২য় পত্র
এইচএসসি ইতিহাস নোট ১ম পত্র
এইচএসসি ইতিহাস নোট ২য় পত্র
এইচএসসি ইসলামের ইতি. ও সংস্কৃতি নোট ১ম পত্র
এইচএসসি ইসলামের ইতি. ও সংস্কৃতি নোট ২য় পত্র
এইচএসসি যুক্তিবিদ্যা ১ম পত্র ও ২য় পত্র
এইচএসসি ভূগোল ও পরিবেশ নোট ১ম পত্র ও ২য় পত্র
এইচএসসি ইসলামিক স্টাডিজ ১ম ও ২য় পত্র

Copyright © Quality Can Do Soft.
Designed and developed by Sohel Rana, Assistant Professor, Kumudini Government College, Tangail. Email: [email protected]