C++练习:使用类的继承计算三角函数的值

使用类的继承计算三角函数sin(x)的值

在这里插入图片描述

#include<iostream>
#include<iomanip>
#define pi 3.14159265358979
using namespace std;
class Trigonometric
{
protected:
	 double arc;
	 double value;
public:
	Trigonometric(int t)
	{
		value=0;
		arc=(t%360<180)?(t%360*pi/180):(t%180*pi/-180);
	}
};
class Sine:public Trigonometric
{
public:
	Sine(double d):Trigonometric(d)	{};
	double f1(double x,int n) 
	{
		for(int i=1;i<n;i++)
			x*=x;
		return x;
	}
	double f2(int n)
	{
		double N=1;
		for(;n>=1;n--)
			N*=n;
		return N;
	}
	void function()
	{
		
		double item=arc;
		int n=1,sign=1;
		value=arc;
		
		while(int(item*100000))
		{
			item=0;
			n+=2;
			sign=-sign; 
			item=f1(arc,n)/f2(n)*sign; 
			value+=item;
		} ;
	};
	void show()
		{
			cout<<"sin("<<arc<<")="<<setprecision(1)<<value<<endl;
		};
};
int main()
{
	double a;
	cout<<"请输入度数:";
	cin>>a;
	Sine sin(a);
	sin.function();
	sin.show();
	return 0;
}
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值