十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
判断奇偶数-4种方法
公司主营业务:成都做网站、网站制作、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联推出新林免费做网站回馈大家。
# Question:给定一个数,判断一个数是奇数还是偶数
#author by:LingSmart
'''
1.随机输入一个数-定义变量x,并且使用input函数,
注意要给变量指定数据类型(int or float)
2.if进行判断 x%2 == 0 则是偶数(Even) 否则是奇数(Odd)
然后进行输出print
'''
说明:
python输入的内容在内部全部为字符串,所以要判断这个字符串是否为一个数字。大多法内部函数并不能对各种形式的数据做出正确判断,例如isdigit()函数只能判断字符串是否为纯数据组成对于负数则无效了。所以可以使用float()来检测,对各种数字的表示方法都有效果。
方法代码:
#定义函数
def isnub(s):
try:
nb = float(s) #将字符串转换成数字成功则返回True
return True
except ValueError as e:
return False #如果出现异常则返回False
#测试
print(isnub('123'))
print(isnub('abc'))
print(isnub('123.123'))
print(isnub('-123.123'))
print(isnub('-1.609E-19'))
测试结果如下:
True
False
True
True
True
比如判断数字5050是奇数还是偶数
num=5050
if (num%2)==0:
print("even")
else:
print("odd")
#测试
print(isnub('123'))
print(isnub('abc'))
print(isnub('123.123'))
print(isnub('-123.123'))
print(isnub('-1.609E-19'))
关于奇数和偶数,有下面的性质:
(1)两个连续整数中必有一个奇数和一个偶数;
(2)奇数+奇数=偶数;偶数+奇数=奇数;偶数+偶数+...+偶数=偶数;
(3)奇数-奇数=偶数;偶数-奇数=奇数;奇数-偶数=奇数;
(4)若a、b为整数,则a+b与a-b有相同的奇偶性,即a+b与a-b同为奇数或同为偶数;
(5)n个奇数的乘积是奇数,n个偶数的乘积是偶数;算式中有一个是偶数,则乘积是偶数;
以上内容参考:百度百科-奇数
判断 num 是否为整数, num 为整数。
使用 %
优化方法一
使用 位运算符 ,运算速度更快。
原理
是按位与运算符, 假如n=10转换二进制为 0000 1010 ,1的二进制为 0000 0001
意思就是把 n 转换成二进制,然后看 n二进制 的 最后一位 ,如果最后一位为1的话,结果就是1,如果最后一位是0的话,那就是0。 相当于AND。
因为2的倍数的二进制最后一位都是0,所以n1表达式跟n%2结果是一样的
可以用这个数除以二的余数来判断,它是奇数还是偶数。如果除下来的结果余数是一,那么它就是一个奇数,反过来如果得到的余数是零,那么这个被除数就是偶数。
相对来说比较简单,直接用数字除2取余,如果余数大于0的就是奇数,等于0的就是偶数,如果是0直接判断是偶数。