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

C - programming Language শিশুদের উপযোগী টিউটোরিয়াল: পর্ব -৪

১৩ ই নভেম্বর, ২০১০ বিকাল ৪:৩২
এই পোস্টটি শেয়ার করতে চাইলে :

C - programming Language শিশুদের উপযোগী টিউটোরিয়াল: পর্ব -৩

আপনি ১ কেজি আলু কেনার জন্য দোকানে গেলেন।
দোকানে গিয়ে বলতে হবে, "আলু দেন এক কেজি! পচাঁ যেন না থাকে"। তারপর টাকাটা দিলেন। দোকানদার ১ কেজি আলু মেপে আপনাকে দিলে আপনি সেটা নিয়ে বাসায় চলে আসলেন।
এরপর ঐ আলু আপনি কাটবেন না ভর্তা করবেন সেটা আমাদের মাথা ব্যাথার বিষয় না।

আমাদের চিন্তার বিষয় প্রোগ্রামিং।
ধরুন, আমরা এমন একটা প্রোগ্রাম লিখতে চাই, যার কাজ হলো ৩ টি সংখ্যা যোগ করা।
এখন, আপনি যে প্রোগ্রামটি লিখবেন সেটার কার্যপদ্ধতির সাথে কিন্তু ঐ আলু কেনার বেশ মিল আছে। কেমন সেটা??

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

১ কেজি আলু মাপা যেমন দোকানীর কাজ, তেমনি সংখ্যাগুলো যোগ করা হলো প্রোগ্রামের কাজ।
প্রোগ্রামিং এর ভাষায় এটা হলো প্রসেসিং (Processing )

দোকানদার আপনার হাতে যে আলুর ব্যাগ ধরিয়ে দেবে, সেটা হলো আপনার টাকা দেওয়া আর আলু চাওয়ার ফলাফল।
তেমনি ভাবে, প্রোগ্রাম যখন আপনাকে ঐ সংখ্যা গুলোর যোগফল দেখাবে সেটা হলো, আপনার কাঙ্খিত ফলাফল।
প্রোগ্রামিং এর ভাষায় এটা হলো আউটপুট (Output)

এত কথা বলার কারণ কি??
উপরের উদাহরণ গুলো খেয়াল করুন। প্রসেসিং ছাড়া বাকি সব কাজ কিন্তু আপনাকেই করতে হচ্ছে!
তার মানে হলো, আপনি কি করতে যাচ্ছেন সেটা সম্পর্কে সম্পূর্ণ স্বচ্ছ ধারণা থাকতে হবে।
এমনকি আউটপুট সম্পর্কেও।
যেমন,
৯৮৫+৩২১৩২ = কত?
আপনি এটা তৎক্ষনাৎ বলতে না পারলেও অন্তত এ ব্যাপারে নিশ্চিত এটার যোগফল অবশ্যই একটা পজেটিভ নাম্বার হবে!

এই টিউটোরিয়াল এর প্রাথমিক পর্যায়ে আমরা যে সব প্রোগ্রামিং করবো, সেগুলো হলো খুবই সাধারণ কিছু গাণিতিক সমস্যার সমাধান। যেমন: যোগ-বিয়োগ, গুন-ভাগ, বড়-ছোট নির্ণয়, কিছু মজার ধাঁধা ইত্যাদি ইত্যাদি।
আমি যদি এখানে কোড লিখে দেই, আর আপনি সেটা কপি-পেস্ট করে নিজেই চালিয়ে নেন, তাহলে কাজের কাজ কিছুই হবে না!
তাহলে আপনার কাজ কী হবে??

একটা ছোট বাচ্চাকে অংক শেখানোর মত মনোভাব নিয়ে বসতে হবে।
দুইটি সংখ্যা কিভাবে যোগ করতে হয় - এই ব্যাপারটি ধীরে ধীরে বুঝাতে হবে।
অ্যালগরিদমের কথা মনে আছে?? ঐ যে................. প্ল্যান করার কথা বলেছিলাম!
দুইটি সংখ্যা যোগ করার অ্যালগরিদম কেমন হতে পারে?? ভাবুন।
..........

আপনি যখন কোন কিছু কিনতে যান, তখন কিভাবে দাম পরিশোধ করেন?
নগদ টাকা দিয়ে, ব্যাংকের চেক দিয়ে, ক্রেডিট কার্ড দিয়ে ইত্যাদি ইত্যাদি। আসলে এগুলো সব কিছুই টাকারই এক একটি রূপ!

আপনি হয়তো বলবেন, ছোট বেলায় কটকটিওয়ালাকে ভাঙাচোরা লোহা দিয়ে কত কটকটি খেয়েছেন!! টাকা দেওয়া তো লাগে নি!!

