বুধবার, ১৪ জানুয়ারী, ২০১৫

বাংলায় সি প্রোগ্রামিং শিখার ধারাবাহিক টিউটরিয়াল (দ্বিতীয় পর্ব)

·   0

কেমন আছেন বন্ধুরা। আজ আমি আপনাদের সামনে বাংলায় সি প্রোগ্রামিং শিখার ধারাবাহিক টিউটরিয়ালের দ্বিতীয় পর্ব নিয়ে হাজির হলাম। তো চলুন শুরু করা যাক। গত পর্বে আমরা দেখেছিলাম কিভাবে প্রোগ্রাম করার জন্য কম্পাইলার সেটাপ করতে হয়। যদি প্রথম পর্ব না দেখে থাকেন তবে এখানে গিয়ে দেখে আসতে পারেন। আশা করি আপনি ইতিমধ্যে আপনার কম্পিউটারে code block কম্পাইলারটি সেট আপ করেছেন। এখন কোন কিছু না বুঝে নিচের প্রোগ্রামটা লিখে রান করুনঃ
#include
int main()
{
printf("Hello World");
return 0;
}

output

Hello World
এখন উপরের প্রোগ্রামের প্রতিটি লাইনের ব্যাখ্যা বুঝতে বেনজিরের জন্ম দিনের কয়েক ঘন্টার কার্যকলাপ একটু মনযোগ দিয়ে পড়ুনঃ
১. বেনজির একটি রেস্টুরেন্ট এ এসে বসল। ওয়েটার আসল মেনু নিয়ে। বেনজির তার পছন্দের খাবারের তালিকা নির্বাচন করে ওয়েটার কে দিল।
২. ওয়েটার মেনু নিয়ে চলে গেল রাঁধুনীর কাছে। এই মেনুর খাবার তৈরিতে যেসব রন্ধন সামগ্রী লাগবে সব রাঁধুনীকে দেওয়া হল।
৩. রাঁধুনী মেনু দেখে বেনজিরের পছন্দের খাবার তৈরি করল।
৪. কিছুক্ষণ পর ওয়েটার খাবার নিয়ে আসল।

পছন্দের খাদ্য তালিকা তৈরি করছে

খাদ্য তালিকা অনুযায়ী রান্না হচ্ছে
উপরের প্রোগ্রামটির প্রতিটি লাইনের ব্যাখ্যাঃ

১. #include<stdio.h> : এই লাইনটি রাঁধুনীকে দেওয়া রন্ধন সামগ্রীর সাথে তুলনা করতে পারেন। সি প্রোগ্রামের কিছু কমান্ড কম্পাইলারে দেওয়া থাকে। সেই কমান্ডগুলা আপনার প্রগ্রামে সংযুক্ত করতে #include<stdio.h> লিখা হয়েছে। রাঁধুনীকে যেমন মেনু অনুযায়ী খাবার তৈরি করতে রন্ধন সামগ্রী দিতে হয়েছে, একইভাবে printf("Hello World");লাইনটি কাজ করার জন্য যেই কমান্ডগুলা দরকার সেগুলো #include<stdio.h> লাইনটার মাধ্যমে সংযুক্ত করে দেওয়া হয়েছে।
stdio মানে হলঃ Standard Input Output. এটাকে হেডার ফাইল বলে .h দিয়ে header file বুঝানো হচ্ছে।
২. int main() : এই লাইনটাকে আপনি ওয়েটারের সাথে তুলনা করতে পারেন। খাবার রান্না করা থেকে বেনজিরের কাছে খাবার আসা পর্যন্ত সম্পূর্ন প্রক্রিয়াটা শুরু করে দিয়েছে ওয়েটার, মেনুটি রাঁধুনির কাছে হস্তান্তর করে। একইভাবে int main() '{ }' এর ভেতরে যে লাইনগুলো আছে সেগুলকে কম্পাইলারের কাছে হস্তান্তর করে প্রোগ্রামটির এক্সিকিউশন শুরু করে দিয়েছে।
উল্লেখ্য যে, '{' কে বলা হয় ওপেনিং কার্লি ব্রেস এবং '}' কে বলা হয় ক্লোসিং কার্লি ব্রেস। int main() এর পর যে ওপেনিং কার্লি ব্রেস আছে সেখান থেকে এক্সিকিউশন শুরু হয় এবং ক্লোসিং কার্লি ব্রেস এ এক্সিকিউশন টার্মিনেট হয়।
৩.
{
printf("Hello World");
return 0;
}
: এই লাইনগুলোকে বেনজিরের পছন্দ করা মেনুর সাথে তুলনা করতে পারেন। বেনজির যেমন ইচ্ছে মত খারের আইটেম নির্বাচন করে মেনু তৈরি করতে পারে, একই ভাবে একজন প্রোগ্রামার তার পছন্দের কোন কাজ করতে '{}' এর ভেতরে সি এর কোড লিখতে পারে। সেটি হতে পারে ২ লাইনের সহজ কোন প্রোগ্রাম আবার ১০০০ লাইনের জটিল কোন প্রোগ্রাম।
উল্লেখ্য যে, printf(); কে বলা হয় লাইব্রেরী ফাংশন যেটি কম্পাইলারের সাথে stdio.h ফাইলে থাকে। এই printf();ফাংশনটি কাজ করার জন্যই শুরুতে #include লাইনটি লিখে দিতে হয়েছে। printf(); ফাংশনের ভেতরে ডাবল ইনভার্টেট কমার ভেতরে যা লিখে দেওয়া হয় তাই আউটপুটে দেখায়। আমি Hello world দেখতে চেয়েছি তাই
printf("Hello world"); লিখিছি।
যে কোন সি প্রোগ্রাম লিখার জন্য int main() এই ফাংশন টা লিখতে হয়।এরপর যেখান থেকে “{” শুরু হয় তার পর থেকে প্রোগ্রাম টা এক্সিকিউট করা শুরু করে এবং একটি একটি করে লাইন এক্সিকিউট করার পর যেখানে “}”আছে সেখানে টার্মিনেট করবে।লক্ষ্য রাখতে হবে যে int এবং main এর মাঝে যেন কমপক্ষে একটা space থাকে।
***কোন লাইন এক্সিকিউট করা মানে হলো সেই লাইন এর যে কাজ সেই কাজটি করা।
বিঃদ্রঃ return 0; লাইনটির ব্যাখ্যা ফাংশন অধ্যায় পড়ার পর বুঝা যাবে।
তো বন্ধুরা আজ এই পর্যন্তই। অন্য এক সময় আপনাদের সামনে আরেকটি টিউটরিয়াল নিয়ে হাজির হব।