当前位置: 首页 > article >正文

python-题库篇-数学

文章目录

  • 求最大公约数和最小公倍数
  • 斐波那契数列
  • 求和运算
  • 求前n阶乘的和
  • 求年龄

求最大公约数和最小公倍数

两个数的最大公约数是两个数的公共因子中最大的那个数;两个数的最小公倍数
则是能够同时被两个数整除的最小的那个数。

输入:(120 和 60 是通过键盘输⼊的)
x = 120
y = 60
输出:
60 和 120 的最大公约数是:60
60 和 120 的最小公倍数是:120

答案:

x = int(input('x = '))
y = int(input('y = '))

# 如果 x 大于 y 就交换 x 和 y 的值
if x > y:
	# 通过下面的操作将 y 的值赋给 x, 将 x 的值赋给 y
	temp = y
	y = x
	x = temp
	# 从两个数中较的数开始做递减的循环
for factor in range(x, 0, -1):
	if x % factor == 0 and y % factor == 0:
		print('{}和{}的最大公约数是:{}' .format(x, y, factor))
		print('{}和{}的最小公倍数是:{}' .format(x, y, x * y // factor))
		break

在这里插入图片描述

斐波那契数列

斐波那契数列(Fibonacci sequence),又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……。

在数学上,费波那契数列是以递归的方法来定义:
F 1 F_1 F1 = 1 (n=1)
F n F_n Fn = F[n-1]+ F[n-2] (n=>2)

输入:(数字 10 是通过键盘输⼊的)
请输入需要打印的斐波那契数列的数据个数(从 1 开始):10
输出:(每一个数据项之间用空格)
1 1 2 3 5 8 13 21 34 55
答案:

def fib(n):
	a, b = 1, 1
	#通过循环来打印数据
	for i in range(n):
		print(a,end = " ")
		temp = a
		a = b
		b = temp+b
num = int(input("请输入需要打印的斐波那数列的数据个数(从 1 开始):"))
fib(num)

在这里插入图片描述

求和运算

求 s=a+aa+aaa+aaaa+aa…a 的值,其中 a 是一个数字。例如:
2+22+222+2222+22222(此时共 有 5 个数相加),几个数相加由键盘控制。
输入:
a = 4
n = 5

输出:
4
44
444
4444
44444
前 5 个数的和为:49380
答案:

Tn = 0
Sn = []
a = int(input('a = '))
n = int(input('n = '))

for count in range(n):
	Tn = Tn + a
	a = a * 10
	Sn.append(Tn)
	print(Tn)
print("前{}个数的和为:{}".format(n, sum(Sn)))

在这里插入图片描述

求前n阶乘的和

比如求 1+2!+3!+…+20!的和。
输入:(不要输入太大的 n 防止数据太大,电脑卡死)
n = 20
输出:
前 20 阶乘的和是:2561327494111820313

答案:

n = int(input("n = "))
s = 0
t = 1
for i in range(1,n+1):
	t *= i
	s += t
print ("前{}阶乘的和是:{}" .format(n,s))

在这里插入图片描述

求年龄

有 5 个人坐在一起,问第五个⼈人多少岁?他说比第 4 个人大 2 岁。问第 4 个人岁数,他说比第 3 个人大 2 岁。问第三个人,又说比第 2 人大两岁。问第 2个人,说比第一个人大两岁。最后问第一个人,他说是 10 岁。请问第五个人多大?

输入:无

输出:第五个人的年龄

答案:

def age(n):
	if n == 1:
		c = 10
	else:
		c = age(n - 1) + 2
	return c
print ("第五个人的年龄是:",age(5))

在这里插入图片描述


http://www.kler.cn/a/228474.html

相关文章:

  • linux下springboot项目nohup日志或tomcat日志切割处理方案
  • 前沿技术趋势洞察:2024年技术的崭新篇章与未来走向!
  • 数据结构-队列
  • 接口自动化测试
  • mybatis的多对一、一对多的用法
  • 浅谈计算机网络03 | 现代网络组成
  • 【QT+QGIS跨平台编译】之二十六:【SpatialIndex+Qt跨平台编译】(一套代码、一套框架,跨平台编译)
  • Java技术栈 —— Hive与HBase
  • 言语必备实词成语——成语(二)
  • 【LeetCode】刷题总结 - 15. 三数之和
  • linux编译ffmpeg动态库
  • figure方法详解之清除图形内容
  • k8s版本升级到1.24.x
  • SpringBoot注解--02---常用注解汇总
  • 电子电器架构——车载网关转发buffer心得汇总
  • Redis核心技术与实战【学习笔记】 - 22.浅谈Redis的ACID相关知识
  • C语言函数递归详解
  • DP算法笔记
  • 机器学习本科课程 实验6 聚类实验
  • UE4运用C++和框架开发坦克大战教程笔记(十七)(第51~54集)
  • Node.js 文件系统操作指南
  • Java实现婚恋交友网站 JAVA+Vue+SpringBoot+MySQL
  • 如何解决部分图片读取转化异常的问题
  • Python中的HTTP代理与网络安全
  • RK3568平台 设备模型基本框架-kobject 和kset
  • 知识图谱概论