【Python训练营】Python每日一练----第21天:既约分数(gcd函数应用)

举报
是Dream呀 发表于 2022/02/16 18:59:36 2022/02/16
【摘要】 【Python训练营】Python每日一练----第21天:既约分数(gcd函数应用)

在这里插入图片描述

📢📢📢📣📣📣
🌻🌻🌻Hello,大家好我叫是Dream呀,一个有趣的Python博主,多多关照😜😜😜
🏅🏅🏅2021年度博客之星TOP100,2021年度博客之星领域TOP5,Python领域优质创作者,欢迎大家找我合作学习(文末有VX 想进学习交流群or学习资料 欢迎+++)
💕入门须知:这片乐园从不缺乏天才,努力才是你的最终入场券!🚀🚀🚀
💓最后,愿我们都能在看不到的地方闪闪发光,一起加油进步🍺🍺🍺
🍉🍉🍉“一万次悲伤,依然会有Dream,我一直在最温暖的地方等你”,唱的就是我!哈哈哈~🌈🌈🌈
🌟🌟🌟✨✨✨

前言:【Python训练营】是针对Python语言学习所打造的一场刷题狂欢party! 对基础知识把握不牢固的话,欢迎参考此套课程:Python公开课 搭配使用最佳嗷~喜欢的话就抓紧订阅起来吧!🍋🍋🍋如果对学习没有自制力或者没有一起学习交流的动力,欢迎私信或者在文末添加我的VX,我会拉你进学习交流群,我们一起交流学习,报团打卡

@TOC

题目描述

题目描述
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

如果一个分数的分子和分母的最大公约数是 1,这个分数称为既约分数。

请问,有多少个既约分数,分子和分母都是 1 到 2020 之间的整数(包括 1 和 2020)?

运行限制
最大运行时间:2s
最大运行内存: 128M

解题思路

  • 两层循环遍历两个数求其最大公倍数,是1则符合要求
  • math.gcd()方法返回两个整数int1和int2的最大公约数。math.gcd(int1,int2)

源码分享

# Time    : 2022/2/15 13:07
# File    : 既约分数.py
# Author  : 是Dream呀!
# VX      : Xu18300396393
# 一万次悲伤,依然会有Dream,我一直在最温暖的地方等你!
import math
count = 0
for i in range(1,2021):
    for j in range(1,2021):
        if math.gcd(i,j) == 1:
            count += 1
print(count)

学习总结

1.最大公约数 greatest common divisor

import math
#求这两个整数的最大公约数
print (math.gcd(3, 6))
print (math.gcd(6, 12))
print (math.gcd(12, 36))
print (math.gcd(-12, -36))
print (math.gcd(5, 12))
print (math.gcd(10, 0))
print (math.gcd(0, 34))
print (math.gcd(0, 0))

math.gcd()方法返回两个整数int1和int2的最大公约数。

提示:gcd(0,0)返回0。

2.最小公倍数 lowest common multiple
这里要特别注意一下,math函数中没有像求最大公约数的gcd函数一样去求最小公倍数!!!
lcm()函数在math库中是不存在的,所以说我们需要依靠gcd()库去间接完成求最小公倍数的工作!
因为除法是有小数点存在的,所以说前面我们需要加上int转化为整数。

import math
a = 25
b = 35
print(type((a * b) / math.gcd(a, b)))
# <class 'float'>
import math
a = 25
b = 35
print(int((a * b) / math.gcd(a, b)))

🏅今天是我在Python训练营的第 21 天,希望每天都能见到最棒的你🏅

🌲🌲🌲 好啦,这就是今天要分享给大家的全部内容了
❤️❤️❤️如果你喜欢的话,就不要吝惜你的一键三连了~
在这里插入图片描述
在这里插入图片描述

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。