Maison > développement back-end > C++ > le corps du texte

Programme C++ pour trouver l'arc sinus avec une valeur donnée

WBOY
Libérer: 2023-09-08 09:33:02
avant
889 Les gens l'ont consulté

Programme C++ pour trouver larc sinus avec une valeur donnée

En trigonométrie, on utilise le plus souvent plusieurs rapports : sinus, cosinus, tangente et quelques autres. Dans une perspective donnée, ces ratios peuvent être calculés. Cependant, si nous disposons de valeurs de rapport, nous pouvons également calculer l’angle à l’aide de fonctions trigonométriques inverses.

Dans cet article, nous verrons comment obtenir l'angle en radians à partir de la valeur sinusoïdale via la méthode arcsinus (arcsine) en C++.

Fonction asin()

La méthode

asin() est utilisée pour calculer les angles à l'aide de la fonction sinus trigonométrique inverse. Cette fonction existe dans la bibliothèque standard C++. Nous devons importer la bibliothèque cmath pour utiliser cette méthode. Cette fonction renvoie l'angle en radians en prenant une valeur sinusoïdale en entrée. Ce qui suit utilise une syntaxe simple -

Grammaire

#include < cmath >
asin( <sine value> )
Copier après la connexion

La valeur sinusoïdale doit être comprise entre [-1 et +1] inclus. Sinon, une erreur de domaine est générée et Not-A-Number (nan) est renvoyé. La plage de la valeur de retour est $mathrm{[-:frac{pi}{2},frac{pi}{2}]}$ (tous deux inclus)

Algorithme

  • Prenez la valeur sinusoïdale x comme entrée
  • Utilisez asin(x) pour calculer sin−1(x)
  • Retour des résultats.

Exemple

#include <iostream>
#include <cmath>
using namespace std;

float solve( float x ) {
   float answer;
   answer = asin( x );
   return answer;
}

int main()
{
   float angle, ang_deg;
   angle = solve( 0.7071067 );
   ang_deg = angle * 180 / 3.14159;

   cout << "The angle (in radian) for given sine value 0.7071067 is: " << angle << " = " << ang_deg << " (in degrees)" << endl;

   angle = solve( 0.866025 );
   ang_deg = angle * 180 / 3.14159;

   cout << "The angle (in radian) for given sine value 0.866025 is: " << angle << " = " << ang_deg << " (in degrees)" << endl;

   angle = solve( 1 );
   ang_deg = angle * 180 / 3.14159;

   cout << "The angle (in radian) for given sine value 1 is: " <<; angle << " = " << ang_deg << " (in degrees)" << endl;

   angle = solve( 0.5 );
   ang_deg = angle * 180 / 3.14159;

   cout << "The angle (in radian) for given sine value 0.5 is: " << angle << " = " << ang_deg << " (in degrees)" << endl;
}
Copier après la connexion

Sortie

The angle (in radian) for given sine value 0.7071067 is: 0.785398 = 45 (in degrees)
The angle (in radian) for given sine value 0.866025 is: 1.0472 = 60 (in degrees)The angle (in radian) for given sine value 1 is: 1.5708 = 90.0001 (in degrees)
The angle (in radian) for given sine value 0.5 is: 0.523599 = 30 (in degrees)
Copier après la connexion

Ici, la fonction asin() prend une valeur sinusoïdale et renvoie l'angle au format radian. Ici, nous utilisons la formule suivante pour convertir la sortie des radians en degrés

$$mathrm{theta_{deg}:=:theta_{rad}:times:frac{180}{pi}}$$

Conclusion

Pour effectuer des opérations trigonométriques inverses basées sur des valeurs sinusoïdales, nous utilisons la fonction asin() de la bibliothèque cmath. Cette fonction prend une valeur sinusoïdale en entrée et renvoie l'angle donné en radians. Dans les anciennes versions de C/C++, le type de retour était double, mais les versions ultérieures de C++ utilisaient des surcharges supplémentaires de float et long-double. Lorsqu'une valeur entière est passée en argument, elle convertit l'argument d'entrée en double et appelle la méthode asin() correspondant à l'argument de type double.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal