# C++ program to build a trigonometric calculator

In this tutorial, we are going to make a Trigonometric Calculator using C++. Here, we will calculate basic trigonometric functions and their inverse and it can take input from users in degree as well as in radian.

Algorithm for creating the program

• We will take input as a whole string as “sin 90” and will give output
• We will create a user-defined function to take out ”90″ from the string.
• Then, we will give it as an argument to the pre-defined trigonometric function.
• We will use switch-case to compare the string to give output accordingly

## C++ Code for trigonometric calculator

```#include<iostream>
#include<cmath>

using namespace std;

const float pie = 3.141;
#define degree(x) (x*pie)/180

float input(int m,char ch[20])
{
int i=3,j=0; char temp[10];
while(ch[i] !='\0')
{
if(ch[i]==' ') {i++; break;}
i++;
}
while(ch[i]!='\0')
{
temp[j]=ch[i];
j++;i++;
}
if(m==1) return degree(atoi(temp));
else if(m==2) return atoi(temp);
else return 0;
}

int main()
{
int m; char ch[20];

cout<<"*************** Welcome To Trignometric Calculater ***************";
cout<<"\nChoose the Input MODE:\n1) Degree\n2) Radian\n";
cin>>m;
if(m<1&&m>2)
{
cout<<"Invalid Choice ! Choose again\n";
cin>>m;
}
cout<<"\nEnter the input as 'sin 90' and 'asin 0.5' for invrse and 'exit' to exit:\n";
while(1){
cout<<"\nInput: ";
gets(ch);
if(ch[0]=='e') exit(0);
switch(ch[0])
{
case 's': cout<<"Output: "<<sin(input(m,ch));
break;
case 'c': cout<<"Output: "<<cos(input(m,ch));
break;
case 't': cout<<"Output: "<<tan(input(m,ch));
break;
case 'a': switch(ch[1])
{
case 's': cout<<"Output: "<<sin(input(m,ch));
break;
case 'c': cout<<"Output: "<<cos(input(m,ch));
break;
case 't': cout<<"Output: "<<tan(input(m,ch));
break;
};
break;
default: cout<<"Invalid Input! Retry";
};
}
return 0;
}

```

## Pre-defined function used to build a trigonometric calculator

• atio(): This function converts a string into an integer.

Output:

```********** Welcome To Trignometric Calculater **********
Choose the Input MODE:
1) Degree