Math总结

Math.abs() 绝对值

Math.abs(-1) 得1

Math.ceil() 向上取整

Math.ceil(12.3) 得13

Math.floor() 向下取整

Math.floor(12.3) 得12

Math.round()四舍五入

Math.round(12.3) 得12

round这个数需要注意的是,如果是负数.5的时候不会进1,如果是正数.5会进一,如:

Math.round(-12.5) 得-12

Math.round(-12.6) 得-13

Math.round(12.5) 得13

这里进一不代表负数值变大,只是数字变大

Math.max()求最大值

Math.max(1,2,3,4,5,6,7,7,8,9,0,0,324,2,34,12,31,2,31,23,12,3,2,321,3123123,123,1,23)

结果:3123123

Math.min()求最小值 方法同max

Math.random()获取0-1的随机小数,可以取到0但是取不到1

例子:14-58之间的随机数
n-m之间的随机数
公式如下:Math.round(Math.random()*(m-n)+n);
拿14-58举例:58-14 = 44 *随机数就是0-44之间的数,如果是最大值是43.xxx约等于44(因为取不到44) 这个时候+14就是最大值约等于58但是取不到58 如果随机数是最小值0那+14就是最小值是14,所以就是14-58这个范围 四舍五入的话如果是57.5以上包含57.5是能取到58的

 1 <!--Math 生成4个0-61的随机数不重复-->
 2
 3 <script type="text/javascript">
 4     /*首先来说下大体的思路:
 5      * 这里用到几个知识点:四舍五入Math.round(),随机数Math.random() isNaN(),还有就是周老师讲的公式  随机数*(大参数减小参数)+小参数
 6      */
 7    //判断条件是这样的:首先判断是不是数字所以要转化参数,然后判断是不是数字,这里用到Number 和isNaN
 8    //还有就是判断m和n的大小问题,如果n比m大就var一个变量进行对换
 9     /*首先创建一个数组用于接收随机数*/
10     var arrayList = new Array();
11     //计数器变量用于while循环
12     var num =0;
13     //循环100次输出看看结果中有没有重复的
14     while(num<100){
15         //调用随机数的自定义函数,传入参数
16         var result = randomNum(‘0‘,61);
17         console.log(result);
18         //给计数器加一
19         num++;
20     }
21
22     function randomNum(m,n){
23         //每次都要先清空数组,要不那100次循环会因为数组没清空导致没法存值,100次输出每一次都是一样的4个值
24         arrayList = [];
25         //把参数转化为数字类型用于比较
26         m = Number(m);
27         n = Number(n);
28         //判断两个参数是不是数字
29         if((!isNaN(m)) && (!isNaN(n)))
30         {
31             //是的话进入循环产生随机数,这里40是随便写的大数目,因为只会存4个所以多写点也无所谓,为了防止产生不重复的次数过少
32             for(var i=0;i<40;i++)
33             {
34                 //生成随机数
35                 var randomObj = Math.round(Math.random()*(m-n)+n);
36                 //先判断数组的长度,以防存入过多,够4个就返回
37                 if(arrayList.length == 4)
38                 {
39                     return arrayList;
40                 }
41                 //再判断数组中有没有这个随机数达到去重复的效果
42                 if(arrayList.indexOf(randomObj)<0)
43                 {
44                     //存入数组
45                     arrayList.push(randomObj);
46                 }
47             }
48         }
49         else
50         {
51             return "这不是一个数字";
52         }
53
54     }
55
56
57
58
59
60 </script>
时间: 2024-12-20 16:38:20

Math总结的相关文章

A Math Problem

A Math Problem Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 237    Accepted Submission(s): 117 Problem Description You are given a positive integer n, please count how many positive integers

数组、Math、JOSN总结

json对象: 1.数组有length属性[尽量使用for循环] 2.而json没有length属性[可以使用for...in...循环] 3.for in 不能遍历页面中的节点对象. for ( var key in json4 ) { alert( key ); alert( json4[key] );}//使用方括号[]取键名,for和for in 可以相互嵌套. delete objName.key : [对象名.要删除的属性名] 在数据传输流程中,json是以文本,即字符串的形式传递的

常用工具类(System,Runtime,Date,Calendar,Math)

一.Sy 一个java.lang包中的静态工具类. 三大字段: static PrintStream err "标准"错误输出流. static InputStream in "标准"输入流. static PrintStream out "标准"输出流. 其他常用方法: 描述系统信息: 获取系统属性信息: static Properties getProperties(): (Properties是Hashtable的子类,也就是Map 的子类

JavaScript中的Math

//math() //Pl document.write(Math.PI+'<br>'); var math=10.1; var math1=10.9; //四舍五入round() document.write(Math.round(math)+'<br>'); //进一法  ceil document.write(Math.ceil(math)+"<br>"); //退一法  floor document.write(Math.floor(math

javascript类型系统——Math对象

× 目录 [1]常量 [2]函数 前面的话 javascript使用算术运算符实现基本的算术运算,如果要实现更加复杂的算术运算,需要通过Math对象定义的常量和函数来实现.和其他对象不同,Math只是一个静态对象,而并没有Math()构造函数.实际上,Math只是一个由Javascript设置的对象命名空间,用于存储数学常量和函数.本文将详细介绍Math对象 new Math();//Uncaught TypeError: Math is not a constructor 常量 Math对象一

LeetCode 50 Pow(x, n)(Math、Binary Search)(*)

翻译 实现pow(x, n). 原文 Implement pow(x, n). 分析 首先给大家推荐维基百科: zh.wikipedia.org/wiki/二元搜尋樹 en.wikipedia.org/wiki/Binary_search_tree 其次,大家也可以看看类似的一道题: LeetCode 69 Sqrt(x)(Math.Binary Search)(*) 然而这题我还是没有解出来,看看别人的解法-- class Solution { private: double myPowHel

Math类

java提供了基本的+,-,*,/算数运算符,同时也提供了更复杂的运算符,比如三角函数,对数元,指数运算 Math是一个工具类.它的构造器被定义为private,因此无法创建Math类的对象,Math类中的所有方法都是 类方法,可以直接通过类名来调用,Math除了提供了大量的静态方法,还提供了两个类变量PI和E public class MathTest{ public static void main(String[] args){ //将弧度转化成角度 System.out.println(

uva 1489 - Math teacher&#39;s homework(数位dp)

题目链接:uva 1489 - Math teacher's homework 题目大意:给定n,k,以及序列m1,m2,-,mn, 要求找到一个长度为n的序列,满足0<=xi<=mi, 并且x1XORx2XOR-XORxn=k 解题思路:数位dp,在网上看了别人的代码,高大上... 假设有二进制数 k : 00001xxxx mi:0001xxxxx, 那么对于xi即可以满足任意的x1XORx2XOR-XORxi?1XORxi+1XOR-XORxn,根据这一点进行数位dp. dp[i][j]

python 实现 math.log(x,base)

python 用闭包实现math.log(x,base) #!/usr/bin/python3 # -*- coding: utf-8 -*- import sys,math import random import pprint def log(n,d): i = 0 status = 0 while True: if d**i==n: status=1 break elif d**i<n<d**(i+1): break i+=1 def test(level=100): if status

Math

1.PI     π(圆周率)的值 2.sqrt ( x )       返回数字的平方根 例:console.log(Math.sqrt(4));//==>2 3.abs ( x )       返回数字的绝对值 例:console.log(Math.abs(-3));//==>3 4.ceil ( x )         返回 x区间的最大整数 例:console.log ( Math.ceil ( 3.11 ) );//==>4 5.floor ( x )           返回