Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

C / C ++のabs()、labs()、llabs()関数


C ++のcstdlibライブラリには、abs以外の絶対値を取得するためのさまざまな関数があります。 absは、基本的にCではint型の入力に使用され、C ++ではint、long、longlongに使用されます。その他は、long、longlong型のデータなどに使用されます。これらの関数の使用法を見てみましょう。

abs()関数

この関数は、int型データに使用されます。したがって、これは指定された引数の絶対値を返します。構文は次のようになります。

int abs(int argument)

#include <cstdlib>
#include <iomanip>
#include <iostream>
using namespace std;
main() {
   int x = -145;
   int y = 145;
   cout << "Absolute value of " << x << " is: " << abs(x) << endl;
   cout << "Absolute value of " << y << " is: " << abs(y) << endl;
}

出力

Absolute value of -145 is: 145
Absolute value of 145 is: 145

labs()関数

この関数は、長いタイプのデータに使用されます。したがって、これは指定された引数の絶対値を返します。構文は次のようになります。

long labs(long argument)

#include <cstdlib>
#include <iomanip>
#include <iostream>
using namespace std;
main() {
   long x = -9256847L;
   long y = 9256847L;
   cout << "Absolute value of " << x << " is: " << labs(x) << endl;
   cout << "Absolute value of " << y << " is: " << labs(y) << endl;
}

出力

Absolute value of -9256847 is: 9256847
Absolute value of 9256847 is: 9256847

llabs()関数

この関数は、longlong型のデータに使用されます。したがって、これは指定された引数の絶対値を返します。構文は次のようになります。

long long labs(long long argument)

#include <cstdlib>
#include <iomanip>
#include <iostream>
using namespace std;
main() {
   long long x = -99887654321LL;
   long long y = 99887654321LL;
   cout << "Absolute value of " << x << " is: " << llabs(x) << endl;
   cout << "Absolute value of " << y << " is: " << llabs(y) << endl;
}

出力

Absolute value of -99887654321 is: 99887654321
Absolute value of 99887654321 is: 99887654321

  1. 配列がC/C++の関数に渡される方法

    このチュートリアルでは、配列が関数に渡される方法を理解するためのプログラムについて説明します。 C / C ++の場合、配列は、配列の最初の要素へのアドレスを提供するポインターの形式で関数に渡されます。 例 #include <stdio.h> //passing array as a pointer void fun(int arr[]){    unsigned int n = sizeof(arr)/sizeof(arr[0]);    printf("\nArray size inside fun() is %d"

  2. C / C ++のAAツリー?

    コンピュータサイエンスのAAツリーは、順序付けられたデータを効率的に保存および取得するために実装されたバランスの取れたツリーの形式として定義されます。 AAツリーは、エントリの効率的な追加と削除をサポートするバイナリ検索ツリーの形式である赤黒ツリーのバリエーションとして扱われます。赤黒木とは対照的に、AAツリーの赤いノードは、左のサブチャイルドではなく、右のサブチャイルドとしてのみ追加できます。この操作の結果、2-3-4ツリーではなく2-3ツリーのシミュレーションが行われるため、メンテナンス操作が簡素化されます。赤黒木のメンテナンスアルゴリズムでは、ツリーのバランスを適切にとるために、7つの異