分享

难倒了多少大神的习题:从一个四位数中任意取三个数,令其和值尾数等于指定值。你也来试试吧!

 EXCEL应用之家 2021-06-04


送人玫瑰,手有余香,请将文章分享给更多朋友

动手操作是熟练掌握EXCEL的最快捷途径!



小伙伴们啊,有这样一个趣味题目,有兴趣的朋友们可以来试一试你的函数功底到底如何!

给出任意一个四位数,从其中任意选出三个数求其和值,并令其和值的尾数等于指定的数值。

怎么样?思考十秒钟,有思路了吗?


01

这道题目其实主要还是考察的数学逻辑思维,只要逻辑理清楚了,公式书写起来还是不太难的。



在单元格D4中输入公式“=IF((MIN(MOD(SUM(--MID($B4,{1,2,3,4},1))-MID($B4,{1,2,3,4},1)+10-$B$3,10))=0),IF(OR(MIN(MOD(SUM(--MID($B4,{1,2,3,4},1))-MID($B4,{1,2,3,4},1)+10-$B$3,10))>$B$3,ISERR(FIND(D$3,$B4)),MOD(SUM(--MID(SUBSTITUTE($B4,D$3,""),{1,2,3},1))+10-$B$3,10)=0),"",D$3),"")”,并向右向下拖曳即可。

思路:

  • 要从四个数中任意取三个,且和值的尾数等于指定数,需要满足两个条件:

    1)三个数之和减去指定数后,用10对其求余数,结果必须为0

    2)待验证的0-9这几个数字必须在这个四位数中

  • (MIN(MOD(SUM(--MID($B4,{1,2,3,4},1))-MID($B4,{1,2,3,4},1)+10-$B$3,10))=0)部分,即是第一个条件。四位数中的四个数字之和分别减去这四个数字,再减去指定数;加上10的作用是让总的和值大于10,方便用10求余数,即尾数

  • OR(MIN(MOD(SUM(--MID($B4,{1,2,3,4},1))-MID($B4,{1,2,3,4},1)+10-$B$3,10))>$B$3,ISERR(FIND(D$3,$B4)),MOD(SUM(--MID(SUBSTITUTE($B4,D$3,""),{1,2,3},1))+10-$B$3,10)=0)部分,设定了三个条件:1)最小尾数大于指定数;2)待验证的0-9这几个数字必须在这个四位数中;3)三个数之和减去指定数后,用10对其求余数,结果必须为0。只有这三个条件都不满足时,才可以排除待验证的数字,否则,待验证的数字即为备选答案之一

  • 当最小尾数大于指定数时,表明求余没有最终完成,还可以继续求余

  • 当三个数之和减去指定数后,用10对其求余数,结果等于0是,表明当前的待验证的数字可以排除了,因为那三个已经尾数等于指定数了

  • 整个公式利用两次IF函数进行判断,最终得到正确结果


02



-END-

长按下方二维码关注EXCEL应用之家

面对EXCEL操作问题时不再迷茫无助

我就知道你“在看”

注意!前方有红包挡道!速点阅读原文消灭之

推荐阅读

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多