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
এই পোস্টটি শেয়ার করতে চাইলে :
আলোচিত ব্লগ

'ট্রিট' বা 'উদযাপন' মানে স্রেফ খাওয়া-দাওয়াই মূখ্য কেন??

লিখেছেন শেহজাদ আমান, ৩১ শে মার্চ, ২০২৬ বিকাল ৪:৩৭



আমাদের উদযাপনটা হয়ে গেছে অনেকটা খাওয়া-দাওয়া কেন্দ্রিক? 'ট্রিট' বা 'সেলিব্রেশন' বলতে আমরা কেবল খাওয়া-দাওয়াকেই বুঝি...কিন্তু এটা কিন্তু ভিন্নরকমভাবেও করা যায় নিঃসন্দেহে!

প্রিয় কেউ ভালো কোনোকিছু করলে, সফলতা পেলে বা... ...বাকিটুকু পড়ুন

মাওলার দায়িত্ব পেয়ে সেই দায়িত্ব পালন না করায় হযরত আলীকে (রা.) মাওলা বলা ঠিক না

লিখেছেন মহাজাগতিক চিন্তা, ৩১ শে মার্চ, ২০২৬ সন্ধ্যা ৬:১৮



সূরাঃ ৬ আনআম, ১৫৩ নং আয়াতের অনুবাদ-
১৫৩। আর এপথই আমার সিরাতিম মুসতাকিম (সরল পথ)। সুতরাং তোমরা এর অনুসরন করবে, এবং বিভিন্ন পথ অনুসরন করবে না, করলে তা’ তোমাদেরকে... ...বাকিটুকু পড়ুন

আমাদের নিজেদের না পাওয়া গুলো অন্যদের পেতে সাহায্য করা উচিত।

লিখেছেন নূর আলম হিরণ, ৩১ শে মার্চ, ২০২৬ রাত ৯:৪২


আমরা মানুষেরা সবসময় ভালো থাকতে চাই। ভালো খেতে চাই, ভালো পড়তে চাই, ভালো চাকুরী/ব্যবসা করতে চাই। কিন্তু বেশিরভাগ সময়ই আমাদের চাওয়ার সাথে পাওয়ার মিল থাকেনা। এই চাওয়ার সাথে পাওয়ার মিল... ...বাকিটুকু পড়ুন

ধান ভানতে শীবের গীত : প্রজা বলে শীত ! শীত!!

লিখেছেন স্বপ্নের শঙ্খচিল, ৩১ শে মার্চ, ২০২৬ রাত ১১:২২

ধান ভানতে শীবের গীত : প্রজা বলে শীত ! শীত!!


সমুদ্রে বড় জাহাজ যখন ডুবতে থাকে, তখন কে ধনী বা কে গরীব প্রকৃতি তার বাছ-বিচার করেনা ।
বা বলা চলে, কে পাপী... ...বাকিটুকু পড়ুন

এতো সুর আর এতো গান - আমার কণ্ঠে

লিখেছেন সাড়ে চুয়াত্তর, ০১ লা এপ্রিল, ২০২৬ রাত ২:০০

একটা হারানো দিনের গান গাওয়ার চেষ্টা করেছি (Cover Song)। আশা করি সবাই উপভোগ করবেন।

গান - এতো সুর আর এতো গান
মূল গায়ক - সুবীর সেন
গীতিকার এবং সুরকার - সুধিন... ...বাকিটুকু পড়ুন

×