সি++ প্রোগ্রামিং – পূর্ণসংখ্যার ডাটা টাইপ – প্রথম পর্ব

সি++ প্রোগ্রামিং – পূর্ণসংখ্যার ডাটা টাইপ – প্রথম পর্ব

পূর্ণসংখ্যার (Integer) ডাটা টাইপ এর ময়নাতদন্ত

একটি পূর্ণসংখ্যার (integer number) ভেরিয়েবল ডিক্লারেশন করার জন্য int ব্যবহার করা হয়। যেমন দুইটি পূর্ণসংখ্যা 12 এবং 3 , সংখ্যা দুইটির যোগফল 12+3 = 15 ।

  1. int পূর্ণসংখ্যার ডাটা টাইপ বোঝায়।
    একটি পূর্ণসংখ্যার (integer) মান ধারণ করার জন্য int ভেরিয়েবল ব্যবহার করা হয়।
  2. পূর্ণসংখ্যার ডাটা টাইপ 2/4 বাইট-এ পূর্ণসংখ্যার মান সংরক্ষণ করে। আমাদের ব্যবহৃত কম্পিউটার এর CPU তে যেই প্রসেসর থাকে তার উপর নির্ভর করে পরিবর্তিত হয়।
    আমাদের কম্পিউটার-এ 16 বিট প্রসেসর ব্যবহার করলে int এর ডাটা টাইপের জন্য মেমরিতে 2 বাইট (16 বিট) জায়গা বরাদ্দ হয়।
  3. আবার আমাদের কম্পিউটার-এ 32 বিট প্রসেসর ব্যবহার করলে int এর ডাটা টাইপের জন্য মেমরিতে 4 বাইট (32 বিট) জায়গা বরাদ্দ হয়।
    আমরা সচারাচর 32 বিট এর কম্পিউটার ব্যবহার করে থাকি ও কোড::ব্লকস(Code::Blocks) 32 বিট এর “Program File” এ ইন্সটল হয়, অর্থাৎ আমাদের কম্পিউটার 32/64 বিট এর হোক না কেনো,int এর ডাটা টাইপের জন্য মেমরিতে 4 বাইট জায়গা বরাদ্দ হবে।
  4. int ভেরিয়েবল যদি 2 বাইট এর হয় তাহলে -32,768 থেকে +32,767 পর্যন্ত মান সংরক্ষণ করতে পারে।
  5. int ভেরিয়েবল যদি 4 বাইট এর হয় তাহলে -2,147,483,648 থেকে +2,147,483,647 পর্যন্ত মান সংরক্ষণ করতে পারে।


দুইটি পূর্ণসংখ্যা 12 এবং 3, এখন 12 কে 3 দ্বারা ভাগ করলে ভাগফল হবে 4, কিন্তু যদি দুইটি পূর্ণসংখ্যা 10 এবং 3 হয়, তাহলে 10 কে 3 দ্বারা ভাগ করলে ভাগফল হবে 3.3333, ভাগফলএ দশমিক বিদ্যমান। পূর্ণসংখ্যার (Integer) ডাটা টাইপ int এর ভেরিয়েবল ভগ্নাংশ সংরক্ষণ করতে পারে না। এক্ষেত্রে নতুন একটি ডাটা টাইপ float অথবা double ব্যবহার করা হয়।

  • int পূর্ণসংখ্যার ডাটা টাইপ দশমিক মান সংরক্ষণ করতে পারে না।
  • int পূর্ণসংখ্যার ডাটা টাইপ এ দশমিক এর পরের অংশ বাদ যায়। যেমনঃ 10 ÷ 3 = 3.3333 না হয়ে 3 হবে, দশমিক এর পরের অংশ বাদ যায়।

উপরের লেখা গুলোর কিছুই বুঝি নাই ? シ তাহলে তোমার কোড::ব্লকস(Code::Blocks) open করে আমার সাথে নিচের কোড গুলি লিখে কম্পাইল ও রান করো। シ

int ডাটা টাইপ এর ময়নাতদন্তের মূল অংশ (কোড লিখা)

যোগ করার প্রোগ্রামঃ

দুইটি পূর্ণসংখ্যা 12 এবং 3, সংখ্যা দুইটির যোগফল 12+3 = 15 , এখন মনে করো আমি যোগ করতে পারি না। シ কিন্তু আমি কিন্তু সি++ প্রোগ্রামিং ভাষায় কোড লিখতে পারি। তো এখন দুইটি সংখ্যা যোগ করার জন্য আমার কাছে একটা উপায় হল সি++ দিয়ে যোগ করার একটি কোড লিখে ফেলা। চলো লিখে ফেলি। তুমি হয়তো ভাবছো তুমি যোগ করতে পারো তাহলে তোমার তো সি++ দিয়ে যোগ করার কোড লেখার কোনো দরকার নেই। না দরকার আছে, বলছি কেনো দরকার। প্রথম প্রথম যতো বেশি কোড লিখবে ততোবেশি ভালো ভাবে সি++ দিয়ে কোড লেখা আয়ত্ত করতে পারবে।

