数字12312321的奇妙之处

一、数字的结构

12312321是一个八位数。

num = 12312321
digit1 = num // 10000000    # 取得第一位数字
digit2 = (num // 1000000) % 10    # 取得第二位数字
digit3 = (num // 100000) % 10    # ...
digit4 = (num // 10000) % 10
digit5 = (num // 1000) % 10
digit6 = (num // 100) % 10
digit7 = (num // 10) % 10
digit8 = num % 10    # 取得最后一位数字

它是一个对称数,从左到右和从右到左读都是一样的。

def is_palindrome(n):
    s = str(n)
    return s == s[::-1]

print(is_palindrome(12312321))    # True

二、数字的因子

12312321有8个因子:1、3、9、1379147、4137441、12412323、36904107和12312321。

def get_factors(n):
    factors = set()
    for i in range(1, int(n ** 0.5) + 1):
        if n % i == 0:
            factors.add(i)
            factors.add(n // i)
    return factors

print(sorted(list(get_factors(12312321))))

三、数字的各位数之和

12312321的各位数之和是15。

def digit_sum(n):
    return sum(int(d) for d in str(n))

print(digit_sum(12312321))    # 15

四、数字的反码

12312321的反码是21169406。

def bitwise_not(n):
    return ~n & (2 ** n.bit_length() - 1)

def complement(n):
    return bitwise_not(n) + 1

print(complement(12312321))    # 21169406

五、数字的平方根

12312321的平方根是3511。

def sqrt(n):
    x = n
    y = (x + 1) // 2
    while y < x:
        x = y
        y = (x + n // x) // 2
    return x

print(sqrt(12312321))    # 3511

原创文章,作者:VPTMX,如若转载,请注明出处:https://www.506064.com/n/371352.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
VPTMX的头像VPTMX
上一篇 2025-04-23 00:48
下一篇 2025-04-23 00:48

相关推荐

  • Python循环符合要求数字求和

    这篇文章将详细介绍如何通过Python循环符合要求数字求和。如果你想用Python求和但又不想手动输入数字,那么本文将是一个不错的选择。 一、使用while循环实现求和 sum =…

    编程 2025-04-29
  • Python基本数字类型

    本文将介绍Python中基本数字类型,包括整型、布尔型、浮点型、复数型,并提供相应的代码示例以便读者更好的理解。 一、整型 整型即整数类型,Python中的整型没有大小限制,所以可…

    编程 2025-04-29
  • Python打印数字三角形

    本文将详细阐述如何使用Python打印数字三角形,包括从基本代码实现到进阶操作的应用。通过本文的学习,您可以掌握Python的基础语法,同时加深对Python循环和函数的理解,提高…

    编程 2025-04-29
  • Python数字求和怎么写

    在Python中实现数字求和非常简单,下面将从多个方面对Python数字求和的实现方法做详细的阐述。 一、直接使用“+”符号进行求和 a = 10 b = 20 c = a + b…

    编程 2025-04-29
  • Python提取连续数字

    本文将介绍如何使用Python提取一个字符串中的连续数字。 一、使用正则表达式提取 正则表达式是一种可以匹配文本片段的模式。Python内置了re模块,可以使用正则表达式进行字符串…

    编程 2025-04-29
  • Python中如何判断字符为数字

    判断字符是否为数字是Python编程中常见的需求,本文将从多个方面详细阐述如何使用Python进行字符判断。 一、isdigit()函数判断字符是否为数字 Python中可以使用i…

    编程 2025-04-29
  • Python如何将字符串1234变成数字1234

    Python作为一种广泛使用的编程语言,对于数字和字符串的处理提供了很多便捷的方式。如何将字符串“1234”转化成数字“1234”呢?下面将从多个方面详细阐述Python如何将字符…

    编程 2025-04-29
  • Python实现统计100以内能被7整除的数字个数

    本文将从以下几个方面详细阐述如何使用Python来实现统计100以内能被7整除的数字个数。具体内容包括: 一、range函数 Python中的range函数是用来生成一个数字序列的…

    编程 2025-04-28
  • Python中字母代表的数字

    在Python中,我们经常会用到英文字母作为数字的代表,例如表示布尔值的True和False,表示空值的None等等。本文将从多个方面对Python中字母代表的数字进行详细的阐述,…

    编程 2025-04-28
  • Python如何取百位数字

    在Python中,如果要取一个数的百位数字,我们可以从多个角度来解决这个问题。 一、通过对数的转换进行百位数字的取得 我们可以将数转换成字符串,然后通过字符串的切片得到其百位数字。…

    编程 2025-04-28

发表回复

登录后才能评论