<cstdlib> (C++: <cstdlib>, C: <stdlib.h>) হেডারে পূর্ণসংখ্যার निरপেক্ষ মান (absolute value) বের করার জন্য একাধিক ফাংশন রয়েছে, যা ডেটা টাইপ অনুযায়ী ভিন্ন।
১. abs() — int টাইপের জন্য
int abs(int n);
উদাহরণ
#include <cstdlib>
#include <iostream>
using namespace std;
int main() {
int x = -145, y = 145;
cout << "Absolute value of " << x << " is: " << abs(x) << endl;
cout << "Absolute value of " << y << " is: " << abs(y) << endl;
return 0;
}
আউটপুট
Absolute value of -145 is: 145
Absolute value of 145 is: 145
২. labs() — long টাইপের জন্য
long labs(long n);
উদাহরণ
#include <cstdlib>
#include <iostream>
using namespace std;
int main() {
long x = -9256847L, y = 9256847L;
cout << "Absolute value of " << x << " is: " << labs(x) << endl;
cout << "Absolute value of " << y << " is: " << labs(y) << endl;
return 0;
}
আউটপুট
Absolute value of -9256847 is: 9256847
Absolute value of 9256847 is: 9256847
৩. llabs() — long long টাইপের জন্য (C99/C++11)
long long llabs(long long n);
উদাহরণ
#include <cstdlib>
#include <iostream>
using namespace std;
int main() {
long long x = -99887654321LL, y = 99887654321LL;
cout << "Absolute value of " << x << " is: " << llabs(x) << endl;
cout << "Absolute value of " << y << " is: " << llabs(y) << endl;
return 0;
}
আউটপুট
Absolute value of -99887654321 is: 99887654321
Absolute value of 99887654321 is: 99887654321
সারসংক্ষেপ টেবিল
| ফাংশন | হেডার | ইনপুট টাইপ | রিটার্ন টাইপ | স্ট্যান্ডার্ড |
|---|---|---|---|---|
abs | <stdlib.h>/<cstdlib> | int | int | C89/C++98 |
labs | <stdlib.h>/<cstdlib> | long | long | C89/C++98 |
llabs | <stdlib.h>/<cstdlib> | long long | long long | C99/C++11 |
C++-এ 오ভারলোডিং
সি++-এ std::abs (from <cmath> বা <cstdlib>) ওভারলোডেড থাকে — int, long, long long, float, double, long double সবই সাপোর্ট করে। সি++-এ std::abs ব্যবহার করা ভালো।