সি প্রোগ্রামিং এর অ আ ক খ

আমাদের দেশ এ হাতে গোনা কিছু ছেলেমেয়ে ছাড়া programing টার্মটার সাথে আমরা পরিচিত হই বিশ্ববিদ্যালয়ে আসার পর । এখন যদিও কলেজ লেভেল থেকে বিষয়টিকে ফোকাস করা হচ্ছে । Programming এ যারা নতুন তাদের জন্যই মুলত লিখছি । কারন আমি নিজেও Programming এ অনেক কাচা । আমার উদ্যেশ্য Programming এ যারা নতুন তাদের শুরু করতে সাহায্য করা । জানি না কতটুকু / আদৌ সাহায্য করতে পারব কিনা । আর যে বইগুলো বাজার এ কিনতে পাওয়া যায় ওগুলো expert দের লেখা , যা newbie দের বুঝতে একটু কষ্ট হয়(আমার হয় আর কি……) । তাই, একটু সহজ করে বোঝানোর চেষ্টা করব ।
Programming এর হাতেখড়ি হিসেবে C কে বেছে নেয়া ভাল মনে করি । কারন, তুলনামূলক ভাবে এখানে অনেক কম keyword, function জেনে শুরু করা যায় , অনেক কম Programming Term জানতে হয় । যাই হোক, আমি আসলে কাজ করে শিখতে বিশ্বাসি । তাই নতুন টার্ম আসলে সেটা সম্পর্কে বলব । আগে থেকে out of blue নতুন টার্ম নিয়ে এসে গোলমাল করব না । এতে অনীহা চলে আসে ।
আমি already keyword & function নামে দুইটা জিনিস বলেছি । এ দুটি সম্পর্কে আগে বলি ।

Keyword : এই কী ওয়ার্ড হল, সহজ ভাষায় বলতে গেলে সি এর পৈতৃক সম্পত্তি । এগুলো ব্যাবহার Programming করার সময় আমরা যেসব ডাটা ইউজ করব সেগুলো কে, সেগুলো কি ধরনের, তা কমপাইলার কে চিনিয়ে দেব ।

Function : ফাংশন হল , একটা কনভার্টার এর মত । এই ফাংশন কে আমরা যে ইনপুট দেব তা ঐ ফাংশনের ধর্ম অনুযায়ী কনভার্ট করবে ।

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

Programing কে সহজ করে তুলতে আমরা বিভিন্ন কম্পাইলার ব্যাবহার করতে পারি । আমরা DevC++ বা Codeblocks ব্যাবহার করতে পারি । এগুলো কিভাবে ব্যাবহার করতে হয় না জানলে টিউটোরিয়াল দেখে নিবেন ।

আমরা বরং সরাসরি C এর basic structure এ চলে যাই ।

#include
main()
{
printf(“Hello World!!!”);
}

আমি এখানে যে প্রোগ্রামটি লিখেছি তা হয়ত পৃথিবীর সবচেয়ে বেশি সংখ্যকবার লেখা প্রোগ্রাম ।
এখানে C Programing এর প্রধান জিনিস গুলো আছে । একটা হালকা ধারনা দেয়া যাবে ।

প্রথমেই আমি লিখেছি “#include” ।
এখানে আমি কম্পাইলারকে বলছি stdio.h ( stdio = Standard Input Output ) নামের Header file টিকে আমাদের প্রোগ্রামে ইনক্লুড করে নিতে । সহজ ভাষায় header file বলতে বোঝায়, কিছু ফাইল যাদের এক্সটেনশন .h এবং যারা আমাদের ready-made কিছু ফাংশন সরবরাহ করে ।

তারপর লিখেছি main() . main() একটি ফাংশন যা সব C Program এই থাকে । এর ভিতরেই প্রোগ্রামের সব কাজ সম্পন্ন হয় ।

এরপর একটা opening curly bracket আছে । যা কোন code block এর সুচনা নির্দেশ করে । Code block হল opening & closing curly bracket এর ভিতর এর ভ্যালিড কোড ।

এরপর আছে printf(“Hello World!!!”); . মানে আমরা কম্পাইলারকে বলছি Hello World!!! – লাইনটি যেন সে আমাদের মনিটরে দেখায় । এখানে printf() একটা built in function যা stdio.h এ আগে থেকে কম্পাইল করা আছে । printf() সম্পর্কে আরো কিছু জানার আছে , তবে আর একটু পরে । আর সেমিকোলনটি একটি লাইন, আরো নির্দিষ্ট করে বলতে গেলে একটি কমান্ডের শেষ নির্দেশ করে ।
এরপর closing curly bracket দ্বারা প্রোগ্রামটি শেষ করা হয়েছে । এখন এটিকে কমপাইল করে রান করলে ছবিতে যেমন দেখান হয়েছে ওরকম একটা ডিস্প্লে হবে ।

যারা Turbo C ব্যাবহার করবে তারা অবশ্যই
#include
main()
{
clrscrn();
printf(“Hello World!!!”);
getch();
}

লিখবেন । clrscrn() ( clrscrn=clear screen ) পূর্ববর্তী আউটপুট গুলো মুছে ফেলে এবং getch() (getch = get character ) পরবর্তী ইনপুট না পাওয়া পর্যন্ত প্রোগ্রামটিকে সচল রাখে ।

আজ এ পর্যন্তই । পরবর্তী পোস্ট আসছে শিঘ্রই ।

Faysal Ishtiaq Rabby
Latest posts by Faysal Ishtiaq Rabby (see all)

About Faysal Ishtiaq Rabby

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

Check Also

এডজ কম্পিউটিং (Edge Computing) কি?

ডিভাইসের উপরেই ব্যবহারকারিদের আরো কাছে কম্পিউটিং এবং তথ্য এর প্রোসেস আরো দ্রুত করার অত্যাধুনিক একটি …

ফেসবুক কমেন্ট


মন্তব্য করুন

আপনার ই-মেইল এ্যাড্রেস প্রকাশিত হবে না। * চিহ্নিত বিষয়গুলো আবশ্যক।