找回密码
 加入
搜索
查看: 2076|回复: 5

[效率算法] 数学问题

  [复制链接]
发表于 2010-6-20 12:52:38 | 显示全部楼层 |阅读模式
有5个数字为一组数组,如何求得任意三个数之中是否有被10整除的和`````
发表于 2010-6-20 14:12:56 | 显示全部楼层
lz的语言太深奥,没看明白
发表于 2010-6-20 16:17:21 | 显示全部楼层

函数

本帖最后由 foboy 于 2010-6-20 16:19 编辑

楼主意思是从5个数理任意拿出三个数来,看他们的和是不是能被10整除吗?
如果是这个意思的话,我写的这个函数可以满足你:
这个函数可以检查任意多个数中是不是有三个的和能被10整除。有的话就会返回一个包含这三个数的数组。没有的话返回空字符串,并且设置@error为1


Func _check_data($_data)
        For $_i_a = 0 To UBound($_data) - 1
                For $_i_b = 0 To UBound($_data) - 1
                        If $_i_b == $_i_a Then ContinueLoop
                        For $_i_c = 0 To UBound($_data) - 1
                                If $_i_c == $_i_a Or $_i_c == $_i_b Then ContinueLoop
                                If Mod($_data[$_i_a] + $_data[$_i_b] + $_data[$_i_c], 10) == 0 Then
                                        Local $_nums[3] = [$_data[$_i_a], $_data[$_i_b], $_data[$_i_c]]
                                        Return $_nums
                                EndIf
                        Next
                Next
        Next
        Return SetError(1, 0, "no data")
EndFunc   ;==>_check_data

使用例子:
Global $data[5] = [56, 23, 569, 236, 55]
_check_data($data)
发表于 2010-6-20 21:36:00 | 显示全部楼层
3数之和求模
发表于 2010-6-20 22:12:30 | 显示全部楼层
去试一下3楼大大的.,应该是你想要的
 楼主| 发表于 2010-6-21 13:31:56 | 显示全部楼层
谢3楼的大大了``````
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 10:41 , Processed in 0.070433 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表