std:: atan, std:: atanf, std:: atanl
|
Défini dans l'en-tête
<cmath>
|
||
| (1) | ||
|
float
atan
(
float
num
)
;
double
atan
(
double
num
)
;
|
(jusqu'à C++23) | |
|
/*floating-point-type*/
atan ( /*floating-point-type*/ num ) ; |
(depuis C++23)
(constexpr depuis C++26) |
|
|
float
atanf
(
float
num
)
;
|
(2) |
(depuis C++11)
(constexpr depuis C++26) |
|
long
double
atanl
(
long
double
num
)
;
|
(3) |
(depuis C++11)
(constexpr depuis C++26) |
|
Surcharge SIMD
(depuis C++26)
|
||
|
Défini dans l'en-tête
<simd>
|
||
|
template
<
/*math-floating-point*/
V
>
constexpr
/*deduced-simd-t*/
<
V
>
|
(S) | (depuis C++26) |
|
Surcharges supplémentaires
(depuis C++11)
|
||
|
Défini dans l'en-tête
<cmath>
|
||
|
template
<
class
Integer
>
double atan ( Integer num ) ; |
(A) | (constexpr depuis C++26) |
std::atan
pour tous les types à virgule flottante non qualifiés cv comme type du paramètre.
(depuis C++23)
|
S)
La surcharge SIMD effectue un calcul
std::atan
élément par élément sur
v_num
.
|
(depuis C++26) |
|
A)
Des surcharges supplémentaires sont fournies pour tous les types entiers, qui sont traités comme
double
.
|
(depuis C++11) |
Table des matières |
Paramètres
| num | - | valeur à virgule flottante ou entière |
Valeur de retour
If no errors occur, the arc tangent of num ( arctan(num) ) in the range [-| π |
| 2 |
| π |
| 2 |
Si une erreur de plage se produit en raison d'un dépassement inférieur, le résultat correct (après arrondi) est retourné.
Gestion des erreurs
Les erreurs sont signalées comme spécifié dans math_errhandling .
Si l'implémentation prend en charge l'arithmétique à virgule flottante IEEE (IEC 60559),
- Si l'argument est ±0, il est retourné inchangé.
- Si l'argument est +∞, +π/2 est retourné.
- Si l'argument est -∞, -π/2 est retourné.
- Si l'argument est NaN, NaN est retourné.
Notes
POSIX spécifie qu'en cas de dépassement inférieur, num est retourné non modifié, et si cela n'est pas pris en charge, une valeur définie par l'implémentation non supérieure à DBL_MIN , FLT_MIN , et LDBL_MIN est retournée.
Les surcharges supplémentaires ne sont pas requises d'être fournies exactement comme (A) . Elles doivent seulement être suffisantes pour garantir que pour leur argument num de type entier, std :: atan ( num ) ait le même effet que std :: atan ( static_cast < double > ( num ) ) .
Exemple
#include <cmath> #include <iostream> int main() { std::cout << "atan(1) = " << std::atan(1) << '\n' << "4*atan(1) = " << 4 * std::atan(1) << '\n'; // special values std::cout << "atan(Inf) = " << std::atan(INFINITY) << '\n' << "2*atan(Inf) = " << 2 * std::atan(INFINITY) << '\n' << "atan(-0.0) = " << std::atan(-0.0) << '\n' << "atan(+0.0) = " << std::atan(0) << '\n'; }
Sortie :
atan(1) = 0.785398 4*atan(1) = 3.14159 atan(Inf) = 1.5708 2*atan(Inf) = 3.14159 atan(-0.0) = -0 atan(+0.0) = 0
Voir aussi
|
(C++11)
(C++11)
|
calcule l'arc sinus (
arcsin(x)
)
(fonction) |
|
(C++11)
(C++11)
|
calcule l'arc cosinus (
arccos(x)
)
(fonction) |
|
(C++11)
(C++11)
|
arc tangente, utilisant les signes pour déterminer les quadrants
(fonction) |
|
(C++11)
(C++11)
|
calcule la tangente (
tan(x)
)
(fonction) |
|
(C++11)
|
calcule l'arc tangente d'un nombre complexe (
arctan(z)
)
(modèle de fonction) |
|
applique la fonction
std::atan
à chaque élément du valarray
(modèle de fonction) |
|
|
Documentation C
pour
atan
|
|