您的位置:首页 > 编程语言 > Python开发

Python中的弧度转化以及三角函数

2015-08-08 16:29 671 查看
<strong> 37 import math
38 a = int(raw_input("a = "))
39 b = int(raw_input("b = "))
40 c = int(raw_input("c = "))
41 print math.acos((a**2 + b**2 - c**2)/(2 * a * b)) * 180 /math.pi</strong>

这个是实现求一个三角形两角之前的角度;

OK 现在一起看一些基本的知识
知识点1:
Python中math模块实现了许多对浮点数的数学运算函数. 这些函数一般是对平台 C 库中同名函数的简单封装, 所以一般情况下, 不同平台下计算的结果可能稍微地有所不同, 有时候甚至有很大出入  
 函数(方法) 说明 示例
 acos(x) 求x的反余弦(结果是弧度) acos(2.0)等于0.0
 asin(x) 求x的反正弦(结果是弧度 asin(0.0)等于0.0
 atan(x) 求x的反正切(结果是弧度) atan(0.0)等于0.0
 ceil(x) 为x取整,结果是不小于x的最小整数 ceil(9.2)等于10.0

 ceil(-9.8)等于-9.0
 cos(x) 求x的余弦(x是弧度) cos(0.0)等于1.0
 exp(x) 求幂函数e` exp(1.0)等于2.71828 

 exp(2.0)等于7.38906
 fabs(x) 求x的绝对值 fabs(5.1)等于5.1 

 fabs(-5.1)等于5.1
 floor(x) 为x取整,结果是不大于x的最大整数 floor(9.2)等于9.0 

 floor(-9.8)等于-10.0
 fmod(x,y) 求x/y的余数,结果是浮点数 fmod(9.8,4.0)等于1.8
 hypot(x,y) 求直角三角的斜边长度,直边长度为x和y:Sqrt(x2-y2) hypot(3.0,4.0)等于5.0
 log10(x) 求x的对数(以10为底) log10(10.0)等于1.0 

 log10(100.0)等于2.0
 pow(x,y) 求x的y次方(xy) pow(2.7,7.0)等于128.0 

  pow(9.0,0.5)等于3.0
 sin(x) 求x的正弦(x是弧度) sin(0.0)等于0.0
 sqrt(x) 求x的平方根 sqrt(900.0)等于30.0
 tan(x) 求x的正切(x是弧度) tan(0.0)等于0.0
 

  cmath模块包含了一些用于复数运算的函数. cmath模块的函数跟math模块函数基本一致,区别是cmath模块运算的是复数,math模块运算的是数学运算.
>>> cmath.sqrt(-1)

1j

>>> cmath.sqrt(9)

(3+0j)

>>> cmath.sin(1)

(0.8414709848078965+0j)

>>> cmath.log10(100)

(2+0j)
 

知识点2

弧度与角度的关系

一、角的两种单位 

“ 弧度”和“度”是度量角大小的两种不同的单位。就像“米”和“市尺”是度量长度大小的两种不同的单位一样。 

   在flash里规定:在旋转角度(rotation)里的角,以“度”为单位;而在三角函数里的角要
4000
以“弧度”为单位。这个规定是我们首先要记住的!!!例如:rotation2--是旋转“2度”;sin(π/2)--是大小为“π/2弧度”的角的正弦。 

  

     二、弧度的定义 

     所谓“弧度的定义”就是说,1弧度的角大小是怎样规定的? 

     我们知道“度”的定义是,“两条射线从圆心向圆周射出,形成一个夹角和夹角正对的一段弧。当这段弧长正好等于圆周长的360分之一时,两条射线的夹角的大小为1度。(如图1) 

   

     那么,弧度又是怎样定义的呢? 弧度的定义是:两条射线从圆心向圆周射出,形成一个夹角和夹角正对的一段弧。当这段弧长正好等于圆的半径时,两条射线的夹角大小为1弧度。(如图2) 

       比较一下,度和弧度的这两个定义非常相似。它们的区别,仅在于角所对的弧长大小不同。度的是等于圆周长的360分之一,而弧度的是等于半径。 

       简单的说,弧度的定义是,当角所对的弧长等于半径时,角的大小为1弧度。 

此主题相关图片如下: 

 


     角所对的弧长是半径的几倍,那么角的大小就是几弧度。 

它们的关系可用下式表示和计算: 

     角(弧度)=弧长/半径 

圆的周长是半径的 2π倍,所以一个周角(360度)是 2π弧度。 

半圆的长度是半径的 π倍,所以一个平角(180度)是 π弧度。 

    三、度跟弧度之间的换算 

    据上所述,一个平角是 π 弧度。 

即    180度=π弧度 

由此可知: 

     1度=π/180 弧度 ( ≈0.017453弧度 ) 

因此,得到 把度化成弧度的公式: 

     弧度=度×π/180 

例如: 

      90°=90×π/180 =π/2 弧度 

      60°=60×π/180 =π/3 弧度 

      45°=45×π/180 =π/4 弧度 

      30°=30×π/180 =π/6 弧度 

      120°=120×π/180 =2π/3 弧度 

反过来,弧度化成度怎么算? 

因为    π弧度=180° 

所以   1弧度=180°/π (≈57.3°) 

因此,可得到 把弧度化成度的公式: 

      度=弧度×180°/π 

例如: 

      4π/3 弧度=4π/3 ×180°/π 

     = 240° 

也许有些朋友会说,究竟是乘以“π/180 ”,还是“180°/π”很容易搞错。其实你只要记住:π是π弧度,180是180度。我要化成什么单位,就要把有这个单位的放在分子上。也就是说我要化成弧度,就要把π弧度放在分子上--乘以π/180 。另外,1度比1弧度要小得多,大约只有0.017453弧度(π/180≈0.017453)。所以把度化成弧度后,数字肯定要变小,那么化弧度时一定是乘以π/180 了。能够这样想一想,就不会搞错了。 

在AS代码里把“π”写成“PI”。又因为“π”、“sin”都是“数学函数”,按规定要在前面加上“Math.”(Math是英语中“数学”Mathematics的缩写),加上后写成“Math.PI”、“Math.sin”。 

所以    sin30°就得写成 Math.sin(30*Math.PI/180)。其中小括弧内的部分是把30°化为弧度,即30×π/180 。

OK 以上两个知识点了解之后,相信你已明白;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: