C ++使用if-else语句来计算sin和cos

时间:2013-10-09 21:16:48

标签: c++ if-statement trigonometry

好的,所以我必须使用if-else语句在C ++中创建一个程序,如果是奇数,则计算输入数字的sin,如果是偶数,则计算数字的cos。我的程序一直在失败,我不知道为什么。有人可以给我一个小费,请问我做错了什么?

这就是我所做的一切(我的程序一直都失败了,所以在解决这个问题之前我不知道下一步该做什么)

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

void main()
{
    const double pi = 3.1415926535897932384626433832795;
    int a;

    cout << "Please type in a 2 digit number : " << endl;
    cin >> a;

    if(a % 2 == 0)
    {
        cout << "The input is" << a << "It is an even number." << endl;
        cout << cos(a) << endl;
    }
    else
    {
        cout << "The input is" << a << "It is an odd number." << endl;
        cout << sin(a) << endl;
    }
} // main

2 个答案:

答案 0 :(得分:2)

小心,sin和cos函数使用float或double作为输入参数。所以你尝试这样的事情:

cout << cos(static_cast<double>(a)) << endl;

How the cos function is working

答案 1 :(得分:1)

您似乎希望程序输入以度为单位,但这是一个问题,因为sincos使用弧度。所以你必须像这样转换

    cout << "The input is" << a << "It is an even number." << endl;
    double radians = (a/180.0)*pi;
    cout << cos(radians) << endl;

奇数也一样。