您的位置:首页 > 其它

手算开方 以及C开方,C计算正切值

2013-03-15 19:01 162 查看
手算开方是我们初中时期就学习的知识,以前学习过现在复习下。

以√200 为列

一般我们以前得出的结论是:10 √2

如今以C为列,不可能显示这样的方式,所以要有详细的计算方式,如下:

以个位开始两为为一个断,200=2,00,后面有小数点的部分没计算一位曾加两个0

1.用除法运算,以一个数的平方为主,1*1=1,2*2=4,把200中的2提取出来进行计算,1<2<4 所以选择1,余数为1

2.拿出两个零则被除数为100,最麻烦的就是怎么去定义一个除数,下一位除数总是等会前面的商乘以20+试商,前面的商为1,则除数=(1*20+x)*x

 x代表的是试商,即(1*20+4)*4=96<=100,则试的结果是4,则余数是100-96=4

3.又拿出两个0,则被除数是400,定义一个除数,除数=(14*20+x)*x 试商=(14*20+1)*1,即(14*20+1)*1=281<=400测试结果为1,则余数

 400-281=119,记住14是怎么来的,是前面所有的商

4.又拿出两个0,则被除数是11900,定义一个除数,除数=(141*20+x)*x 试商=(141*20+4)*4,即(14*20+4)*4=281<=11312测试结果为4

就以截取小数点后面两位,结果=14.14

C的计算方式

#include <stdio.h>
#include <math.h>
#define RAD_TO_DEG (180/(4*atan(1)))  //弧度计算成度的方法
void main(){
int x=10;
int y=10;
double magnitude=0;
double angle=0;
magnitude=sqrt(x*x+y*y); //200开方
angle=RAD_TO_DEG * atan2(x,y); //计算正切值
printf("%f /t %f",magnitude,angle);
}


掩饰结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