面试题
面试题
0.1 + 0.2 == 0.3为何为false
十进制的0.1转化为二进制的0.1时,得到一个无限循环小数。所以当使用有限的位数保存数字的时候,会产生精度的确实,最终的数只是0.1的近似数。
所以0.1和0.2的两个近似数相加,只能得到0.3的近似数。
5升瓶子和6升瓶子装3升水
5L装满 -> 6L瓶子
5L再装满 -> 6L瓶子, 6L倒掉,5L瓶子的水 -> 6L瓶子
5L再装满 -> 6L瓶子
5L瓶子剩下3L水
计算时针和分针的夹角
function getDegree(m, n) {
let mDegree = m * 30 + n * 0.5
let nDegree = n * 6
let degree = Math.abs(mDegree - nDegree)
if (degree > 180) {
degree = 360 - degree
}
return degree
}
概率题
100人教室60人喜欢足球,70人喜欢篮球,问同时喜欢足球和篮球的人数。
答:30到60人。最小值:60 + 70 - 100 = 30;最大值:交集,60。
100人班级60%喜欢足球,70%喜欢篮球,80%喜欢排球,问即三种球都喜欢占比有多少?
答:10到60人。最小值可以根据上一问的最小值来,已知同时喜欢足球和篮球的人数最少为30人,那么最小值:30 + 80 - 100 = 10人;而最大值还是三者的最大可能交集,60人。