繁体   English   中英

C ++程序来构建三角计算器

[英]C++ program to build a Trigonometric Calculator

我是C ++编程的新手。 我想使用while循环编写一个程序,该程序显示sin,cos和Tan的三角表。 它以度为单位的角度相差5,并显示结果。 这就是我尝试过的

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

int main()
{
    int num;
    cout<< "Angle   Sin     Cos     Tan"<<endl;
    cout<< "..........................."<<endl;
    num=0;

    while (num<=360)
    {
        cout <<setw(3)<<num<<"    "
            <<setw(3)<<setprecision(3)<<sin(num)<<"    "
            <<setw(3)<<setprecision(3)<<cos(num)<<"    "
            <<setw(5)<<setprecision(3)<<tan(num)<<endl;
        num=num+5;
    }
}

不幸的是,我无法在while循环中将弧度更改为度,并且即使对于弧度,显示效果也不理想。 我该如何解决?

要将度转换为辐射,必须乘以pi并除以180.0

#define M_PI 3.14159265358979323846    

int num = 0;
while (num<=360)
{
    double numRad = num * M_PI/180.0;

    std::cout <<std::setw(3)<<num<<"    "
        <<std::setprecision(3)<<std::fixed
        <<std::setw(6)<< std::sin( numRad ) <<"    "
        <<std::setw(6)<< std::cos( numRad ) <<"    ";
    if ( num != 90 && num != 270 )
        std::cout<<std::setw(6)<< std::tan( numRad ) <<std::endl;
    else
        std::cout<< "infinitely" <<std::endl;

    num=num+5;
}

要使用常量M_PI请参见如何在C ++中使用PI常量

要将度数转换为弧度,请使用numRad = M_PI / 180.0 ,其中M_PI应该是一个常数pi,其值保持od Pi。 如果您没有在头文件中定义这样的常量,请自己定义它,例如#define PI 3.14159265

函数sin,cos和tan总是需要以弧度为单位的参数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM