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

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

পূর্ণসংখ্যার (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 , এখন মনে করো আমি যোগ করতে পারি না। シ কিন্তু আমি কিন্তু সি++ প্রোগ্রামিং ভাষায় কোড লিখতে পারি। তো এখন দুইটি সংখ্যা যোগ করার জন্য আমার কাছে একটা উপায় হল সি++ দিয়ে যোগ করার একটি কোড লিখে ফেলা। চলো লিখে ফেলি। তুমি হয়তো ভাবছো তুমি যোগ করতে পারো তাহলে তোমার তো সি++ দিয়ে যোগ করার কোড লেখার কোনো দরকার নেই। না দরকার আছে, বলছি কেনো দরকার। প্রথম প্রথম যতো বেশি কোড লিখবে ততোবেশি ভালো ভাবে সি++ দিয়ে কোড লেখা আয়ত্ত করতে পারবে।

#include <stdio.h>
int main()
{
    int num1,num2,num3;
    num1 = 12; num2 = 3;
    num3 = num1 + num2;
    printf("Sum of two numbers is %d.\n", num3);
    return 0;
}
Output: Sum of two numbers is 15.

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

গাণিতিক অপারেটর –

যোগ করার জন্য + অপারেটর
বিয়োগ করার জন্য – অপারেটর
গুন করার জন্য * অপারেটর
ভাগ করার জন্য / অপারেটর ব্যবহার করা হয়।
ভাগশেষ বের করার জন্য % অপারেটর ব্যবহার করা হয়।

প্রোগ্রাম এ ব্যবহৃত কিছু গাণিত –

2+3*6/2 = 11 3*4%5 = 2
12/6+9 = 11 3*4/2%5 = 1
3%2 = 1 3+4%3 = 4
5%3 = 2 3*4-5 = 7

printf() ফাংশন “Sum of two numbers is %d.\n” এই লেখাটা আউটপুট স্ক্রিন এ দেখানোর জন্য ব্যবহৃত হয়। যেখানে %d, int ডাটা টাইপ এর ভেরিয়েবল এর মান প্রিন্ট করার জন্য, অর্থাৎ %d এর জায়গায় কমার পরের num3 এর মান বসবে। \n নতুন একটি লাইন প্রিন্ট করার জন্য ব্যবহৃত হয়। তাহলে আউটপুট স্ক্রিনে দেখানো হবে “Sum of two numbers is 15.”।

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

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

#include <stdio.h>
int main()
{
    int num1,num2,num3;
    num1 = 12;
    num2 = 3;
    num3 = num1 - num2;
    printf("Difference of two numbers is %d.\n", num3);
    return 0;
}
Output: Difference of two numbers is 9.

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

printf() ফাংশন “Difference of two numbers is %d\n” এই লেখাটা আউটপুট স্ক্রিন এ দেখানোর জন্য ব্যবহৃত হয়। যেখানে %d, int ডাটা টাইপ এর ভেরিয়েবল এর মান প্রিন্ট করার জন্য, অর্থাৎ %d এর জায়গায় কমার পরের num3 এর মান বসবে। n নতুন একটি লাইন প্রিন্ট করার জন্য ব্যবহৃত হয়। তাহলে আউটপুট স্ক্রিনে দেখানো হবে “Difference of two numbers is 9.”।

এভাবে যোগ, বিয়োগ, গুণ, ভাগ এর সহজ প্রোগ্রাম তুমি লিখে ফেলতে পারো। তবে int ডাটা টাইপ এর ভেরিয়েবল এ সর্বদা পূর্ণসংখ্যা ব্যবহৃত হবে।

সি প্রোগ্রামিং – সূচিপত্র ( টিউটোরিয়াল সমূহ ) –


1792 Total Views 1 Views Today