fps遊戲 三角函式 模擬

2021-09-16 20:35:24 字數 877 閱讀 4067

題目描述

fps遊戲是第一人稱射擊遊戲。這類遊戲有乙個很重要的技巧也是基本功之一的,是壓槍。

為了模擬真實環境,在遊戲裡你每開一槍,槍口都會往上和左右浮動。

如果你想使槍口在某個範圍內,為了提高精準度,你就必須壓槍。

而且每把槍的後坐力不同和有效打擊距離不同,就需要對每把槍都很熟悉,能很快的計算出在多遠距離外開槍槍口會往上和左右浮動多少。

現在只考慮槍的垂直浮動。

假設在d公尺外有乙個靶子,初始槍口正對靶心的圓心,靶心是個半徑為r公尺的圓,現在你要射擊c次。(你可以把槍看成乙個點)。

為了省力,要使壓槍次數最少。

只有當在靶上的射擊位置在靶心之外時才需要壓槍。

每次壓槍,槍口都會回到上次的射擊位置。

每次開槍最多只能壓一次槍,不能連續壓槍。

輸入每個輸入檔案只包含一組資料。

包含3個正整數d,r,c和1個實數a(d,r,c意義如上文所述,a是每次開槍,槍口向上浮動的角度)。

(1 <= d,r <= 100,0 <= c <= 1000000,0 <= a < 90)

輸出乙個整數,表示壓槍的最少次數。

樣例輸入

複製樣例資料

10 1 10 3

樣例輸出

8題目其實並不難,但是需要用到三角函式求角度,這裡用到了角度的轉換,從第一槍開始,當超出半徑範圍之後每一槍都需要壓槍,所以在超出範圍後跳出迴圈然後一減就是結果了。

ac**

#include#include#includeusing namespace std;

double pi = 4.0 * atan(1);

int main()

cout

}

常見三角函式與反三角函式

16341019 資料科學與計算機學院 toc 三角函式公式 反三角函式公式 簡單函式影象 1三角函式公式 兩角和公式 sin a b sinacosb cosasinb sin a b sinacosb cosasinb cos a b cosacosb sinasinb cos a b cosa...

常見三角函式與反三角函式

16341019 資料科學與計算機學院 toc 三角函式公式 反三角函式公式 簡單函式影象 1三角函式公式 兩角和公式 sin a b sinacosb cosasinb sin a b sinacosb cosasinb cos a b cosacosb sinasinb cos a b cosa...

三角函式與反三角函式的使用

假設該三角形是直角三角形。那麼 依照數學基礎是 sin b b c 其中b是邊b對應的角 但是在c c 程式上面稍微有點不同 那就是弧度制與角度制的區分 先說三角函式,在 程式設計裡面 舉sin 為例 sin 弧度制 只有裡面放弧度制,才能算的精準,假設要算45 的sin值 那麼對45 進行轉換為弧...