0

好的,所以我必须使用 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
4

2 回答 2

2

请注意,sin 和 cos 函数将浮点数或双精度数作为输入参数。所以你尝试这样的事情:

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

cos 函数的工作原理

于 2013-10-09T21:24:27.557 回答
1

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

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

奇数也一样。

于 2013-10-09T21:27:54.213 回答