কম্পিউটার

C/C++ এ ফ্লোট এবং তুলনা করার জন্য একটি পূর্ণসংখ্যা বরাদ্দ করা


পূর্ণসংখ্যা একটি ডেটা টাইপ হল এমন একটি সংখ্যাকে সংজ্ঞায়িত করতে ব্যবহৃত হয় যাতে সমস্ত ধনাত্মক, ঋণাত্মক বা শূন্য ভগ্নাংশের মান থাকে না। এইগুলির দশমিক থাকতে পারে না৷

ভাসা একটি ভগ্নাংশ মান আছে এমন একটি সংখ্যা সংজ্ঞায়িত করতে ব্যবহৃত ডেটা টাইপ। এগুলির দশমিকও থাকতে পারে৷

এখন, আমরা পরীক্ষা করব কম্পাইলার দ্বারা ফ্লোট এবং পূর্ণসংখ্যার রিটার্নের মান কী হবে যখন আমরা উভয়ের জন্য একই মান ইনপুট করব।

উদাহরণ

#include <iostream>
using namespace std;
int main(){
   float f = 23;
   unsigned int x = 23;
   cout<<"Float f = "<<f<<endl;
   cout<<"Integer x = "<<x<<endl;
   f = 0xffffffff;
   x = 0xffffffff;
   cout << "f = " << f << endl;
   cout << "x = " << x << endl;
   return 0;
}

আউটপুট

Float f = 23
Integer x = 23
f = 4.29497e+09
x = 4294967295

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

এখন, দেখা যাক যদি আমরা ফ্লোট ভ্যালু দিয়ে ইন্টিজার ভেরিয়েবল আরম্ভ করি।

উদাহরণ

#include <iostream>
using namespace std;
int main(){
   float f = 23.768;
   unsigned int x = 23.768;
   cout<<"Float f = "<<f<<endl;
   cout<<"Integer x = "<<x<<endl;
   return 0;
}

আউটপুট

Float f = 23.768
Integer x = 23

এই অবস্থায়ও প্রোগ্রামটি কম্পাইল করে রান করা হয়। পূর্ণসংখ্যা ভেরিয়েবল ইনিশিয়ালাইজ ফ্লোট মানের দশমিক বিন্দু মান বাতিল করে এবং এর পূর্ণসংখ্যা মানের সাথে শুরু হয়।

এখন, আসুন এই মানগুলির তুলনা করি -

উদাহরণ

#include <iostream>
using namespace std;
int main(){
   float f = 0xffffffff;
   unsigned int x = 0xffffffff;
   if(f == x ){
      cout<<"TRUE";
   }
   else
      cout<<"FALSE";
   return 0;
}

আউটপুট

TRUE

  1. C++ এবং জাভাতে ব্যতিক্রম পরিচালনার তুলনা

  2. C/C++ এ ফ্লোট এবং ডাবল তুলনার জন্য সবচেয়ে কার্যকর উপায় কি?

  3. কিভাবে C++ এ ফ্লোট এবং ডাবল তুলনা করবেন?

  4. C++ এ রিলেশনাল এবং তুলনা অপারেটর