somewhere in... blog
x
ফোনেটিক ইউনিজয় বিজয়

সি প্রোগ্রামিং: বিগিনার লেভেল - পর্ব ১.২

২৮ শে জুলাই, ২০০৯ বিকাল ৪:১৮
এই পোস্টটি শেয়ার করতে চাইলে :

পর্ব ১.২:

ডেটা টাইপ:
সি-তে বিভিন্ন ডেটা স্টোর বা ইনপুট এর জন্য বিভিন্ন ডেটা টাইপ ব্যবহার করতে হয়। যেমন কোন পূর্ণ সংখ্যার জন্য int (integer-এর সংক্ষিপ্ত রূপ), একটি অক্ষরের জন্য char (character-এর সংক্ষিপ্ত রূপ) ইত্যাদি। সি-তে যখন কোন পূর্ণসংখ্যা নিয়ে কাজ করতে হবে তখন একটি int-টাইপের ভ্যারিয়েবল ডিক্লেয়ার করতে হবে। ভ্যারিয়েবল হল একটি পাত্র বা প্লেট এর মত যা কিছু ধারন করতে পারে। ইন্টিজার হল ০, ১, ২... এরকম পূর্ণসংখ্যা (ঋণাত্বক সহ)। আপনি যখন একটি int-টাইপের ভ্যারিয়েবল ডিক্লেয়ার করবেন তখন তা মেমরী ব্লকে (অর্থাৎ RAM-এ) ২ বাইটের একটি অংশ ইন্টিজার টাইপের ডেটার জন্য সংরক্ষন করে এবং তা শুধুমাত্র একটি ইন্টিজার টাইপের ডেটাই সংরক্ষন করতে পারে।

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

সি ল্যাঙ্গুয়েজে আরেকটি কোড দেখুন:

#include
#include

int main()
{
clrscr();
int a,b,c;
printf(“Please enter first number: “);
scanf(“%d”,&a);
printf(“
Please enter second number: “);
scanf(“%d”,&b);
c=a+b;
printf(“
The summation is: %d “,c);
return 0;
}

এখানে clrscr() এর পরের লাইনটি খেয়াল করুন, এখানে তিনটি ইন্টিজার ভ্যারিয়েবল ডিক্লেয়ার করা হয়েছে। আপনি চাইলে তিনটি একসাথে ডিক্লেয়ার না করে আলাদা আলাদা করেও ডিক্লেয়ার করতে পারবেন। সেক্ষেত্রে লিখতে হত - int a; int b; int c;

এরপর printf() ফাংশন ব্যবহার করে Please enter the first number: কথাটি স্ক্রীনে ছাপানো হয়েছে। এরপরের লাইনে একটি নতুন ফাংশন scanf() ব্যবহার করা হয়েছে।
scanf() এর কাজ হল ইউজারের কাছ থেকে কোন কিছু ইনপুট নেওয়া। scanf()-এর গঠন-
scanf(“কন্ট্রোল স্ট্রিং”,&মেমরি-লোকেশন)

এখানে আমারা একটি ইন্টিজার ইনপুট নিতে চাই। ইন্টিজারের জন্য কন্ট্রোল স্ট্রিং হল %d। scanf() -এর মধ্যে কম্পাইলার যখন %d পাবে তখন এটি ইউজারের কাছ থেকে একটি ইন্টিজার ভ্যালু গ্রহনের জন্য প্রস্তুত হবে। কন্ট্রোল স্ট্রিং লিখতে হয় ডাবল কোটেশন এর মধ্যে, এরপর একটি কমা(,) দিয়ে একটি ভ্যারিয়েবল নির্দিষ্ট করে দিতে হয় যেখানে কম্পাইলার ইউজারের কাছ থেকে ডেটা নিয়ে স্টোর করবে। এখানে আগেই ডিক্লেয়ার করা a নামের ইন্টিজার ভ্যারিয়েবলটিতে কনসোল(কীবোর্ড,মনিটর) থেকে ইনপুট নিয়ে সেটি স্টোর করা হয়েছে। পরবর্তি দুই লাইনের কাজ এখন আপনি নিজেই বুঝতে পারবেন। দ্বিতীয় যে scanf() এর ব্যবহার করা হয়েছে সেটিতে b ভ্যারিয়েবলটিতে ডেটা স্টোর করা হয়েছে। এখানে লক্ষ করুন, ভ্যারিয়েবলের নামের আগে & চিহ্ন ব্যবহার করা হয়েছে। এই & চিহ্নটি হল একটি পয়েন্টার যা ঐ ভ্যারিয়েবলটির এড্রেস পয়েন্ট করে। scanf() এর ক্ষেত্রে ভ্যারিয়েবলের নামের আগে এই চিহ্নটি ব্যবহার করতে হয়। কিন্তু কেন করতে হয় তা পরবর্তিতে আলোচনা করা হবে।

