首页 > 编程语言 >【python】求最大公约数、最小公倍数、回文数、素数

【python】求最大公约数、最小公倍数、回文数、素数

时间:2022-12-06 09:35:32浏览次数:57  
标签:return 公倍数 else python 最大公约数 num factor 回文

1.最大公约数

最大公因子,指两个或多个整数共有约数中最大的一个。如(12,16)的公约数有1,2,4,最大的为4。

def gcd(x, y):
    (x, y) = (y, x) if x > y else (x, y)
    for factor in range(x, 0, -1):
        if x % factor == 0 and y % factor == 0:
            return factor

(x, y) = (y, x) if x > y else (x, y)等效于

if x > y:
    (x, y) = (y, x)
else:
    (x, y) = (x, y)

2.最小公倍数

两个或多个整数有最小的倍数。如(30,45)的最小公倍数为90。

def lcm(x, y):
    return x * y // gcd(x, y)

3.回文数

正反都一样的数,如121、484、676。
把数反转,再和原来的比较。

def is_palindrome(num):
    temp = num
    total = 0
    while temp > 0:
        total = total * 10 + temp % 10
        temp //= 10
    return total == num

4.素数

除了1和它本身之外不再有其他因子,如5,7,11,13。
num**5表示num的0.5次方,即对num开平方根

def is_prime(num):
    for factor in range(2, int(num ** 0.5) + 1):
        if num % factor == 0:
            return False
    return True if num != 1 else False

5.回文数素数

if __name__ == '__main__':
    num = int(input('请输入正整数:'))
    if is_palindrome(num) and is_prime(num):
        print('%d是回文素数' % num)
    else:
        print("啥也不是")

标签:return,公倍数,else,python,最大公约数,num,factor,回文
From: https://www.cnblogs.com/zhishu/p/16953274.html

相关文章

  • Python数据分析入门--Pandas库学习
    Pandas库学习相较于numpy库关注数据结构的表达,pandas库更关注数据的应用表达1.Pandas库的Series类型1.1Series类型的组成Series类型由一组数据及与之相关的数据索引......
  • Python工具箱 — 创建工具箱
    如果是Python新手,使用ArcPy自定义脚本通过向导创建脚本工具箱非常简单。但它在数据类型、许可检查和管理维护等方面存在弊端,因此,从ArcGIS10.1起,对于经验比较丰富的用户......
  • python爬虫爬取网易云音乐(超详细教程,附源码)
    一、前言先说结论,目前无法下载无损音乐,也无法下载vip音乐。此代码模拟web网页js加密的过程,向api接口发送参数并获取数据,仅供参考学习,如果需要下载网易云音乐,不如直接在......
  • Python之路【第五篇】:面向对象及相关
    1.面向对象基础基础内容介绍详见一下两篇博文:面向对象初级篇面向对象进阶篇 2.其他相关2.1isinstance(obj,cls)检查是否obj是否是类cls的对象clas......
  • python函数入门
    1.函数的作用#sum()max()min()len()type()#使用函数都需要加一个括号#有自己的功能#'a'.replace()#称为方法点出来的有括号的称为方法#a.name#称为......
  • Selenium4+Python3系列(十一) - Page Factory设计模式
    写在前面:PageObject模式,目的是将元素定位和元素操作分层,只接触测试内容,不写基础内容,便于后续对自动化测试用例体系的维护,这是中心思想,也是核心。那么我们继续将简洁延续,......
  • Selenium4+Python3系列(十一) - Page Factory设计模式
    写在前面:PageObject模式,目的是将元素定位和元素操作分层,只接触测试内容,不写基础内容,便于后续对自动化测试用例体系的维护,这是中心思想,也是核心。那么我们继续将简洁延续......
  • Python中的数字
    在编程中,经常使用数字来记录游戏得分、表示可视化数据、存储Web应用信息等。Python根据数字的用法以不同的方式处理它们。鉴于整数使用起来最简单,下面就先来看看Python是如......
  • python 面向对象(进阶篇)
    上一篇《Python面向对象(初级篇)》文章介绍了面向对象基本知识:面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用类是一个模板,模板中包装了多......
  • python解析网页数据BeautifulSoup和xpath
    前言:requests请求并获取数据后,解析数据通常用两种方法(BeautifulSoup和xpath),下面以某房chan数据有例子,分别使用不同的方法解析数据。一、xpath方法:fromlxmlimportetreee=......