首頁 > 後端開發 > C++ > 主體

C++程式以給定值找到反正弦

WBOY
發布: 2023-09-08 09:33:02
轉載
891 人瀏覽過

C++程式以給定值找到反正弦

在三角學中,我們最常使用幾個比率:正弦、餘弦、正切和其他一些比率。從給定的角度,可以計算這些比率。但是,如果我們有比率值,我們也可以使用反三角函數來計算角度。

在本文中,我們將討論如何透過 C 中的反正弦(反正弦)方法從正弦值取得弧度角。

asin() 函數

asin() 方法用於使用反三角正弦函數計算角度。此函數存在於 C 標準函式庫中。我們需要導入 cmath 函式庫才能使用此方法。此函數透過將正弦值作為輸入來傳回以弧度為單位的角度。以下使用簡單的語法 -

文法

#include < cmath >
asin( <sine value> )
登入後複製

正弦值必須在 [-1 到 1] 範圍內(包括兩者)。否則,將引發域錯誤,並傳回 Not-A-Number (nan)。傳回值的範圍為 $\mathrm{[-\:\frac{\pi}{2},\frac{\pi}{2}]}$(兩者都包含在內)

演算法

  • 以正弦值 x 作為輸入
  • 使用 asin( x ) 計算 sin−1(x)
  • 傳回結果。

範例

#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;
}
登入後複製

輸出

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)
登入後複製

此處 asin() 函數採用正弦值並傳回弧度格式的角度。這裡我們使用以下公式將輸出從弧度轉換為度數

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

結論

為了根據正弦值執行反三角運算,我們使用 cmath 函式庫中的 asin() 函數。此函數將正弦值作為輸入,並傳回以弧度為單位的給定角度。在舊版的 C / C 中,傳回型別是 double,但後來的 C 版本另外使用了 float 和 long-double 的重載形式。當整數值作為參數傳遞時,它會將輸入參數轉換為 double 並呼叫與 double 類型參數對應的 asin() 方法。

以上是C++程式以給定值找到反正弦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板