在数字列表中查找下一个奇数或下一个偶数

Posted

技术标签:

【中文标题】在数字列表中查找下一个奇数或下一个偶数【英文标题】:Finding Next Odd or Next Even Value in a list of numbers 【发布时间】:2021-07-20 17:52:09 【问题描述】:

给定一个数字列表,我试图从给定数字的列表中找到下一个奇数或偶数。指定的数字不必在范围内。例如:

给定数字 406,我想从给定的数字列表中找到下一个偶数或奇数:

380 381 382 383 385 400 401 403 407 410 411 0 0 0 0

在这种情况下,下一个返回的偶数应该是 410,下一个返回的奇数应该是 407。

如果指定的数字在该列表中,则它应该从中返回下一个偶数或奇数。

我在 excel 中执行此操作并尝试创建一个可以执行此任务但无济于事的 UDF。任何帮助将不胜感激。

【问题讨论】:

不需要 VBA:=@FILTER(A1:A15,(A1:A15>406)*(MOD(A1:A15,2)=0)),将 0 更改为 1 为奇数。 或者如果您没有 FILTER:=AGGREGATE(15,7,A1:A15/((A1:A15>C1)*(MOD(A1:A15,2)=0)),1) 【参考方案1】:

这里不需要 VBA:

如果您的 Excel 版本支持FILTER,即使使用:

=@FILTER(A1:A15,(A1:A15>406)*(MOD(A1:A15,2)=0))

并将 0 更改为 1 表示奇数。

如果您没有FILTER,则为偶数:

=AGGREGATE(15,7,A1:A15/((A1:A15>C1)*(MOD(A1:A15,2)=0)),1)

比较号存储在C1 中。同样将 0 更改为 1 表示奇数。

【讨论】:

以上是关于在数字列表中查找下一个奇数或下一个偶数的主要内容,如果未能解决你的问题,请参考以下文章

递归函数,查找给定数字内的偶数或奇数

python如何得到1~20的奇数列表与偶数列表

在 Swift 中如何知道一个数字是奇数还是偶数?

剑指Offer-调整数组顺序使奇数位于偶数前面

剑指offer21----数组中奇数偶数

调整该数组中数字的顺序,奇数在前,偶数在后