基础数学算法
2022/1/4 1:08:53
本文主要是介绍基础数学算法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
基础数学
- 等差数列
- 求最大公约(因)数
- 求最小公倍数
等差数列
等差数列 an 的通项公式:an = a1 + ( n - 1) *d。其中,d为公差,a1为起始项,n为第n项。
等差数列求和公式:前n项和公式为:Sn = na1 + n(n - 1) * d / 2
题目:等差数列 2,5,8,11,14。。。。(从 2 开始的 3 为公差的等差数列),输出求等差数列前n项和。
n = int(input()) print(int(n*2+n*(n-1)*3/2))
求最大公约(因)数
辗转相除法求最大公约数:
# 辗转相除法求最大公约数 a = 20 b = 12 def gcd(m, n): # 递归结束条件:如果余数为0,则返回n if m % n == 0: return n # 将规模缩小:递归求n和余数的最大公约数 return gcd(n, m % n) gcd(a, b)
求最小公倍数
算法:(a,b最小公倍数) = a*b / (a,b最大公约数)
# 使用辗转相除法求最大公约数,然后再求最小公倍数 expression = input().split(' ') a = int(expression[0]) b = int(expression[1]) # 将a设置为a,b中较大的数 if a < b: a, b = b, a # 辗转相除法求最大公约数 def gcd(m, n): if m % n == 0: return n return gcd(n, m % n) print(int(a*b / gcd(a, b)))
这篇关于基础数学算法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南