数组运算1(一维数组与单值的运算)
昨天说了数组的基础知识,今天来说说数组的运算规则。像单值运算一样,数组也可以进行数学运算,比较运算和文本连接运算。
-01-
运算规则
1.一维横向数组与单值的运算
如下图所示,在E1单元格中输入公式=A1:C1+10,将A1:C1这个区域加10,在编辑栏中选中公式,按F9查看结果,如下2图。可以看到结果为{11,12,13},说明它们运算的规则是,A1:C1这个区域的每个值分别与10进行相加,也就是1+10,2+10,3+10。这样就构成1个内存数组。
严格地来说,此时不是数组与单值运算,而是区域与单值运算。如果要是数组与单值运算应该是在编辑栏中选中A1:C1这个区域,按F9就转成数组了,如下2图所示。但是用区域与单值运算,可以算是间接的数组和单值的运算,而且会经常这样使用。
2.一维纵向数组与单值的运算
现在是一维纵向区域与单值的运算,运算规则也是一样的,区域中的每个值或者数组中的每个元素与10分别相加,得到一个新的数组。
新数组的方向和尺寸与原数组一样,将其结果输出到纵向的3个单元格中,注意要按ctrl+shift+enter。
-02-
具体应用
1.求每人成绩中大于90分的有几科
这里的成绩用的是随机数,而且设置了条件格式,把大于90分的标记红色,方便查看结果。在E14单元格中输入公式=SUM(--(B14:D14>90)),按ctrl+shift+enter三键,向下填充。
B14:D14>90这部分就是将语文数学英语3科成绩分别与90进行比较,大于90分的返回true,否则返回false,形成一个内存数组{TRUE,FALSE,TRUE}。前面加--将逻辑值转为数字{1,0,1},最后用sum求和。
2.求每科成绩中大于90分的有几人
在B19单元格中输入公式=COUNT(0/(B14:B18>90)),内存数组按ctrl+shift+enter三键,向右填充。
B14:B18>90是将每个人的语文成绩分别与90比较,大于90的返回true,否则返回false,形成一个新的数组。用0除,将true转为0,false转为错误值。最后用count统计数字的个数,就是大于90分的人数。
如果对你有所帮助或启发,请打赏或分享一下,你的支持就是我最大的动力!
此公众号没有留言功能,如果有问题可以发到邮箱715704566@qq.com,有时间会回复的。
关注解锁更多函数的用法