c语言有cot三角函数吗,c/c++ 实现三角函数(不使用库函数) sin/cos/tan/cot
c/c++ 实现三角函数(不使用库函数) sin/cos/tan/cot
#include
#include
#include
constexpr auto PI = 3.1415926;
int menu_select() {
int select;
std::cout << "-------Welcome to Snow Calculator-------" << std::endl;
std::cout << " 1. sin x " << std::endl;
std::cout << " 2. cos x " << std::endl;
std::cout << " 3. tan x " << std::endl;
std::cout << " 4. cot x " << std::endl;
std::cout << " 5. Clean screen " << std::endl;
std::cout << " 0. to quit " << std::endl;
std::cout << "----------------------------------------" << std::endl;
std::cin >> select;
return select;
}
double inputtrans(void) {
double x;
std::cout << "Please input x: " << std::endl;
std::cin >> x;
while (x >= 360.0)
{
x -= 360.0;
}
return (x * PI / 180.0);
}
double factorial(double n) {
if (n <= 1) {
return n;
}
else {
return n * factorial(n - 1);
}
}
//下面为求绝对值函数
double myabs(double num1)
{
return((num1 > 0) ? num1 : -num1);
}
//下面为求sin(x)的值
double snowsin(double num2)
{
int i = 1, negation = 1;//取反
double sum;
double index = num2;//指数
double Factorial = 1;//阶乘
double TaylorExpansion = num2;//泰勒展开式求和
do
{
Factorial = Factorial * ((__int64)i + 1) * ((__int64)i + 2);//求阶乘
index *= num2 * num2;//求num2的次方
negation = -negation;//每次循环取反
sum = index / Factorial * negation;
TaylorExpansion += sum;
i += 2;
} while (myabs(sum) > 1e-15);
return(TaylorExpansion);
}
double snowcos(double x) {
x = (PI / 2) - x;
return sin(x);
}
double snowtan(double x) {
return (snowsin(x) / snowcos(x));
}
double snowcot(double x) {
return (1 / snowtan(x));
}
int main()
{
double result = 0.0;
double x = 0.0;
int menu = menu_select();
while (menu != 0)
{
switch (menu)
{
case 1:
x = inputtrans();
result = snowsin(x);
std::cout << std::fixed << std::setprecision(5) << "Result = " << result << std::endl;
break;
case 2:
x = inputtrans();
result = snowcos(x);
std::cout << std::fixed << std::setprecision(5) << "Result = " << result << std::endl;
break;
case 3:
x = inputtrans();
result = snowtan(x);
std::cout << std::fixed << std::setprecision(5) << "Result = " << result << std::endl;
break;
case 4:
x = inputtrans();
result = snowcot(x);
std::cout << std::fixed << std::setprecision(5) << "Result = " << result << std::endl;
break;
case 5:
system("cls");
break;
case 0:
break;
default:
std::cout << "Wrong input, please input again!" << std::endl;
break;
}
if (menu == 0) {
break;
}
menu = menu_select();
}
std::cout << "Thank you for using!\nPress any key to exit.\n";
system("pause");
}
汇编语言计算Sin,Cos,Pow函数
填了一下之前的坑.首先是一个题外话,在VS2015中默认汇编代码会使用SSE生成,如果想用FPU编译出FLD,FSTP这些指令,需要设置一下. 项目 >> 属性 >> C/C+ ...
Chartjs 简单使用 ------ 制作sin cos 折线图
Chart.js 一款简单干净的图表工具,基于html5 的Javascript. 可以用来制做条形,扇形,折线,混合等等的强大工具 图表要放在html 的 cancas 标签中
初中知识回顾tan,sin,cos关系
如果K=tan, sin 是X x=k/power(1+k*k,0.5) 开平方 cos是y y=1.0/power(1+k*k,0.5) 开平方 gisoracle总结 ============= ...
javascript: Math.sin() cos() 用法
Math.sin(x) x 的正玄值.返回值在 -1.0 到 1.0 之间: Math.cos(x) x 的余弦值.返回的是 -1.0 到 1.0 之间的数: 这两个函数中的X 都是指 ...
c++中sin,cos,arcsin等和在C/C++中使用pi (π) 值
先 #include 反3角函数有 acos(double),asin(double),atan(double),atan(double,double),返回值 doubl ...
基于语法分析器GOLD Parser开发的数学表达式计算器
最近发现一款文法分析神器,看完官网(http://goldparser.org/)的介绍后感觉很犀利的样子,于是就拿来测试了一番,写了一个数学表达式分析的小程序,支持的数学运算符如下所示:常规运算:+ ...
机器学习:Jupyter Notebook中numpy的使用
一.Jupyter Notebook的魔法命令 # 模块/方法 + ?或者help(模块/方法):查看模块/方法的解释文档: 1)%run # 机械学习中主要应用两个魔法命令:%run.%timeit ...
MuPAD使用总结
MuPAD使用总结 一.打开notebook界面的方法: 二.notebook界面的三种区域 (一).输入区域 输入区域在打开来的时候就有,就是,但是之后如果还想再加,可以点击上方红色框内的图标. 这 ...
(3)ES6解构赋值-对象篇
对象的解构赋值(可以不按顺序,但是key必须一样否则为undefined) //demo1 var {name,age} = { name: "Jewave", age:26 }; ...
随机推荐
CSS之伪元素
1. :first-line 向元素的首行文本添加样式,不必关心首行是元素节点还是文本节点
loadrunner常用函数
1.关联函数:web_reg_save_param("session", "LB=value=", "RB=>", LAST);
埃及分数(codevs 1288)
题目描述 Description 在古埃及,人们使用单位分数的和(形如1/a的, a是自然数)表示一切有理数. 如:2/3=1/2+1/6,但不允许2/3=1/3+1/3,因为加数中有相同的. 对于一 ...
angularJs:动态效果之:显示与隐藏(该例对比了普通赋值,层次赋值,事件的写法对比)
testShowAndHiddern.html
...
Entity Framework - 理清关系 - 基于外键关联的单向一对一关系
注:本文针对的是 Entity Framework Code First 场景. 之前写过三篇文章试图理清Entity Framework中的一对一关系(单相思(单向一对一), 两情相悦(双向一对 ...
套汇问题 Floyd
问题:套汇. 思路:Floyd 代码: #include #include #include #define ...
Driver development
Windows Driver Kit (WDK) https://msdn.microsoft.com/en-us/library/windows/hardware/ff557573(v=vs.85) ...
selenium webdriver启动IE浏览器失败的解决办法
通过selenium webdriver启动IE浏览器失败,报错:selenium.common.exceptions.WebDriverException: Message: Unexpected ...
io 的一些简单说明及使用
io 流简述: i->inputStream(输入流) o->outputStream (输出流) IO流简单来说就是Input和Output流,IO流主要是用来处理设备之间的数据传输, ...
CSS基础【2】:CSS常见属性
CSS常见属性 文字属性 font-style 作用:规定文字样式 格式:font-style: italic; 取值: normal:正常的,默认就是正常的 italic:倾斜的 font-weig ...
c语言有cot三角函数吗,c/c++ 实现三角函数(不使用库函数) sin/cos/tan/cot相关推荐
- 相机校正、张氏标定法、极大似然估计/极大似然参数估计、牛顿法、高斯牛顿法、LM算法、sin/cos/tan/cot
日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) CNN:RCNN.SPPNet.Fast RCNN.Faste ...
- sin cos tan cot公式
在直角三角形中 sin@代表对边比斜边 cos@代表邻边比斜边 tan@代表对边比邻边 cot@代表邻边比对边 同角三角函数的基本关系式 倒数关系: 商的关系: 平方关系: tanα ·cotα=1 ...
- sin cos tan cot sec csc
直角三角形有 对边 邻边 斜边 锐角和 钝角三角形有对边 邻边 正弦(sin):角α的对边比上斜边 余弦(cos):角α的邻边比上斜边 正切(tan):角α的对边比上邻边 余切(cot):角α的 ...
- 三角函数sin cos tan和弧度,度等定义及其相关
在此做一个温习及记录,做一个总结,免得到处找. 正弦.余弦和正切是 三角法 里的主要函数,它们是基于一个 直角三角形而建立的. 英文释义: 正弦 (sine), 余弦 (cosine) 和 正切 (t ...
- python怎么算反三角函数_python弧度制转换 三角函数 反三角函数 双曲 反双曲 sin cos tan asin acos atan asinh acosh atanh atanh2...
前提:import math 函数介绍: degrees(x)将x从弧度转换为度数. radians(x)将x从度数转换为弧度. 例如: >>> import math >&g ...
- python弧度制转换 三角函数 反三角函数 双曲 反双曲 sin cos tan asin acos atan asinh acosh atanh atanh2
前提:import math 函数介绍: degrees(x) 将x从弧度转换为度数. radians(x) 将x从度数转换为弧度. 例如: >>> import math ...
- sin cos tan c语言,sin cos tan在前端的应用
/* 正N边形外角和 = 360 正N边形外角 = 360/n 正N边形内角 = 180 - 360/n 正弦 Math.sin() 直角三角形中 对边和斜边的比值 余弦 Math.cos() 直角三 ...
- Python绘制三角函数图(sin\cos\tan)并标注特定范围
根据我们指定的条件检索函数中的元素 import matplotlib.pyplot as plt import numpy as npa = np.linspace(0, 2 * np.pi, 50 ...
- cos,sina,tan,cot
这些都是三角形的公式. 三角形总之就是一个直角两个锐角. cos就是余弦定理,就是锐角的邻边除以三角形的斜边. sin就是正弦定理,就是锐角的对边除以三角形的斜边. tan就是正切定理,就是锐角的对边 ...
- 高中的三角函数不会计算机,高中三角函数教学常见问题探析.doc
高中三角函数教学常见问题探析.doc 高中三角函数教学常见问题探析 三角函数是目前高中数学课程中较为传统的内容,也是高考数学中的重要考点,学好三角函数不仅是高中阶段的重要任务,也是为大学数学打好基础的 ...
最新文章
- python都能干什么-python都能做什么
- python爬虫教程网-python爬虫入门10分钟爬取一个网站
- BinaryReader 、BinaryWriter是方便用二进制方式读写int,double,string之类的数据
- dojo Quick Start/dojo入门手册--开始使用dojo.js
- VigiBase中搜索和眼病相关的统计数据
- 新浪微博2-找到用户的accessToken
- 关抢占 自旋锁_互斥锁、自旋锁、读写锁、悲观锁、乐观锁的应用场景
- 字节跳动 MySQL 学习笔记火了,完整版开放下载!
- java装箱_Java 装箱 拆箱
- 学习布局——getContentPane() setContentPane()
- 8、RabbitMQ-消息的确认机制(生产者)
- 【手势识别】基于matlab GUI肤色手势识别(带面板)【含Matlab源码 1650期】
- b-tree的索引页总览
- XUI 熟练使用之(五) -----------底部弹出对话框
- java联网游戏_Java实现简易版联网坦克对战小游戏(附源码)
- [文摘20070308]中国历史朝代歌
- PID串口助手的第一部分:串口通信
- Grunt 入门教程一:开始使用Grunt(翻译自官方教程)
- Linux mint cinnamon 64bit 17.3 使用体验(一)
- vue列表的单独展开收起和全部展开收起
热门文章
- 企业erp系统对企业预算和采购环节的作用
- 如何像专业人士一样使用 Google 学术搜索
- 2022微软苏州Software Engineer校招暑期实习生一面
- caffe:将mean.binaryproto文件转化为mean.npy文件
- 苹果账号安全提示问题忘了怎么办?
- UNI-APP_uni-app中设置radio和switch的大小
- 阿里云域名备案域名解析SSL证书申请Nginx代理
- Centos7.6安装Bugzilla5.0.4
- 如何安装.ipa文件
- 计算机桌面文件删除不掉是怎么了,桌面上文件删不掉_桌面上的压缩文件为什么删除不了?...