EXCEL 如何取整数

EXCEL 如何取整数,第1张

=ROUND(A1,0) 四舍五入取整

=ROUNDDOWN(A1,0) 按指定位数舍去数字

=ROUNDUP(A1,0) 按指定位数向上舍入指定位数后面的小数

=INT(A1) 将数字向下舍入到最接近的整数

题目是从CU上看到的,我的算法是:

int rand7()

{

int a;

while( (a=rand5()5+rand5()) > 26 );

return (a-3)/3;

}

可惜没办法验证,不知道这个算法是否正确?(问题一)。

(验证方法是通过双循环将两个rand5()分别换成1 2 3 4 5,但剔除掉(5,2)(5,3)(5,4)(5,5)这四个组合)

算法思路是:

1 通过 rand5()5+rand5() 产生 6 7 8 9 10 11 …… 26,27 28 29 30 这25个数,每个数的出现机率相等

2 只需要前面 37 个数,所以舍弃后面的4个数

3 将 6 7 8 转化为 1,9 10 11 转化为 2,……,24 25 26 转化为 7。公式是 (a-3)/3

注:

我觉得不能将 while( (a=rand5()5+rand5()) > 26 ) 其中一个rand5()移到while之外,即不能写成

int b = rand5();

int a;

while( (a=b5+rand5()) > 26 ); 或 while( (a=rand5()5+b) > 26 );

因为出现 >26 的情况,说明 b 有很大机率很大,从而又导致while之后的a有很大机率很大,破坏了平衡性。

这个备注中的看法对么?

javascript取整数的方法如下:

Mathround(num)四舍五入

Mathfloor(num)小于等于num的整数

Mathceil()大于等于num的整数

parseInt(num) 小于等于num的整数,与floor的区别是parseInt参数可以是string类型,如'5abc'返回5。

以上就是关于EXCEL 如何取整数全部的内容,包括:EXCEL 如何取整数、如何获取1-5的随机整数、javascript取整数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10041343.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存