কোডের ব্যাখ্যা: এখানে তিনটি int ডাটা টাইপ এর ভেরিয়েবল বিদ্যমান যথাক্রমে num1, num2 ও num3, যা মেমরিতে এই তিনটি ভেরিয়েবল এর জন্য 4 বাইট করে তিনটি জায়গা নিয়ে নিবে। এখন num1 = 12 ও num2 = 3 মানে num1 এর মা 12 এবং num2 এর মান 3 করলাম। এটাকে assign করা বলে। এখন num3 = num1 + num2; অর্থাৎ num3 এর মাঝে num1 ও num2 এর যোগফল রাখলাম।

 

সি++ প্রোগ্রামিং ভাষার একটি অনন্য বৈশিষ্ট্য হল এটি case sensitive, অর্থাৎ কম্পাইলারের upper case এবং lower case এর জন্য আলাদা গুরুত্ব বহন করে। তুমি লিখেছো int num; এখন মান রাখার সময় যদি লিখো “Num = 2;” তাহলে কম্পাইলার এরর বার্তা দিবে কেননা তুমি ডিক্লিয়ার করেছো int num। আবার যদি cout এর জায়গায় Cout বা COUT লিখো তাহলেও কম্পাইলার error বার্তা দিবে।

বিয়োগ করার প্রোগ্রামঃ

দুইটি পূর্ণসংখ্যা 12 এবং 3, প্রথম সংখ্যা দ্বিতীয় সংখ্যার বিয়োগফল 12-3 = 9 । এখন মনে করো আমি বিয়োগও করতে পারি না। シ কিন্তু তাতে কি ! আমি তো কিন্তু সি প্রোগ্রামিং ভাষায় কোড লিখতে পারি। তো এখন প্রথম সংখ্যা হতে দ্বিতীয় সংখ্যার বিয়োগফল বের করার জন্য আমার কাছে একটা উপায় হল সি দিয়ে বিয়োগ করার একটি কোড লিখে ফেলা। চলো লিখে ফেলি। তুমি হয়তো ভাবছো তুমি বিয়োগ করতে পারো তাহলে তোমার তো সি দিয়ে বিয়োগ করার কোড লেখার কোনো দরকার নেই। আগেই বলেছি দরকার আছে, প্রথম প্রথম যতো বেশি কোড লিখবে ততোবেশি ভালো ভাবে সি দিয়ে কোড লেখা আয়ত্ত করতে পারবে।

এখানে তিনটি int ডাটা টাইপ এর ভেরিয়েবল বিদ্যমান যথাক্রমে num1, num2 ও num3, যা মেমরিতে এই তিনটি ভেরিয়েবল এর জন্য 4 বাইট করে তিনটি জায়গা নিয়ে নিবে। এখন num1 = 12 ও num2 = 3 মানে num1 এর মা 12 এবং num2 এর মান 3 করলাম। এটাকে assign করা বলে। এখন num3 = num1 – num2; অর্থাৎ num3 এর মাঝে প্রথম সংখ্যা (num1) হতে দ্বিতীয় সংখ্যার( num2) বিয়োগফল রাখলাম।

সি++ প্রোগ্রামিং ভাষার একটি অনন্য বৈশিষ্ট্য হল এটি case sensitive, অর্থাৎ কম্পাইলারের upper case এবং lower case এর জন্য আলাদা গুরুত্ব বহন করে। তুমি লিখেছো int num; এখন মান রাখার সময় যদি লিখো “Num = 2;” তাহলে কম্পাইলার এরর বার্তা দিবে কেননা তুমি ডিক্লিয়ার করেছো int num। আবার যদি cout এর জায়গায় Cout বা COUT লিখো তাহলেও কম্পাইলার error বার্তা দিবে।

781 Total Views 1 Views Today
The following two tabs change content below.
Profile photo of Arifuzzaman Faisal
মোঃ আরিফুজ্জামান ফয়সাল, বাংলাদেশ প্রকৌশল বিশ্ববিদ্যালয় (বুয়েট) এর তড়িৎ কৌশল বিভাগে অধ্যয়ন রত। পাশাপাশি ইচ্ছে কোড (www.icchecode.com) এর প্রধান নির্বাহী হিসেবে দায়িত্ব রত।

যোগাযোগ করুন

আমরা এই মূহূর্তে অনলাইনে না থাকায় সরাসরি কথা বলতে পারছি না। আপনি আমাদের একটা মেইল করে রাখতে পারেনা, যত তারাতারি সম্ভব আমরা আপনার মেইলের উত্তর করার চেষ্টা করবো।

Sending

© ২০১১-২০২০ ইচ্ছে কোড প্রোগ্রামিং স্কুল বাংলা ভাষায় প্রোগ্রামিং শিক্ষা

Log in with your credentials

Forgot your details?