math,pow
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/15 04:51:57 作文素材
篇一:C# 幂函数Pow()生成乘方表
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _1
{
class Program
{
static void Main(string[] args) {
int i, n;
double power;
//输入提示
Console.WriteLine("请输入一个数(n):");
n = int .Parse (Console.ReadLine()); // product = 1;//置阶乘product的初值为1
//循环执行n次,计算n!
for ( i = 1; i <= n; i++)
{
power = System.Math.Pow(2,i );
Console.Write("Pow(2,");
Console.Write(i ); Console.Write(")=");
Console.WriteLine(power ); }
Console.ReadKey();
}
}
}
篇二:AS3.0 数学函数Math的用法
Math.abs()//计算绝对值
Math.acos()//计算反余弦值
Math.asin()//计算正切值
Math.atan()//计算反正切值
Math.atan2()//计算从x坐标轴到点的角度
Math.ceil()//将数字向上舍入为最接近的整数
Math.cos()//计算余弦值
Math.exp()//计算指数值
Math.floor()//将数字向下舍入为最接近的整数
Math.log()//计算自然对数
Math.max()//返回两个整数中较大的一个
Math.min()//返回两个整数中较小的一个
Math.pow()//计算x的y次方
Math.random()//返回一个0.0与1.0之间的伪随机数
Math.round()//四舍五入为最接近的整数
Math.sin()//计算正弦值
Math.sqrt()//计算平方根
Math.tan()//计算正切值
Math.abs()计算绝对值公式,那么什么是绝对值呢?这个问题应该不大,我们都知道数字有正数和负数,那么我们计算的结果也就有正负,通过这个函数,吧负数值转换为整数值,二整数值不变.我们可以通过下面语句来验证一下:
x=5
y=-5
x=Math.abs(x)
trace(x)
//输出5
y=Math.abs(y)
trace(y)
//输出5
Math.ceil()取得指定的数字或表达的上限的整数值,也就是比制定的数字大的那个整数值。通过下面一段代码可以验证:
x=5.45
x=Math.ceil(x)
trace(x)//输出6
注意,对于负数,是绝对值越大,数值越小,所以Math.ceil()取得的整数值是拿一个比数字绝对值小的那个负整数。下面代码可以说明:
x=-5.45
x=Math.ceil(x)
trace(x)//输出-5
Math.floor()这个函数和Math.ceil()恰好相反,获得一个数字或表达的一个下限的整数
值,也就获取的整数值是比指定的数字小的那一个整数。注意:负数的取法和Math.ceil()的取法一样,只是起的一个绝对值大的一个整数。下面可以验证:
x=5.45
x=Math.floor(x)
trace(x)//输出5
x=-5.45
x=Math.floor(x)
trace(x)//输出-6
Math.round()这个函数所用的方法应该是我们最熟悉的了,四舍五入,取得和一个表达式或者数字最接近的一个整数。验证一下:
x=-5.45
x=Math.round(x)
trace(x)//输出-5
x=-5.55
x=Math.round(x)
trace(x)//输出6
代码、但是这里发现一个要大家注意的问题,如果:
x=5.50
x=Math.round(x)
trace(x)//输出6
但是如果x=-5.50
x=-5.50
x=Math.round(x)
trace(x)//输出-5需要注意一下
Math.random()随机函数,获取一个介于0和1之间的一个数字0<=x<1这样的一个小数位数为14位的一个小数。使用他,可以获取一些不同位数的一些数字。下面我们使用他和上面我们已经研究过得函数,获取一位随机的四位数。
x=Math.random()
x=10000*x
x=Math.round(x)
trace(x)//输出。。。
当然flash还提供了随机函数random(value),他也可以获取一个随机的整数,这个整数介于0和value-1之间的一个整数,关于它的用法验证一下:
x=random(5)
trace(x)
//输出为,0,1,2,3,4之中任意一个值
Math.max()计算两个数字或者表达式中的最大值,并返回这个值。
Math.max(5,4)
trace(x)//输出为5
x=10
y=20
z=Math.max(x,y)
trace(x)//输出为20
Math.min()返回两个数字或者表达式中最小的一个值
x=Math.min(5,4)
trace(x)//输出为4
x=10
y=20
x=Math.min(x,y)
trace(x)//输出为10
Math.pow(2,3)//计算2的3次方
trace(x)//输出为8
x=3
y=4
z=Math.pow(x,y)//计算x的y次方
trace(z)//输出81
Math.sqrt()计算一个数字或者一个表达式的平方根,注意这里的表达式应该是一个大于或者等于0的数字。
x=Math.sqrt(2)//计算2的3次方
trace(x)//输出为1.4142135623731
x=3
x=Math.sqrt(x)//计算x的y次方
trace(x)//输出1.73205080756888
Math.exp()方法
Math.exp()方法是获取以自然对数的底(e)的x次幂的值,x由参数x指定。
下面视力Math.exp()方法获取自然对数e的3 次幂的值。代码如下
var a:Number=3;
var b=Math.exp(a);
trace(b);//输出20.085536923187675
Math.log()方法
Math.log()方法用于获取参数的自然对数的值。示例:
var a:Number=10
trace(Math.log(a));//输出:2.302585092994046
篇三:math类使用方法
Math.PI 记录的圆周率
Math.E 记录e的常量
Math中还有一些类似的常量,都是一些工程数学常用量。
Math.abs() 求绝对值
Math.sin() 正弦函数
Math.asin() 反正弦函数
Math.cos() 余弦函数
Math.acos() 反余弦函数
Math.tan() 正切函数
Math.atan() 反正切函数
Math.atan2() 商的反正切函数
Math.toDegrees() 弧度转化为角度
Math.toRadians() 角度转化为弧度
Math.ceil() 得到不小于某数的最大整数
Math.floor() 得到不大于某数的最大整数
Math.remainder() 求余
Math.max() 求两数中最大
Math.min() 求两数中最小
Math.sqrt() 求开方
Math.pow() 求某数的任意次方,抛出ArithmeticException处理溢出异常 Math.exp() 求e的任意次方
Math.log10() 以10为底的对数
Math.log() 自然对数
Math.rint() 求距离某数最近的整数(可能比某数大,也可能比它小)
Math.round() 同上,返回int型或者long型(上一个函数返回double型) Math.random() 返回0与1之间的一个随机数
篇四:【READ】POW函数-归纳整理总结注释版2015
POW函数
原型:在TC2.0中原型为extern float pow(float x, float y),而在VC6.0中原型为double pow( double x, double y );
头文件:math.h/cmath(C++中)
功能:计算x的y次幂。
返回值:x应大于零,返回幂指数的结果。
返回类型:double型,int,float会给与警告!
举例1:(在VC6.0中运行通过)
#include
#include
int main(void)
{
double x = 2.0, y = 3.0;
printf("%lf raised to %lf is %lf\n", x, y, pow(x, y));
return 0;
}
举例2: (在TC2.0中运行通过)
// pow.c
#include
#include
main()
{
clrscr(); // clear screen
textmode(0x00); // 6 lines per LCD screen
printf("4^5=%f",pow(4.,5.));
getchar();
return 0;
}
篇五:第11章 Math对象
第11章 Math对象
作为一门编程语言,进行数学计算是必不可少的。在数学计算中经常会使用到数学函数,如取绝对值、开方、取整、求三角函数值等,还有一种重要的函数是随机函数。ActionScript将所有这些与数学有关的方法、常数、三角函数以及随机数都集中到一个对象里面——Math对象。
Math对象是ActionScript的一块敲门砖,只有掌握了它,才能真正对ActionScript动画编程做到运用自如。
11.1 Math对象的方法
11.1.1 Math.abs
Math对象中集合了许多常用数学函数。Math.abs就是用来计算一个数的绝对值,即一个数去掉正负符号后的值。其用法如下:
x=Math.abs(-9);
或:
x=Math.abs(num1-num2);
11.1.2 Math.round
Math.round方法将一个浮点数四舍五入为最接近的整数,如: trace(Math.round(9.4));
trace(Math.round(9.5));
trace(Math.round(-9.4));
trace(Math.round(-9.5));
trace(Math.round(-9.6));
输出窗口中将显示:
9、10、-9、-9、-10
11.1.3 Math.ceil、Math.floor
Math.ceil方法取比一个浮点数大且最接近的整数,Math.floor方法取比一个浮点数小且最接近的整数。如:
trace(Math.ceil(9.1));
trace(Math.floor(9.1));
trace(Math.ceil(-9.1));
trace(Math.floor(-9.1));
输出窗口中将显示:
10、9、-9、-10
11.1.4 Math.min、Math.max
Math.min方法取两个数中较小的一个数,Math.max方法取两个数中较大的一个数,如: trace(Math.min(9, 8));
trace(Math.max(9, 8));
输出窗口中显示:
8、9
11.1.5 Math.pow
Math.pow方法用来计算一个数的乘方,它包含两个参数,第1个参数是底数(要乘方的数),第2个参数是幂(乘方数)。如计算5的3次方:
trace(Math.pow(5, 3));
输出窗口中显示:
125
Math.pow方法也可以计算一个数的开方,如计算125的开3次方:
trace(Math.pow(125, 1/3));
输出窗口中显示
5
11.1.6 Math.sqrt
除了用Math.pow计算一个数的开方,还可以使用Math.sqrt计算一个数的平方根,如计算64的平方根:
trace(Math.sqrt(64));
输出窗口中显示
8
它等同于:
trace(Math.pow(64, 1/2));
11.2 Math对象的常数
Math对象的常数有以下几个:
= Math.PI:圆周率(大约为3.141593)。
= Math.SQRT1_2:1/2的平方根的倒数(大约为0.707107)。
= Math.SQRT2:2的平方根(大约为1.414214)。
= Math.E:欧拉(Euler)常数,自然对数的底(大约为2.718282)。
= Math.LN2:2的自然对数(大约为0.693147)。
= Math.LN10:10的自然对数(大约为2.302585)。
= Math.LOG2E:e的以2为底的对数(大约为1.442695)。
= Math.LOG10E:e的以10为底的对数(大约为0.434294)。
其中Math.PI用得较多,如下面的脚本将弧度值arcdegree转换为角度值angledegree: angledegree = arcdegree*(180/Math.PI);
下面的ActionScript将弧度1转换为角度:
arcdegree = 1;
angledegree = arcdegree*(180/Math.PI);
trace(angledegree);
输出窗口中显示:
57.2957795130823
11.3 三角函数
Math对象中的三角函数有:
= Math.sin:正弦
= Math.cos:余弦
= Math.tan:正切
= Math.asin:反正弦
= Math.acos:反余弦
= Math.atan:反正切
= Math.atan2:从x坐标轴到点的角度
三角函数在ActionScript中有着举足轻重的地位,它们在制作一些特效动画时将发挥重要的作用。
在程序语言中通常以x和y标记位置,但是在一个圆周上使用x和y来标记位置并不是很容易。三角函数在处理与圆周相关的位置参数时很有效。如用某个圆的圆心位置为(x0,y0),半径为r,可以用y0+r*Math.sin(0)表示该圆水平直径右端点的纵坐标,用x0+r*Math.cos(0)表示该圆水平直径右端点的横坐标。
如下所示的ActionScript使影片剪辑绕圆周运动:
onClipEvent (load) {
i = 0;
r = 150;
x0 = 275;
y0 = 200;
}
onClipEvent (enterFrame) {
i += 10;
this._x = x0+r*Math.cos(i/(180/Math.PI));
this._y = y0+r*Math.sin(i/(180/Math.PI));
}
此时的影片剪辑是沿顺时针方向转动的,如要让它沿相反方向转动,只需将i += 10改写成i -= 10即可。
ActionScript中的三角函数都是按照弧度计算的。一个完整圆周的弧度数为2*Math.PI,大约是6.283185,而一个圆周的角度数是360。如要在三角函数中使用角度数,需要将其除以180/Math.PI以转换为弧度数。
在上面的脚本中,i的值是递增的,而并没有限定在0~360之间。这是因为正弦函数和余弦函数是定义在负无穷~正无穷上的周期函数,它们的值是以360°为周期循环的。
11.4 字符串和数字的转换
在ActionScript中,字符串和数字之间可以相互转换。在很多时候,将字符串转换为数字或将数字转换为字符串都是很有必要的。例如,在Flash中有一个变量名为n的输入文本框和一个按钮,按钮中的ActionScript如下:
on (release) {
trace(n+7);
}
当在输入文本框中输入11,再单击按钮时,输出窗口将显示字符串“11”与字符串“7”相加的结果117,而不是数字11与数字7相加的结果8。这是因为从输入文本框中获得的是字符串,当表达式中有字符串和数字时,ActionScript优先考虑字符串,将数字转换为字符串后再进行字符串运算。
为了将字符串转换成数字,可以使用ActionScript提供的函数Number,如将上例所示的脚本改写成如下所示:
on (release) {
trace(Number(n)+7);
}
当在输入文本框中输入11,再单击按钮时,输出窗口将显示结果18。
如果Number函数中的参数不能转换成数字,则返回结果NaN。
以“0x”开头的字符串将被解释为十六进制数。
对于布尔值,true将转换为1,false将转换为0。例如将上例所示的脚本改写成如下所示:
on (release) {
n = n>10;
trace(Number(n));
}
当输入的值小于等于10时,输出窗口中显示0;当输入的值大于10时,输出窗口中显示1。
除了Number函数以外,函数parseInt可以将字符串转换成整数,函数parseFloat可以将字符串转换为浮点数。如将上例所示的脚本改写成如下所示:
on (release) {
trace(parseInt(n)+7);
trace(parseFloat(n)+7);
}
当在输入文本框中输入11.99,再单击按钮时,输出窗口中将显示18和18.99。 parseInt和parseFloat在处理字符串时比Number函数更专业一点,它们可以从字符串中取出能转换成数字的最长字符串进行转换,而忽略后面不能转换成数字的字符串。如将上例的脚本改写成如下所示:
on (release) {
trace(Number(n)+7);
trace(parseInt(n)+7);
trace(parseFloat(n)+7);
}
当在输入文本框中输入11t7.9并单击按钮时,输出窗口中将显示
NaN、18、18
parseInt函数可以有两个参数,第2个参数在2~36之间,表示要转换的数字的基数,即进制数。如将二进制数1101转换为十进制整数:
trace(parseInt(1101, 2));
输出窗口中显示13。
要将数字转换成字符串可以使用Number对象(动作面板的“对象”/“核心”目录)的toString方法。要使用toString方法需要先创建一个Number对象,其用法如下:
myNumber = new Number(15);
trace(myNumber.toString(2));
trace(myNumber.toString(16));
toString中的参数与parseInt函数的第2个参数一样,都表示进制数。本例中的2和16分别表示将myNumber转换为二进制数和16进制数。运行脚本,输出窗口中显示
1111
f
如果省略参数,默认为十进制。
11.5 随机数
随机数在Flash中的应用非常广泛。
在Flash 5以前的版本中,使用random函数获取一个近似的随机数,如random(10)随机返回0~9这10个整数中的一个。但在Flash MX中推荐使用Math对象的random方法,即Math.random(),该方法返回一个大于或等于0并且小于1的随机浮点数。
Math.random方法比random函数得到的结果更精确,但它并不能直接产生一个整数。我们可以使用别的办法将Math.random方法产生的随机数转换为我们需要的整数,如要得到一个1~10之间的随机整数,可以使用如下所示的ActionScript:
trace(Math.floor(Math.random()*10+1));
11.6 练习:下雪
打开文件snow.fla,这是一个利用attachMovie和Math.random方法制作的下雪效果,其中每一片雪花的大小、方向各不相同
该动画中形状各异的雪花与Math.random函数密不可分,下面来看它的制作方法。
(1)在库面板中为snow影片剪辑创建链接,其链接标识符为snow
(2)将snow元件拖到场景中,选中该影片剪辑实例,在其中添加如下ActionScript: onClipEvent (load) {
this._visible = false;
v0 = 3; //速度
num = 50; //数量
vx = new Array(); //记录水平速度的数组
vy = new Array();成 //记录垂直速度的数组
for (var i = 1; i<=num; i++) {
_root.attachMovie("snow", "snow"+i, i); //附加num个影片剪辑实例
scale = 100*Math.random()+50; //随机设定实例大小
with (_root["snow"+i]) { //with语句
_xscale = scale;
_yscale = scale;
_x = 500*Math.random(); //随机出现在影片水平宽度范围
_y = 400*Math.random(); //随机出现在影片垂直高度范围
_rotation = 360*Math.random(); //随机旋转一个角度
vx[i] = v0*Math.random()+v0; //随机取得水平方向上的速度
vy[i] = v0*Math.random()+v0; //随机取得垂直方向上的速度
}
}
}
onClipEvent (enterFrame) {
for (var i = 1; i<=num; i++) {
with (_root["(来自:WwW.smhaida.Com 海达 范文 网:math,pow)snow"+i]) {
_x += vx[i]; //在水平方向上运动
_y += vy[i]; //在垂直方向上运动
if (_x<0) { //超出左边界,从右边界进入
_x = 500;
}
if (_x>500) { //超出右边界,从左边界进入
_x = 0;
}
if (_y>400) { //超出下边界,从上边界进入
_y = 0;
}
作文素材