奇妙的算法(1)—— 判断奇偶
你会怎样判断一个数是奇数还是偶数呢?
是用MOD(%)吗?
用这个运算符当然没错,任何一门语言都是这么教的。
但你有没有想过,如果没有这个运算符呢?你会怎么判断奇偶数?
(请先思考……)
下面分享一下我看到过的一个算法。
首先,想一下奇偶数的定义“一个能被2整除的数称为偶数,否则为奇数”。所以不可避免要用到除法(/)。
其次,在编程语言里,整数的除法只会得到整数。例如,6/3=2,这是正常的。而5/2=2,这也是正确的。
看到这个你有没有一点思路呢?
(想想看……)
某个数(X),先除以(/)2,然后再乘以(*)2,如果结果等于X,就说明是偶数,否则为奇数。
即:(X/2)*2 == X,X为偶数
(X/2)*2 != X,X为奇数
下面用Python做个简单验证:
当然,这样的写法,在你做项目时也许不会用。我只是想分享下这个算法的思路。
忽然觉得,算法很神奇。
数学也很神奇!
posted on 2013-08-29 21:15 Memory4Young 阅读(1174) 评论(0) 编辑 收藏 举报