সি প্রোগ্রামিং ভাষায় float হলো ফ্লোটিং পয়েন্টের সংক্ষিপ্ত রূপ।
- ফ্লোটিং পয়েন্ট নম্বর সাধারণত IEEE ফরম্যাট-এ সংরক্ষিত হয় (Institute of Electrical and Electronics Engineers)।
- IEEE ফরম্যাটে: সাইন বিট, ম্যানটিসা (mantissa) এবং এক্সপোনেন্ট (exponent) থাকে।
- সাইন বিট: ০ = পজিটিভ, ১ = নেগেটিভ।
- ম্যানটিসা: বাইনารিতে নরমালাইজড ফর্মে। নরমালাইজেশনের পর সবচেয়ে গুরুত্বপূর্ণ ডিজিট সবসময় ১।
- এক্সপোনেন্ট: বায়াস (bias) যোগ করে আনসাইনড বাইনারিতে সংরক্ষিত। এটি এক্সপোনেন্ট সবসময় পজিটিভ থাকতে সাহায্য করে।
- বায়াস: float-এর জন্য ১২৭, double-এর জন্য ১০২৩।
উদাহরণ প্রোগ্রাম: ফ্লোটিং পয়েন্ট নম্বর রাউন্ড করা
#include <stdio.h>
int main() {
float var = 37.66666;
printf("%.4f", var); // ৪ দশমিকস্থান পর্যন্ত রাউন্ড
return 0;
}
আউটপুট: 37.6667
অন্য উদাহরণ: ৮ দশমিকস্থান
#include <stdio.h>
int main() {
float var = 78.67;
printf("%.8f", var);
return 0;
}
আউটপুট: 78.66999817
(ফ্লোটের প্রিসিশন সীমিত, তাই আনুমানিক মান দেখায়।)