এর পরবর্তি লাইনটি এবার দেখুন, c=a+b। এখানে এখন a এবং b ভ্যারিয়েবল দুইটিতে দুইটি ইন্টিজার সংখ্যা আছে। এই লাইনটি এক্সিকিউট করার পর c নামের ভ্যারিয়েবলটিতে a এবং b এর ভ্যালুর সমষ্টি এসাইন হয়ে যাবে। মনে রাখবেন, = অপারেটরটির বাম পাশে যে ভ্যারিয়েবলে ডেটা এসাইন করতে চান সেটি লিখতে হবে। আর ডানপাশে লিখতে হবে যার ভ্যালু এসাইন করতে চান সেটি। অর্থাৎ এই লাইনটির অর্থ দাড়াল এই রকম, a+b এর ভ্যালু c নামক ভ্যারিয়েবলে এসাইন কর। এরপরের লাইনে c এর ভ্যালু অর্থাৎ a+b এর ভ্যালু প্রিন্ট করা হবে। এখানে ডাবল কোটেশনের মধ্যে শুরু হয়েছে
দিয়ে, এর অর্থ হল new line। printf() এর ডাবল কোটেশনের মধ্যে
দিলে তা পরবর্তি লাইনে আউটপুট প্রদর্শন করে। এখানে একটি নতুন লাইনে The summation is: এটুকু প্রিন্ট করার পর %d কন্ট্রোল স্ট্রিং পাবে, অর্থাৎ একটি ইন্টিজার ভ্যালু প্রিন্ট করার নির্দেশ পাবে। কমার পর c ভ্যারিয়েবল উল্লেখ করার কারনে এই %d এর স্থলে c এর ভ্যালু প্রিন্ট করা হবে।

ভ্যারিয়েবলের নামকরনের সময় কয়েকটি জিনিস লক্ষ রাখবেন,
ভ্যারিয়েবলের নাম অবশ্যই কোন ইংরেজি অক্ষর দিয়ে শুরু হবে (a-z, A-Z), কোন সংখ্যা দিয়ে হতে পারবে না (0-9)।
ভ্যারিয়েবলের নামে আন্ডারস্কোর ( _ ) ছাড়া অন্য কোন চিহ্ন ( , . / ; ! @ ইত্যাদি ) থাকতে পারবে না, এবং পরপর দুইটি আন্ডারস্কোর দেয়া যাবে না।
ভ্যারিয়েবলের নাম সি এর কোন সিনট্যাক্স (printf, int, char) এর মত হতে পারবে না।
A, a অথবা vari, Vari, vAri ইত্যাদি আলাদা আলাদা ভ্যারিয়েবল।

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


১.০ ১.১ ১.২
সর্বশেষ এডিট : ৩১ শে জুলাই, ২০০৯ দুপুর ১২:২২
৪টি মন্তব্য ২টি উত্তর

আপনার মন্তব্য লিখুন

ছবি সংযুক্ত করতে এখানে ড্রাগ করে আনুন অথবা কম্পিউটারের নির্ধারিত স্থান থেকে সংযুক্ত করুন (সর্বোচ্চ ইমেজ সাইজঃ ১০ মেগাবাইট)
Shore O Shore A Hrosho I Dirgho I Hrosho U Dirgho U Ri E OI O OU Ka Kha Ga Gha Uma Cha Chha Ja Jha Yon To TTho Do Dho MurdhonNo TTo Tho DDo DDho No Po Fo Bo Vo Mo Ontoshto Zo Ro Lo Talobyo Sho Murdhonyo So Dontyo So Ho Zukto Kho Doye Bindu Ro Dhoye Bindu Ro Ontosthyo Yo Khondo Tto Uniswor Bisworgo Chondro Bindu A Kar E Kar O Kar Hrosho I Kar Dirgho I Kar Hrosho U Kar Dirgho U Kar Ou Kar Oi Kar Joiner Ro Fola Zo Fola Ref Ri Kar Hoshonto Doi Bo Dari SpaceBar
এই পোস্টটি শেয়ার করতে চাইলে :
আলোচিত ব্লগ

