ln(|sin x|)用C++怎样用matlab编写sin函数

17:12 提问
用java编写函数怎么编呀
用java变一个能够实现sinx cosx e∧x的函数的-程序在线等,用c++也行,
按赞数排序
一个函数只做一件事情,不要把3件不相干的事情写在一起。sin cos pow等java,C++都封装好了。你实在自己要写函数,就再包装下。
double MySin(double x)
return Math.sin(x);
百度一下这三个函数用Java怎么表示,,然后再自己写一个方法把它们封装起来即可
可以参考API中Math的类
java不是有Math类么!你要求的这个类都实现了!
你还是直接用math类比较好,自己写的话,搜一下这3个函数怎么写,把它封装一下就好
double MySin(double x,int type)
if(type==1){
return Math.sin(x);
if(type==2){
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐C++初学者:伪代码怎么写?
伪代码怎么写呢?书上没有介绍很多,网上也搜不到有用的信息。。。哪位可以指点一二~~~另外~~请帮我看看下面问题的伪代码怎么写~~1.编写程序求斐波那契数列的第n项和前n项之和。斐波那契数列是形如 0,1,1,2,3,5,8,13,&&的数列,其通项为:f0=0;f1=1;fn=f(n-1)+F(n-2).2.求解猴子吃桃问题。猴子在第一天摘下若干个桃子,当即就吃了一半,又感觉不过瘾,于是就多吃了一个。以后每天如此,到第十天想吃时,发现就只剩下了一个桃子。试编程计算第一天猴子摘得桃子个数。算法:用一个变量x来描述猴子在某一天所持有的桃子的数目,则猴子前一天所持有的数目是(x+1)*2.&
你这俩问题太简单了,似乎用代码写比伪代码更方便&&
1:用递归比较好理解
& if(n=0) return 0;
& if(n=1) return 1;
& if(n&1) return f(n-1)+f(n-2);
2:应该也是递归吧
& if(n=10) return 1;
& if(n&10) return (f(n+1)+1)*2;
计算 f(1)霸王
已标记为答案
伪代码只是一种算法描述性的语言,它的英文名字是Pseudocode。使用伪代码的目的是为了使被描述的算法可以容易地以任何一种编程语言(Pascal,C,Java,等等)实现。因此,伪代码必须结构清晰、代码简单、可读性好,并且类似自然语言。 它介于自然语言与编程语言之间,但它并不能被编译器直接编译成计算机语言。伪代码只是像流程图一样用在程序设计的初期,帮助写出程序流程。简单的程序一般都不用写流程、写思路,但是复杂的代码,最好还是把流程写下来,总体上去考虑整个功能如何实现。写完以后不仅可以用来作为以后测试,维护的基础,还可用来与他人交流。
在伪代码中,每一条指令占一行(else if 例外,),指令后不跟任何符号(Pascal和C中语句要以分号结尾);书写上的&缩进&表示程序中的分支程序结构。这种缩进风格也适用于if-then-else语句。用缩进取代传统Pascal中的begin和end语句来表示程序的块结构可以大大提高代码的清晰性;同一模块的语句有相同的缩进量,次一级模块的语句相对与其父级模块的语句缩进;
例如:line 1line 2&& sub line 1&& sub line 2&&&& sub sub line 1&&&& sub sub line 2&& sub line 3line 3而在Pascal中这种关系用begin和end的嵌套来表示,& line 1& line 2& begin&&&
sub line 1&&& sub line 2&&& begin&&&&& sub sub line 1&&&&& sub sub line 2&&&&&&&&&&&&&&&& sub
line 3&& line 3在C中这种关系用{ 和 } 的嵌套来表示,& line 1& line 2& {&&&& sub line 1&&&& sub line 2&&&& {&&&&&&& sub sub line 1&&&&&&&
sub sub line 2&&&&& }&&&& sub line 3& }& line 3& 在伪代码中,通常用连续的数字或字母来标示同一即模块中的连续语句,有时也可省略标号。例如:& 1. line 1& 2. line 2&&&& a. sub line 1&&&& b. sub line
2&&&&&& 1. sub sub line 1&&&&&& 2. sub sub line 2&&&& c. sub line 3& 3. line 3符号△后的内容表示注释;在伪代码中,变量名和保留字不区分大小写,这一点和Pascal相同,与C或C++不同;在伪代码中,变量不需声明,但变量局部于特定过程,不能不加显示的说明就使用全局变量;赋值语句用符号&表示,x&exp表示将exp的值赋给x,其中x是一个变量,exp是一个与x同类型的变量或表达式(该表达式的结果与x同类型);多重赋值i&j&e是将表达式e的值赋给变量i和j,这种表示与j&e和i&e等价。例如:&&
x&y&& x&20*(y+1)&& x&y&30以上语句用Pascal分别表示为:& x :=& x := 20*(y+1);& x := 30; y := 30;以上语句用C分别表示为:& x =& x = 20*(y+1);& x = y = 30;选择语句用if-then-else来表示,并且这种if-then-else可以嵌套,与Pascal中的if-then-else没有什么区别。例如:&
if (Condition1)&&& then [ Block 1 ]&&& else if (Condition2)&&&&&&&&&& then [ Block 2 ]&&&&&&&&&& else [ Block 3 ]& 循环语句有三种:while循环、repeat-until循环和for循环,其语法均与Pascal类似,只是用缩进代替begin
- end;例如:& 1. x & 0& 2. y & 0& 3. z & 0& 4. while x & N&&&&&& 1. do x & x + 1&&&&&& 2.&&& y & x + y&&&&&&
3.&&& for t & 0 to 10&&&&&&&&&&&&&& 1. do z & ( z + x * y ) / 100&&&&&&&&&&&&&& 2.&&&
repeat&&&&&&&&&&&&&&&&&&&&&& 1. y & y + 1&&&&&&&&&&&&&&&&&&&&&&
2. z & z - y&&&&&&&&&&&&&& 3.&&& until z & 0&&&&&& 4.&&& z & x * y& 5. y & y / 2上述语句用Pascal来描述是:&&
x := 0;&& y := 0;&& z := 0;&& while x & N do&& begin&&&& x := x + 1;&&&& y := x +&&&& for t := 0 to 10 do&&&& begin&&&&&&
z := ( z + x * y ) / 100;&&&&&& repeat&&&&&&&& y := y + 1;&&&&&&&& z := z -&&&&&& until z & 0;&&&&
&&&& z := x *&&&& y := y / 2;上述语句用C或C++来描述是:& x = y = z = 0;& while( z & N )& {&&& x ++;&&& y +=&&& for( t = 0; t & 10; t++ )&&&
{&&&&&& z = ( z + x * y ) / 100;&&&&&& do {&&&&&&&&& y ++;&&&&&&&&& z -=&&&&&&
} while( z &= 0 );&&& }&&& z = x *&&&&&&&&& }& y /= 2;&&& 数组元素的存取有数组名后跟&[下标]&表示。例如A[j]指示数组A的第j个元素。符号& &&用来指示数组中值的范围。例如:A[1&j]表示含元素A[1],
A[2], & , A[j]的子数组;复合数据用对象(Object)来表示,对象由属性(attribute)和域(field)构成。域的存取是由域名后接由方括号括住的对象名表示。例如:数组可被看作是一个对象,其属性有length,表示其中元素的个数,则length[A]就表示数组A中的元素的个数。在表示数组元素和对象属性时都要用方括号,一般来说从上下文可以看出其含义。用于表示一个数组或对象的变量被看作是指向表示数组或对象的数据的一个指针。对于某个对象x的所有域f,赋值y&x就使f[y]=f[x],更进一步,若有f[x]&3,则不仅有f[x]=3,同时有f[y]=3,换言之,在赋值y&x后,x和y指向同一个对象。有时,一个指针不指向任何对象,这时我们赋给他nil。函数和过程语法与Pascal类似。函数值利用
&return (函数返回值)& 语句来返回,调用方法与Pascal类似;过程用 &call 过程名&语句来调用;例如:&& 1. x & t + 10&& 2. y & sin(x)&& 3. call CalValue(x,y)参数用按值传递方式传给一个过程:被调用过程接受参数的一份副本,若他对某个参数赋值,则这种变化对发出调用的过程是不可见的。当传递一个对象时,只是拷贝指向该对象的指针,而不拷贝其各个域。a)&&&
伪代码表示的算法用传统的流程图和N-S图表示算法直观易懂,但画起来比较费事,在设计一个算法时,可能要反复修改,而修改流程图是比较麻烦的。因此,流程图适宜于表示一个算法,但在设计算法过程中使用不是很理想的(尤其是当算法比较复杂、需要反复修改时)。为了设计算法时方便,常用一种称为伪代码的工具。伪代码是用介于自然语言和计算机语言之间的文字和符号来描述算法。它如同一篇文章一样,自上而下地写下来。每一行(或几行)表示一个基本操作。它不用图形符号,因此书写方便、格式紧凑,易懂也便于向计算机语言算法(即程序)过渡。可以用英文、汉字、中英文混合表示算法,以便于书写和阅读为原则。用伪代码写算法并无固定的、严格的语法规则,只要把意思表达清楚,并且书写的格式要写成清晰易读的形式。Smile service,common progress!
伪代码只是一种算法描述性的语言,它的英文名字是Pseudocode。使用伪代码的目的是为了使被描述的算法可以容易地以任何一种编程语言(Pascal,C,Java,等等)实现。因此,伪代码必须结构清晰、代码简单、可读性好,并且类似自然语言。 它介于自然语言与编程语言之间,但它并不能被编译器直接编译成计算机语言。伪代码只是像流程图一样用在程序设计的初期,帮助写出程序流程。简单的程序一般都不用写流程、写思路,但是复杂的代码,最好还是把流程写下来,总体上去考虑整个功能如何实现。写完以后不仅可以用来作为以后测试,维护的基础,还可用来与他人交流。
在伪代码中,每一条指令占一行(else if 例外,),指令后不跟任何符号(Pascal和C中语句要以分号结尾);书写上的&缩进&表示程序中的分支程序结构。这种缩进风格也适用于if-then-else语句。用缩进取代传统Pascal中的begin和end语句来表示程序的块结构可以大大提高代码的清晰性;同一模块的语句有相同的缩进量,次一级模块的语句相对与其父级模块的语句缩进;
例如:line 1line 2&& sub line 1&& sub line 2&&&& sub sub line 1&&&& sub sub line 2&& sub line 3line 3而在Pascal中这种关系用begin和end的嵌套来表示,& line 1& line 2& begin&&&
sub line 1&&& sub line 2&&& begin&&&&& sub sub line 1&&&&& sub sub line 2&&&&&&&&&&&&&&&& sub
line 3&& line 3在C中这种关系用{ 和 } 的嵌套来表示,& line 1& line 2& {&&&& sub line 1&&&& sub line 2&&&& {&&&&&&& sub sub line 1&&&&&&&
sub sub line 2&&&&& }&&&& sub line 3& }& line 3& 在伪代码中,通常用连续的数字或字母来标示同一即模块中的连续语句,有时也可省略标号。例如:& 1. line 1& 2. line 2&&&& a. sub line 1&&&& b. sub line
2&&&&&& 1. sub sub line 1&&&&&& 2. sub sub line 2&&&& c. sub line 3& 3. line 3符号△后的内容表示注释;在伪代码中,变量名和保留字不区分大小写,这一点和Pascal相同,与C或C++不同;在伪代码中,变量不需声明,但变量局部于特定过程,不能不加显示的说明就使用全局变量;赋值语句用符号&表示,x&exp表示将exp的值赋给x,其中x是一个变量,exp是一个与x同类型的变量或表达式(该表达式的结果与x同类型);多重赋值i&j&e是将表达式e的值赋给变量i和j,这种表示与j&e和i&e等价。例如:&&
x&y&& x&20*(y+1)&& x&y&30以上语句用Pascal分别表示为:& x :=& x := 20*(y+1);& x := 30; y := 30;以上语句用C分别表示为:& x =& x = 20*(y+1);& x = y = 30;选择语句用if-then-else来表示,并且这种if-then-else可以嵌套,与Pascal中的if-then-else没有什么区别。例如:&
if (Condition1)&&& then [ Block 1 ]&&& else if (Condition2)&&&&&&&&&& then [ Block 2 ]&&&&&&&&&& else [ Block 3 ]& 循环语句有三种:while循环、repeat-until循环和for循环,其语法均与Pascal类似,只是用缩进代替begin
- end;例如:& 1. x & 0& 2. y & 0& 3. z & 0& 4. while x & N&&&&&& 1. do x & x + 1&&&&&& 2.&&& y & x + y&&&&&&
3.&&& for t & 0 to 10&&&&&&&&&&&&&& 1. do z & ( z + x * y ) / 100&&&&&&&&&&&&&& 2.&&&
repeat&&&&&&&&&&&&&&&&&&&&&& 1. y & y + 1&&&&&&&&&&&&&&&&&&&&&&
2. z & z - y&&&&&&&&&&&&&& 3.&&& until z & 0&&&&&& 4.&&& z & x * y& 5. y & y / 2上述语句用Pascal来描述是:&&
x := 0;&& y := 0;&& z := 0;&& while x & N do&& begin&&&& x := x + 1;&&&& y := x +&&&& for t := 0 to 10 do&&&& begin&&&&&&
z := ( z + x * y ) / 100;&&&&&& repeat&&&&&&&& y := y + 1;&&&&&&&& z := z -&&&&&& until z & 0;&&&&
&&&& z := x *&&&& y := y / 2;上述语句用C或C++来描述是:& x = y = z = 0;& while( z & N )& {&&& x ++;&&& y +=&&& for( t = 0; t & 10; t++ )&&&
{&&&&&& z = ( z + x * y ) / 100;&&&&&& do {&&&&&&&&& y ++;&&&&&&&&& z -=&&&&&&
} while( z &= 0 );&&& }&&& z = x *&&&&&&&&& }& y /= 2;&&& 数组元素的存取有数组名后跟&[下标]&表示。例如A[j]指示数组A的第j个元素。符号& &&用来指示数组中值的范围。例如:A[1&j]表示含元素A[1],
A[2], & , A[j]的子数组;复合数据用对象(Object)来表示,对象由属性(attribute)和域(field)构成。域的存取是由域名后接由方括号括住的对象名表示。例如:数组可被看作是一个对象,其属性有length,表示其中元素的个数,则length[A]就表示数组A中的元素的个数。在表示数组元素和对象属性时都要用方括号,一般来说从上下文可以看出其含义。用于表示一个数组或对象的变量被看作是指向表示数组或对象的数据的一个指针。对于某个对象x的所有域f,赋值y&x就使f[y]=f[x],更进一步,若有f[x]&3,则不仅有f[x]=3,同时有f[y]=3,换言之,在赋值y&x后,x和y指向同一个对象。有时,一个指针不指向任何对象,这时我们赋给他nil。函数和过程语法与Pascal类似。函数值利用
&return (函数返回值)& 语句来返回,调用方法与Pascal类似;过程用 &call 过程名&语句来调用;例如:&& 1. x & t + 10&& 2. y & sin(x)&& 3. call CalValue(x,y)参数用按值传递方式传给一个过程:被调用过程接受参数的一份副本,若他对某个参数赋值,则这种变化对发出调用的过程是不可见的。当传递一个对象时,只是拷贝指向该对象的指针,而不拷贝其各个域。a)&&&
伪代码表示的算法用传统的流程图和N-S图表示算法直观易懂,但画起来比较费事,在设计一个算法时,可能要反复修改,而修改流程图是比较麻烦的。因此,流程图适宜于表示一个算法,但在设计算法过程中使用不是很理想的(尤其是当算法比较复杂、需要反复修改时)。为了设计算法时方便,常用一种称为伪代码的工具。伪代码是用介于自然语言和计算机语言之间的文字和符号来描述算法。它如同一篇文章一样,自上而下地写下来。每一行(或几行)表示一个基本操作。它不用图形符号,因此书写方便、格式紧凑,易懂也便于向计算机语言算法(即程序)过渡。可以用英文、汉字、中英文混合表示算法,以便于书写和阅读为原则。用伪代码写算法并无固定的、严格的语法规则,只要把意思表达清楚,并且书写的格式要写成清晰易读的形式。Smile service,common progress!
那个。。。LS的一大段我有在网上搜到。。。 我目前只想要C++的,不要从网上复制过来,别那么专业。。。简单易懂的告诉我吧。。。咱只是初学者= =
说简单点儿,其实就是一段程序的逻辑思维过程,它用很简单的语言来描述程序实现的基本过程。Smile service,common progress!
帮我举个例子吧~~
我上面第一个程序的代码是:
#include &iostream&
int main()
&int f0=0;
&int f1=1;
&int sum=0;
&int fn,n;
&cout&&&请输入待计算数列的项数:&;
&switch(n)
&&cout&&&f(&&&n&&&)=&&&f0&&
&&cout&&&sum(&&&n&&&)=&&&sum&&&&&
&&cout&&&f(&&&n&&&)=&&&f1&&
&&cout&&&sum(&&&n&&&=)&&&f0+f1&&&&
&&for(int i=2;i&=n;i++)
&&&fn=f0+f1;
&&&sum=sum+
&&cout&&&f(&&&n&&&)=&&&fn&&
&&cout&&&sum(&&&n&&&=)&&&sum&&
&return 0;
第二个程序的代码是:
求解猴子吃桃问题。猴子在第一天摘下若干个桃子,当即就吃了一半,又感觉不过瘾,于是就多吃了一个。以后每天如此,到第十天想吃时,
发现就只剩下了一个桃子。试编程计算第一天猴子摘得桃子个数。
用一个变量x来描述猴子在某一天所持有的桃子的数目,则猴子前一天所持有的数目是(x+1)*2.
#include &iostream&
int main()
&for(int day=9;day&0;day--)
&&x=(x+1)*2;
&cout&&&猴子第一天摘得桃子数为:&&&x&&
&return 0;
可以直接用汉语写!逻辑清晰就达到伪码的目标了!
你这俩问题太简单了,似乎用代码写比伪代码更方便&&
1:用递归比较好理解
& if(n=0) return 0;
& if(n=1) return 1;
& if(n&1) return f(n-1)+f(n-2);
2:应该也是递归吧
& if(n=10) return 1;
& if(n&10) return (f(n+1)+1)*2;
计算 f(1)霸王
已标记为答案
好的,谢谢你们啦~~~
我是学信息安全的,现在才刚刚学C++,以后应该会碰到更多的方法的。不知道要学到什么程度啊。。。C++中cos,sin,asin,acos这些三角函数操作的是弧度,而非角度(转)
C++中cos,sin,asin,acos这些三角函数操作的是弧度,而非角度,
你需要把角度转化为弧度.
弧度=角度*Pi/180;
比如对边和邻边分别为a,b&
设角度为x,则&
x=atan(a/b);&
其中x为弧度制&
如需转换为角度值,则x*180/3.1415
//计算旋转角度&& {弧度=角度*Pi/180}
{两点间距离公式 根号下(|X1-X2|的平方+|Y1-Y2|的平方)}
angle_tanValue=sqrt(pow(point.x-point.x,2)+pow(point.y-Right_Top_Point.y,2))/
sqrt(pow(Turn_Point_L[1].x-point.x,2)+pow(Turn_Point_L[1].y-Right_Top_Point.y,2));
&& //求出tan 与 sin 的弧度
angle_atanValue=atan(angle_tanValue);
angle_sinValue=sin(angle_atanValue);
&& //弧度转换成角度
angle=angle_atanValue*180/3.1415;
&& //取绝对值
&& angle=fabs(angle);
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。用C++编写计算器程序doc下载_爱问共享资料
用C++编写计算器程序.doc
用C++编写计算器程序.doc
用C++编写计算器程序.doc
简介:本文档为《用C++编写计算器程序doc》,可适用于高等教育领域,主题内容包含用C编写计算器程序《VC可视化程序设计》课程论文王井泉学院计算机与通信工程专业计算机科学与技术班级计班学号学生姓名王井泉课程成绩完成日期年月日王井泉符等。
侵权或盗版
*若权利人发现爱问平台上用户上传内容侵犯了其作品的信息网络传播权等合法权益时,请按照平台要求书面通知爱问!
赌博犯罪类
在此可输入您对该资料的评论~
添加成功至
资料评价:}

我要回帖

更多关于 sin2x 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信