acos
, acosf
, acosl
Menghitung arccosine.
Sintaks
double acos( double x );
float acosf( float x );
long double acosl( long double x );
#define acos(X) // Requires C11 or higher
float acos( float x ); // C++ only
long double acos( long double x ); // C++ only
Parameter
x
Nilai antara -1 dan 1, untuk menghitung arkakosinus (kosinus terbalik).
Nilai hasil
Fungsi mengembalikan acos
arkakosinus x
dalam rentang 0 hingga radian π.
Secara default, jika x
kurang dari -1 atau lebih besar dari 1, acos
mengembalikan tidak terbatas.
Input | Pengecualian SEH | Pengecualian _matherr |
---|---|---|
± INF | INVALID |
_DOMAIN |
± QNaN, IND | tidak ada | _DOMAIN |
|x| > 1 |
INVALID |
_DOMAIN |
Keterangan
Karena C++ memungkinkan kelebihan beban, Anda dapat memanggil kelebihan beban acos
yang mengambil dan mengembalikan float
dan long double
jenis. Dalam program C, kecuali Anda menggunakan <tgmath.h>
makro untuk memanggil fungsi ini, acos
selalu mengambil dan mengembalikan double
.
Jika Anda menggunakan acos
makro dari <tgmath.h>
, jenis argumen menentukan versi fungsi mana yang dipilih. Lihat Matematika generik jenis untuk detailnya.
Secara default, status global fungsi ini dicakup ke aplikasi. Untuk mengubah perilaku ini, lihat Status global di CRT.
Persyaratan
Rutin | Header yang diperlukan | Header opsional |
---|---|---|
acos , acosf , acosl |
<math.h> |
<errno.h> |
acos makro |
<tgmath.h> |
Contoh
Program ini meminta nilai dalam rentang -1 hingga 1. Nilai input di luar rentang ini menghasilkan _DOMAIN
pesan kesalahan. Jika nilai yang valid dimasukkan, program mencetak arkasinus dan arkakosinus dari nilai tersebut.
// crt_asincos.c
// arguments: 0
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
int main( int ac, char* av[] )
{
double x,
y;
errno_t err;
// argument checking
if (ac != 2)
{
fprintf_s( stderr, "Usage: %s <number between -1 and 1>\n",
av[0]);
return 1;
}
// Convert argument into a double value
if ((err = sscanf_s( av[1], "%lf", &x )) != 1)
{
fprintf_s( stderr, "Error converting argument into ",
"double value.\n");
return 1;
}
// Arcsine of X
y = asin( x );
printf_s( "Arcsine of %f = %f\n", x, y );
// Arccosine of X
y = acos( x );
printf_s( "Arccosine of %f = %f\n", x, y );
}
Arcsine of 0.000000 = 0.000000
Arccosine of 0.000000 = 1.570796
Baca juga
Dukungan matematika dan titik mengambang
asin
, asinf
, asinl
atan
, atanf
, atanl
, atan2
, atan2f
, atan2l
cos
, cosf
, cosl
_matherr
sin
, sinf
, sinl
tan
, tanf
, tanl
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk