C ++ llrint () - Perpustakaan Standard C ++

Fungsi llrint () dalam C ++ membundarkan argumen ke nilai integral menggunakan mod pembundaran semasa.

Fungsi llrint () dalam C ++ membundarkan argumen ke nilai integral menggunakan mod pembundaran semasa.

Mod pembulatan semasa ditentukan oleh fungsi fesetround(). Ia serupa dengan lrint (), tetapi mengembalikan int panjang dan bukannya panjang panjang.

prototaip llrint () (Seperti standard C ++ 11)

int panjang yang panjang (dua kali ganda x); intllint panjang panjang (apungan x); int panjang yang panjang (panjang ganda x); int panjang yang panjang (T x); // Untuk jenis kamiran

Fungsi llrint () mengambil satu argumen dan mengembalikan nilai jenis panjang panjang int. Fungsi ini ditentukan dalam fail header.

llrint () Parameter

Fungsi llrint () mengambil nilai argumen tunggal untuk dibundarkan.

llrint () Nilai pulangan

Fungsi llrint () membundarkan argumen x ke nilai integral, menggunakan arah pembundaran yang ditentukan oleh fegetround()dan mengembalikan nilai dalam long long int.

Secara lalai, arah pembundaran ditetapkan ke 'to-nearest'.

Arah pembundaran dapat diatur ke nilai lain menggunakan fesetround()fungsi.

Contoh 1: Bagaimana llrint () berfungsi dalam C ++?

 #include #include #include using namespace std; int main() ( // by default, rounding direction is to-nearest i.e. fesetround(FE_TONEAREST) double x = 11.87; long long int result; result = llrint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // mid-way values are rounded off to higher integer x = 11.5; result = llrint(x); cout << "Rounding to-nearest (" << x << ") = " << result << endl; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); x = 11.87; result = llrint(x); cout << "Rounding downward (" << x << ") = " << result << endl; // setting rounding direction to UPWARD fesetround(FE_UPWARD); x = 33.32; result = llrint(x); cout << "Rounding upward (" << x << ") = " << result << endl; return 0; )

Semasa anda menjalankan program, outputnya adalah:

 Membundarkan ke terdekat (11.87) = 12 Membundarkan ke terdekat (11.5) = 12 Membundarkan ke terdekat (11.8699) = 11 Membundarkan ke atas (33.3201) = 34

Contoh 2: fungsi llrint () untuk jenis kamiran

 #include #include #include using namespace std; int main() ( int x = 15; long long int result; // setting rounding direction to DOWNWARD fesetround(FE_DOWNWARD); result = llrint(x); cout << "Rounding downward (" << x << ") = " << result << endl; return 0; ) 

Semasa anda menjalankan program, outputnya adalah:

 Membundarkan ke bawah (15) = 15 

Untuk nilai integral, menerapkan fungsi llrint mengembalikan nilai yang sama dengan input. Oleh itu, ia tidak biasa digunakan untuk nilai integral dalam praktiknya.

Artikel menarik...