আপনার জন্য দু:সংবাদ হলো, আমাদের মূল আলোচনা যাকে নিয়ে, সে কম্পিউটারের প্রোগ্রাম আপনার কাছ থেকে যখন কোন তথ্য বা ডাটা নিবে, তখন কোন হেলাফেলা করবে না!

সুতরাং আপনাকে জানতে হবে সে কোন কোন টাইপের ডাটা গ্রহণ করে।
চলুন দেখি।
ও! ভালো কথা Data'র এই type গুলো কে বলে Data type।

আচ্ছা! ইংরেজীতে আপনি কোন কোন ধরনের অক্ষর ব্যবহার করে?
প্রধানত দুই ধরনের।
A-Z এক ধরনের, আর 0,1,2...9 আরেক ধরনের।

A-Z হলো character বা বর্ণ। প্রোগ্রামিং এর ভাষায় আমরা একে আদর করে বলি char.

আর 0,1,2...9 হলো number বা সংখ্যা।
এখন, যে সব সংখ্যা আবার পূর্ণ সংখ্যা মানে কোন দশমিক সাথে নিয়ে ঘুরে না, সে গুলোকে বলে integer।
আমরা বলবো int

আর যে সব সংখ্যা একা একা থাকে না, সাথে দশমিক নিয়ে থাকে সে গুলো হলো floating number। যেমন ১০.৩
এগুলোকে আমরা বলবো, float.
অর্থ্যাৎ, Data type পাওয়া গেলো আপাতত তিন রকম।

১. character বা বর্ণ (char)
২. integer বা পূর্ণ সংখ্যা ( int)
৩. floating number বা দশমিক সংখ্যা (float)

এগুলোও ছাড়াও আরো কয়েক ধরনের Data type আছে। সেগুলো যখন সময় আসবে তখন এমনিতেই জানতে পারবেন।
....................

এখন আরেকটা গুরুত্বপূর্ণ বিষয় আমরা জানবো। তার আগে বাস্তব জীবন থেকে একটু ঘুরে আসি।
আপনার বাসায় আমি যদি গিয়ে বলি, "পানি খাবো"।
তাহলে আশা করা যাচ্ছে আপনি একটা গ্লাসে করে সে পানি নিয়ে আসবেন।

এখন যদি আপনার ইচ্ছা হয় আমাকে চা খাওয়ানোর, তাহলে কিন্তু তখন আর গ্লাসে করে সেটা নিয়ে আসবেন না! কাপ-পিরিচে করে আনবেন।

এই যে, আপনি আমাকে একবার গ্লাসে করে, আরেকবার কাপে করে চা-কফি দিচ্ছেন, (এখানে গ্লাস-কাপ এগুলো হলো পাত্র) তেমনি ভাবে, কম্পিউটারকে যখন আপনি কোন Data দিবেন, তখন সেটা একটা পাত্রে করে দিতে হবে।

আর এর নাম হলো Variable।
গ্লাস-কাপ এগুলো যেমন চা-পানি ধরে রাখে তেমনি, এই Variable এর কাজ হলো Data ধরে রাখা।
...................

এখন Data type এবং Variable এর মধ্যে একটা সম্পর্ক আছে।

Variable এ Data রাখার আগে আপনাকে বলে দিতে হবে, কোন ধরনের Data আপনি রাখতে চান!
কেননা, এক ধরণের ডাটা চাহিদা এক এক রকম।
চাহিদা ব্যপারটা একটু পরিষ্কার করি।
আপনি যখন, কোন একদিনের আপনার খরচের পরিমাণ হিসাব করতে যান, তখন খাতার একটি পৃষ্ঠাই যথেষ্ট।
আর যদি, পুরো একমাসের খরচের হিসাব করতে যান, তখন কিন্তু একটা খাতার দরকার হবে।

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

এক এক ধরনের ডাটার জন্য RAM থেকে সে এক এক রকম জায়গা বরাদ্দ পায়।
যেমন: character এর জন্য ৮ বিট, floating number এর জন্য ৩২ বিট ইত্যাদি।

পানি খাওয়ার কথা বললে, আপনি বুঝে যান, গ্লাস ব্যবহার করতে হবে। আবার, চায়ের জন্য ঠিকই কাপ তৈরী!

আপনি যখন কম্পিউটারকে বলবেন, "আমি একটা character রাখবো।"
সে তখন RAM কে বলবে, "character সাহেব আসবেন, ৮ বিট জায়গা রেডি করো"

[add]
....................

পড়তে পড়তে গলা শুকিয়ে গেছে? এক গ্লাস ঠান্ডা পানি খেয়ে আসতে পারেন।
যাওয়ার আগে, ঠান্ডা পানির রেসিপি বলে দেই।