রাজাকার হিসাবেই গর্ববোধ করবেন মুক্তিযোদ্ধা আখতারুজ্জামান !

লিখেছেন সৈয়দ কুতুব, ১৩ ই ডিসেম্বর, ২০২৫ রাত ১১:১৮


একজন রাজাকার চিরকাল রাজাকার কিন্তু একবার মুক্তিযোদ্ধা আজীবন মুক্তিযোদ্ধা নয় - হুমায়ুন আজাদের ভবিষ্যৎ বাণী সত্যি হতে চলেছে। বিএনপি থেকে ৫ বার বহিস্কৃত নেতা মেজর আখতারুজ্জামান। আপাদমস্তক টাউট বাটপার একজন... ...বাকিটুকু পড়ুন

বাংলাদেশে কোন প্রজন্ম সবচেয়ে দুর্নীতিগ্রস্ত? ১৯৭১ থেকে একটি সংক্ষিপ্ত ভাবনা

লিখেছেন মুনতাসির, ১৪ ই ডিসেম্বর, ২০২৫ সকাল ৮:৪৩

বাংলাদেশে দুর্নীতির প্রশ্নটি প্রায়ই ব্যক্তি বা দলের দিকে ছুড়ে দেওয়া হয়। কিন্তু একটু গভীরে গেলে দেখা যায়, এটি অনেক বেশি প্রজন্মভিত্তিক রাজনৈতিক - অর্থনৈতিক বাস্তবতার সঙ্গে যুক্ত। ১৯৭১ এর পর... ...বাকিটুকু পড়ুন

চাঁদগাজীর মত শিম্পাঞ্জিদের পোস্টে আটকে থাকবেন নাকি মাথাটা খাটাবেন?

লিখেছেন শ্রাবণধারা, ১৪ ই ডিসেম্বর, ২০২৫ দুপুর ১২:৫৭


ধরুন ব্লগে ঢুকে আপনি দেখলেন, আপনার পোস্টে মন্তব্যকারীর নামের মধ্যে "জেন একাত্তর" ওরফে চাঁদগাজীর নাম দেখাচ্ছে। মুহূর্তেই আপনার দাঁত-মুখ শক্ত হয়ে গেল। তার মন্তব্য পড়ার আগেই আপনার মস্তিষ্ক সংকেত... ...বাকিটুকু পড়ুন

ধর্মীয় উগ্রবাদ ও জঙ্গী সৃষ্টি দিল্লী থেকে।

লিখেছেন সৈয়দ মশিউর রহমান, ১৪ ই ডিসেম্বর, ২০২৫ বিকাল ৩:১৫


((গত ১১ ডিসেম্বর ধর্মীয় উগ্রবাদ ও জঙ্গী সৃষ্টির ইতিবৃত্ত ১ শিরোনামে একটা পোস্ট দিয়েছিলাম। সেটা নাকি ব্লগ রুলসের ধারা ৩ঘ. violation হয়েছে। ধারা ৩ঘ. এ বলা আছে "যেকোন ধরণের... ...বাকিটুকু পড়ুন

আমাদের হাদিকে গুলি করা, আর আওয়ামী শুয়োরদের উল্লাস। আমাদের ভুল কোথায়?

লিখেছেন তানভির জুমার, ১৪ ই ডিসেম্বর, ২০২৫ রাত ৯:৫৩



৩০ জনের একটা হিটলিস্ট দেখলাম। সেখানে আমার ও আমার স্নেহের-পরিচিত অনেকের নাম আছে। খুব বিশ্বাস করেছি তা না, আবার খুব অবিশ্বাস করারও সুযোগ নাই। এটাই আমার প্রথম... ...বাকিটুকু পড়ুন

×