加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

lookup逻辑值判断?(案例2)

(2022-04-16 15:37:50)
分类: excel函数
1、=LOOKUP(9E+307,{FALSE;20;FALSE;40;FALSE;60;FALSE;FALSE;FALSE}) 返回 60?

2、=LOOKUP(9E+307,{0;20;0;40;0;60;0;0;0}) 返回0 为什么与上面结果不一样呀?

答:第一组数据:{FALSE;20;FALSE;40;FALSE;60;FALSE;FALSE;FALSE}
在二分法之下,第一次分法,在false处,false做为逻辑值,被忽略,直接看40与60,60>40,且小于9E+307,向下查找,第二次分法在{60;false;false;false}中进行,又是false,逻辑值忽略,所以结果为60

第二组数据:{0;20;0;40;0;60;0;0;0}  此组数据与第一组数据的区别就在于把逻辑值变成了数值
同样的二分法,第一次分法,在0处,0<40<60,在lookup眼里,这组数据已经进行过升序排列,找到这个0之后,向上得到的结果是false,向下结果还是false,就不会再进行继续分了,所以结果就是0

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有