১. প্রথমে একটা খালি গ্লাস যোগাড় করুন।
২. গ্লাসের অর্ধেক পরিমাণ নরমাল পানি নিন।
৩. ফ্রিজ থেকে দু-চার টুকরা বরফ নিয়ে ঐ গ্লাসে যোগ করুন
৪. অল্প কিছু সময় নিন, বরফ গলাবার জন্য।
৫. তৈরী হয়ে গেলো ঠান্ডা পানি!

পোস্ট শেষ করার আগে, একটা কথা! উপরের রেসিপিতে, গ্লাসের জায়গায় variable, পানি ও বরফের জায়গায় দুটি integer দিলে কি ঠান্ডা পানির জায়গায় আপনি ঐ দুটি integer এর যোগফল পাবেন না??
সর্বশেষ এডিট : ১৪ ই নভেম্বর, ২০১০ রাত ২:০৬
২২টি মন্তব্য ১৮টি উত্তর

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

ছবি সংযুক্ত করতে এখানে ড্রাগ করে আনুন অথবা কম্পিউটারের নির্ধারিত স্থান থেকে সংযুক্ত করুন (সর্বোচ্চ ইমেজ সাইজঃ ১০ মেগাবাইট)
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
এই পোস্টটি শেয়ার করতে চাইলে :
আলোচিত ব্লগ

তালগোল

লিখেছেন বাকপ্রবাস, ২৫ শে এপ্রিল, ২০২৪ সকাল ৯:৩৫


তু‌মি যাও চ‌লে
আ‌মি যাই গ‌লে
চ‌লে যায় ঋতু, শীত গ্রীষ্ম বর্ষা
রাত ফু‌রা‌লেই দি‌নের আ‌লোয় ফর্সা
ঘু‌রেঘু‌রে ফি‌রে‌তো আ‌সে, আ‌সে‌তো ফি‌রে
তু‌মি চ‌লে যাও, তু‌মি চ‌লে যাও, আমা‌কে ঘি‌রে
জড়ায়ে মোহ বাতা‌সে ম‌দির ঘ্রাণ,... ...বাকিটুকু পড়ুন

মা

লিখেছেন মায়াস্পর্শ, ২৫ শে এপ্রিল, ২০২৪ দুপুর ১২:৩৩


মায়াবী রাতের চাঁদনী আলো
কিছুই যে আর লাগে না ভালো,
হারিয়ে গেছে মনের আলো
আধার ঘেরা এই মনটা কালো,
মা যেদিন তুই চলে গেলি , আমায় রেখে ওই অন্য পারে।

অন্য... ...বাকিটুকু পড়ুন

কপি করা পোস্ট নিজের নামে চালিয়েও অস্বীকার করলো ব্লগার গেছে দাদা।

লিখেছেন প্রকৌশলী মোঃ সাদ্দাম হোসেন, ২৫ শে এপ্রিল, ২০২৪ দুপুর ২:১৮



একটা পোস্ট সামাজিক যোগাযোগ মাধ্যমে বেশ আগে থেকেই ঘুরে বেড়াচ্ছে। পোস্টটিতে মদ্য পান নিয়ে কবি মির্জা গালিব, কবি আল্লামা ইকবাল, কবি আহমদ ফারাজ, কবি ওয়াসি এবং কবি... ...বাকিটুকু পড়ুন

শাহ সাহেবের ডায়রি ।। গানডুদের গল্প

লিখেছেন শাহ আজিজ, ২৫ শে এপ্রিল, ২০২৪ বিকাল ৪:২৮




তীব্র দাবদাহের কারণে দুবছর আগে আকাশে ড্রোন পাঠিয়ে চীন কৃত্রিম বৃষ্টি নামিয়েছিলো। চীনের খরা কবলিত শিচুয়ান প্রদেশে এই বৃষ্টিপাত চলেছিলো টানা ৪ ঘন্টাব্যাপী। চীনে কৃত্রিম বৃষ্টি নামানোর প্রক্রিয়া সেবারই প্রথম... ...বাকিটুকু পড়ুন

ভারতকে জানতে হবে কোথায় তার থামতে হবে

লিখেছেন আরেফিন৩৩৬, ২৫ শে এপ্রিল, ২০২৪ সন্ধ্যা ৬:৪৫


ইন্ডিয়াকে স্বপ্ন দেখানো ব্যাক্তিটি একজন মুসলমান এবং উদার চিন্তার ব্যাক্তি তিনি হলেন এপিজে আবুল কালাম। সেই স্বপ্নের উপর ভর করে দেশটি এত বেপরোয়া হবে কেউ চিন্তা করেনি। উনি দেখিয়েছেন ভারত... ...বাকিটুকু পড়ুন

×