![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python_算法
上课不要睡觉了
逝者如斯夫,不舍昼夜
展开
-
《数据结构与算法》线性结构复习题
期末数算复习资料,程序题是使用Python解答原创 2022-06-22 11:30:15 · 2676 阅读 · 0 评论 -
Python实现后序表达式计算(代码)
首先使用一个函数完成输入中序转后序中序转后序前面的博客有写Python使用栈将中序转后序(代码)from pythonds.basic import Stack # 引入栈def infix_to_postfix(infix_expr): prec = {} prec["*"] = 3 prec["/"] = 3 prec["+"] = 2 prec["-"] = 2 prec["("] = 1 op_stack = Stack()原创 2022-05-04 22:46:25 · 1090 阅读 · 2 评论 -
Python使用栈将中序转后序(代码)
# 从中序表达式到后序表达式的转换# string模块中定义了一些常用的属性(包含所有数字,字母,可打印的所有ascii码等)from pythonds.basic import Stack # 引入栈import stringdef infix_to_postfix(infix_expr): prec = {} # 用字典存优先级 # precedence优先;优先权 prec["*"] = 3 prec["/"] = 3 prec["+"] = 2原创 2022-05-04 13:39:16 · 1027 阅读 · 0 评论 -
Python使用栈十进制转二进制、十进制转任意进制(代码)
# 10转2from pythonds.basic import Stack # 引入栈def divide_by2(dec_number): rem_stack = Stack() while dec_number > 0: rem = dec_number % 2 # 取余 rem_stack.push(rem) # 入栈 dec_number = dec_number // 2 # 取整 bin_strin原创 2022-05-03 21:45:48 · 1809 阅读 · 0 评论 -
使用Python堆栈判断三种(大中小括号)符号是否匹配
这里可以与上一条结合起来看Python使用堆栈匹配括号(代码)# 匹配符号from pythonds.basic import Stack # 引入栈def par_checker(symbol_string): s = Stack() balanced = True # 括号对应状态 index = 0 # 下标 while index < len(symbol_string) and balanced: symbol = symbo原创 2022-05-03 17:03:30 · 556 阅读 · 0 评论 -
Python使用堆栈匹配括号(代码)
这里需要引入包pythonds具体文件和安装方法请访问这条博客:PyCharm环境中安装pythonds-1.2.1-py3-none-any.whl的方法.代码:# 匹配括号from pythonds.basic import Stack # 引入栈def par_checker(symbol_string): s = Stack() balanced = True # 括号对应状态 index = 0 # 下标 while index < len原创 2022-05-03 10:17:23 · 594 阅读 · 0 评论 -
Python——栈
首先用一张图来表示栈:栈只有一个开口,在这个开口完成入栈和出栈。并且入栈是按照顺序堆叠,先入栈的被“叠”在最下面,后入栈的在上面。想要最下面的出来,必须它的上面没有东西。即先进后出,后进先出。下面通过Python实现栈# 用Python实现栈class Stack: def __init__(self): self.items = [] def isEmpty(self): return self.items == [] def push原创 2022-05-01 22:20:21 · 1558 阅读 · 0 评论 -
Python(代码)——生成list列表的4种方法
def test1(): l = [] for i in range(10): l = l + [i] print(l)def test2(): l = [] for i in range(10): l.append(i) print(l)def test3(): l = [i for i in range(10)] print(l)def test4(): l = list(range(1原创 2022-04-27 10:52:17 · 8522 阅读 · 0 评论 -
Python(算法综合)问题 G: 图的遍历——广度优先搜索
问题 G: 图的遍历——广度优先搜索题目描述广度优先搜索遍历类似于树的按层次遍历的过程。其过程为:假设从图中的某顶点v出发,在访问了v之后依次访问v的各个未曾被访问过的邻接点,然后分别从这些邻接点出发依次访问它们的邻接点,并使“先被访问的顶点的邻接点”先于“后被访问的顶点的邻接点”被访问,直至图中所有已被访问的顶点的邻接点都被访问到。若此时图中尚有顶点未被访问,则另选图中一个未曾被访问的顶点作为起始点。重复上述过程,直至图中所有顶点都被访问到为止。其算法可以描述如下:在本题中,原创 2022-04-26 22:06:59 · 1840 阅读 · 0 评论 -
Python(算法综合)问题 E: 一山不容二虎——n皇后问题_在 n×n 的棋盘上放置彼此不受攻击的 n 个皇后。设计算法在 n×n 的棋盘上放置 n 个皇后,使其彼 此不受攻击。
问题 E: 一山不容二虎——n皇后问题题目描述在 n×n 的棋盘上放置彼此不受攻击的 n 个皇后。按照国际象棋的规则,皇后可以攻击与 之在同一行、同一列、同一斜线上的棋子。设计算法在 n×n 的棋盘上放置 n 个皇后,使其彼 此不受攻击。输入输入t,表示有t组样例请输入皇后的个数 n输出输出能排列的方案数样例输入14样例输出2提示n<=10解答:n, m = map(int, input().split())li = tuple(map(int, i原创 2022-04-26 19:33:37 · 1279 阅读 · 0 评论 -
Python(算法综合)问题 D: 兵贵神速-快速排序
问题 D: 兵贵神速-快速排序题目描述未来的战争是科技的战争。假如 A 国受到 B 国的导弹威胁,那么 A 国就要启用导弹防御系统,根据卫星、雷达信息快速计算出敌方弹道导弹发射点和落点的信息,将导弹的跟踪和评估数据转告地基雷达,发射拦截导弹摧毁敌方导弹或使导弹失去攻击能力。如果 A 国的导弹防御系统处理速度缓慢,等算出结果时,导弹已经落地了,还谈何拦截? 现代科技的发展,速度至关重要。我们以最基本的排序为例,生活中到处都用到排序,例如各种比赛、奖学金评选、推荐系统等,排序算法有很多原创 2022-04-26 16:51:13 · 729 阅读 · 0 评论 -
Python(算法综合)问题 A: 一场说走就走的旅行-最短路径(Dijkstra迪杰斯特拉算法)
问题 A: 一场说走就走的旅行-最短路径题目描述有一天,孩子回来对我说:“妈妈,听说马尔代夫很不错,放假了我想去玩。”马尔代夫?我也想去!没有人不向往一场说走就走的旅行!“其实我想去的地方很多,呼伦贝尔大草原、玉龙雪山、布达拉宫、艾菲尔铁塔……”小孩子还说着他感兴趣的地方。于是我们拿出地图,标出想去的地点,然后计算最短路线,估算大约所需的时间,有了这张秘制地图,一场说走就走的旅行不是梦! “哇,感觉我们像凡尔纳的《环游地球八十天》,好激动!可是老妈你也太 out 了,学计算机的最短路线原创 2022-04-26 14:43:57 · 1558 阅读 · 0 评论 -
Python(分治算法)问题 G: 剪绳子_有N根绳子,第i根绳子长度为Li,现在需要M根等长的绳子,你可以对N根绳子进行任意裁剪(不能拼接),请你帮忙计算出这M根绳子最长的长度是多少。
问题 E: 解方程题目描述有N根绳子,第i根绳子长度为Li,现在需要M根等长的绳子,你可以对N根绳子进行任意裁剪(不能拼接),请你帮忙计算出这M根绳子最长的长度是多少。输入第一行包含2个正整数N、M,表示原始绳子的数量和需求绳子的数量。第二行包含N个整数,其中第 i 个整数Li表示第 i 根绳子的长度。已知:1≤N,M≤100000, 0<Li<10^9输出输出一个数字,表示裁剪后最长的长度,保留两位小数。样例输入3 43 5 4样例输出2.50解答(原创 2022-04-22 13:04:40 · 1185 阅读 · 1 评论 -
Python(分治算法)问题 F: 求逆序对_给定一个序列a1,a2,…,an,如果存在i<j并且ai>aj,那么我们称之为逆序对,求逆序对的数目。
问题 F: 求逆序对题目描述给定一个序列a1,a2,…,an,如果存在i<j并且ai>aj,那么我们称之为逆序对,求逆序对的数目。注意:n<=10^5,ai<=10^5输入第一行为n,表示序列长度。接下来的n行,第i+1行表示序列中的第i个数。输出所有逆序对总数。样例输入43232样例输出3解答(分治算法):def merge(a, lt, rt): mid = (lt + rt) // 2 x = 0 # 统计逆序对原创 2022-04-22 12:38:30 · 2692 阅读 · 0 评论 -
Python(分治算法)问题 E: 解方程_求方程f(x)=2^x+3^x-4^x=0在[1,2]内的根。
问题 E: 解方程题目描述求方程f(x)=2^x+3^x-4^x=0在[1,2]内的根。输入输入m(0<=m<=8),控制输出精度输出三个实根(根与根之间留有空格)输出方程f(x)=0的根,x的值精确小数点m位样例输入3样例输出1.507解答(分治算法):n = int(input())def func(x): return 0.5 ** x + 0.75 ** x - 1left = 1right = 2middle1 = 1.5whil原创 2022-04-22 12:17:31 · 1474 阅读 · 0 评论 -
Python(分治算法)问题 D: 取余运算_输入b,p,k的值,求b^p mod k的值(即b的p次方除以k的余数)。其中b,p,k*k为32位整数。
问题 D: 取余运算题目描述输入b,p,k的值,求b^p mod k的值(即b的p次方除以k的余数)。其中b,p,k*k为32位整数。输入输入b,p,k的值输出输出b^p mod k的值样例输入2 10 9 样例输出2^10 mod 9=7解答(分治算法):# 二分法求列表中最小值及下标 def fun(ls, lt, rt, res): # 1.[lt,rt]区间的元素个数小于等于2,直接求解 if rt - lt < 2: res原创 2022-04-22 10:04:05 · 1416 阅读 · 0 评论 -
Python(分治算法)问题 C: 一元三次方程求解_有形如:ax3+bx2+cx+d=0这样的一个一元三次方程。给出该方程中各项的系数(a,b,c,d均为实数),并约定该方程存在三个不同实根(根的范
问题 C: 一元三次方程求解题目描述有形如:ax3+bx2+cx+d=0这样的一个一元三次方程。给出该方程中各项的系数(a,b,c,d均为实数),并约定该方程存在三个不同实根(根的范围在-100至100之间),且根与根之差的绝对值≥1。要求由小到大依次在同一行输出这三个实根(根与根之间留有空格),并精确到小数点后2位。 提示:记方程f(x)=0,若存在2个数x1和x2,且x1<x2,f(x1)*f(x2)<0,则在(x1,x2)之间一定有一个根。输入a,b,c,d原创 2022-04-21 17:02:45 · 2432 阅读 · 0 评论 -
Python(分治算法)问题 B: 分金块_有一个老板有一袋金块。每个月将有两名雇员会因其优异的表现分别被奖励一个金块。按规矩,排名第一的雇员将得到袋中最重的金块,排名第二的雇员将得到袋中最轻的金块。
问题 B: 分金块题目描述有一个老板有一袋金块。每个月将有两名雇员会因其优异的表现分别被奖励一个金块。按规矩,排名第一的雇员将得到袋中最重的金块,排名第二的雇员将得到袋中最轻的金块。根据这种方式,除非有新的金块加入袋中,否则第一名雇员所得到的金块总是比第二名雇员所得到的金块重。如果有新的金块周期性的加入袋中,则每个月都必须找出最轻和最重的金块。假设有一台比较重量的仪器,我们希望用最少的比较次数找出最轻和最重的金块。本题要求用二分算法完成。输入输入数据有多行,第一行为金块个数n(原创 2022-04-21 16:52:40 · 844 阅读 · 0 评论 -
Python(分治算法)问题 A: 找出伪币_给你一个装有n枚硬币的袋子。n枚硬币中有一个是伪造的,并且那个伪造的硬币比真的硬币要轻一些。你的任务是找出这枚伪造的硬币。
问题 A: 找出伪币题目描述给你一个装有n枚硬币的袋子。n枚硬币中有一个是伪造的,并且那个伪造的硬币比真的硬币要轻一些。你的任务是找出这枚伪造的硬币。输入测试数据有多行,第一行是金币的数量n(n为正整数,并且n<=5000000);接下来一行是n枚硬币的重量,用空格隔开。输出输出假币的位置及重量,用空格隔开。样例输入443 43 43 1 样例输出4 1解答(贪心算法):while True: try: s = list(map(int原创 2022-04-18 19:33:18 · 3947 阅读 · 0 评论 -
Python(贪心算法)问题 H: 导弹拦截_某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统,但是这种拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的
问题 H: 导弹拦截题目描述某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统,但是这种拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,由于该系统还在试用阶段。所以一套系统有可能不能拦截所有的导弹。输入导弹依次飞来的高度(雷达给出的高度不大于30000的正整数)。计算要拦截所有导弹最小需要配备多少套这种导弹拦截系统。输入n颗依次飞来的高度(1≤n≤1000)输出要拦截所有导弹最小配备的系统数k原创 2022-04-16 23:05:24 · 3053 阅读 · 0 评论 -
Python(贪心算法)问题 G: 最大整数_设有n个正整数(n≤20),将它们联接成一排,组成一个最大的多位整数。例如:n=3时,3个整数13,312,343联接成的最大整数为:34331213
问题 G: 最大整数题目描述设有n个正整数(n≤20),将它们联接成一排,组成一个最大的多位整数。 例如:n=3时,3个整数13,312,343联接成的最大整数为:34331213 又如:n=4时,4个整数7,13,4,246联接成的最大整数为:7424613输入输入格式如下: 第一行为正整数n,第2行为n个正整数,2个正整数之间用空格间隔。输出输出n个数连接起来的最大整数样例输入313 312 343样例输出34331213解答(贪心算法):from funct原创 2022-04-16 22:55:17 · 1434 阅读 · 0 评论 -
Python(贪心算法)问题 F: 节目安排_假期到了,天宝终于可以无压力的看电视了。但是他喜欢的节目有点多,如何尽可能多的看到完整的节目。
问题 F: 节目安排题目描述假期到了,天宝终于可以无压力的看电视了。但是他喜欢的节目有点多,如何尽可能多的看到完整的节目。他把喜欢的节目时间表给你,请帮他安排一下吧。输入输入包含多组测试数据。每组输入的第一行是一个整数n(n<=100),表示天宝喜欢的节目的总数。接下来n行,每行输入两个整数si和ei(1<=i<=n),表示第i个节目的开始和结束时间,为了简化问题,每个时间都用一个正整数表示。当n=0时,输入结束。输出对于每组输入,输出能完整看到的电视节目的个原创 2022-04-16 22:26:30 · 1021 阅读 · 0 评论 -
Python(贪心算法)问题 E: 便利店_天宝来到便利店想买些饮料。便利店有各种型号的瓶装饮料售卖,不同型号的饮料卖不同的价格。
问题 E: 便利店题目描述天宝来到便利店想买些饮料。便利店有各种型号的瓶装饮料售卖,不同型号的饮料卖不同的价格。1瓶0.25升的卖A元,1瓶0.5升的饮料卖B元,1瓶1升的卖C元,1瓶2升的卖D元。便利店里每种饮料都是无限供应。天宝要买N升的饮料,最少需要花多少钱呢?聪明的你写个程序帮她算算吧。已知 1) 1≤A,B,C,D≤10^8 ,1≤N≤10^9 2) 输入的数据都是整数 输入输入数据按照下面格式A B C DN输出输出天宝要买N升的饮料所需要原创 2022-04-16 21:38:09 · 904 阅读 · 0 评论 -
Python(贪心算法)问题 D: 删数问题_输入一个高精度的正整数N,去掉其中任意S个数字后剩下的数字按原左右次序组成一个新的正整数。
问题 D: 删数问题题目描述输入一个高精度的正整数N,去掉其中任意S个数字后剩下的数字按原左右次序组成一个新的正整数。编程对给定的N和S,寻找一种方案使得剩下的数字组成的新数最小。输出新的正整数。(N不超过240位)输入数据均不需判错。输入ns输出最后剩下的最小数。样例输入1754384样例输出13解答(贪心算法):n = list(input())# 将每个数字存放于列表中s = int(input())print(n)li = []i = 0whil原创 2022-04-16 18:51:13 · 3860 阅读 · 0 评论 -
Python(贪心算法)问题 C: 活动选择_学校在最近几天有n个活动,这些活动都需要使用学校的大礼堂,在同一时间,礼堂只能被一个活动使用。
问题 C: 活动选择题目描述学校在最近几天有n个活动,这些活动都需要使用学校的大礼堂,在同一时间,礼堂只能被一个活动使用。由于有些活动时间上有冲突,学校办公室人员只好让一些活动放弃使用礼堂而使用其他教室。现在给出n个活动使用礼堂的起始时间bi和结束时间ei(bi < ei<=32767),请你帮助办公室人员安排一些活动来使用礼堂,要求安排的活动尽量多。输入第一行一个整数n(n<=1000); 接下来的n行,每行两个整数,第一个bi,第二个是ei(bi < ei<=原创 2022-04-16 17:42:50 · 1843 阅读 · 0 评论 -
Python(贪心算法)问题 B: 分牌_有 N 堆纸牌,编号分别为 1,2,…, N。每堆上有若干张,但纸牌总数必为 N 的倍数。可以在任一堆上取若干张纸牌,然后移动。
问题 B: 分牌题目描述有 N 堆纸牌,编号分别为 1,2,…, N。每堆上有若干张,但纸牌总数必为 N 的倍数。可以在任一堆上取若干张纸牌,然后移动。移牌规则为:在编号为 1 堆上取的纸牌,只能移到编号为 2 的堆上;在编号为 N 的堆上取的纸牌,只能移到编号为 N-1 的堆上;其他堆上取的纸牌,可以移到相邻左边或右边的堆上。现在要求找出一种移动方法,用最少的移动次数使每堆上纸牌数都一样多。例如 N=4,4 堆纸牌数分别为: ① 9 ② 8 ③ 17 ④ 6移动3次可达到目的:从原创 2022-04-16 17:02:02 · 1417 阅读 · 0 评论 -
Python(贪心算法)问题 A: 和最大_在N行M列的正整数矩阵中,要求从每行中选出1个数,使得选出的总共N个数的和最大。
问题 A: 和最大在N行M列的正整数矩阵中,要求从每行中选出1个数,使得选出的总共N个数的和最大。已知1< =N< =10, 1< =M< =10输入输入数据有多行,第一行是矩阵的行数N和列数M接下来的N行M列为输入数据(正整数,不超过10000)输出输出N行元素和的最大值。样例输入3 31 2 34 5 67 8 9样例输出18解答:a, b = map(int, input().split())# map() 会根据提供的函数对指定序列原创 2022-04-13 19:39:31 · 1410 阅读 · 0 评论 -
使用Python异序词检测示例_清点法_排序法_蛮力法_计数法
要展示不同数量级的算法,一个好例子就是经典的异序词检测问题。如果一个字符串只是重排了另一个字符串的字符,那么这个字符串就是另一个的异序词,比如 heart 与 earth ,以及 python 与 typhon 。为了简化问题,假设要检查的两个字符串长度相同,并且都是由26个英文字母的小写形式组成的。我们的目标是编写一个布尔函数,它接受两个字符串,并能判断它们是否为异序词。1、方案1:清点法def anagram_solution1(s1, s2): # 清点法 alist = list(s2原创 2022-04-04 11:51:31 · 1275 阅读 · 0 评论 -
Python算法的几个案例(1)_迭代法求解平方根_计算前n个整数之和_time()计算执行时间_不使用循环计算前n个整数之和
1、通过牛顿迭代法求解平方根链接: https://blog.csdn.net/XQC_KKK/article/details/123790167.2、计算前n个整数之和def sumOfN(n): theSum = 0 for i in range(1, n + 1): theSum += i return theSumprint(sumOfN(3))3、计算执行时间import timedef sumOfN2(n): start =原创 2022-03-30 09:13:06 · 807 阅读 · 0 评论 -
数算(Python)——牛顿迭代法(巴比伦算法)求解平方根
计算x\sqrt{x}x的方法巴比伦算法:猜测一个大于0近似值。x0x_{0}x0使用被开方数除以近似值。xx0\frac{x}{x_{0}}x0x计算前两步的数的平均值。x1=12(x0+xx0)x_{1}=\frac{1}{2}(x_{0}+\frac{x}{x_{0}})x1=21(x0+x0x)令该平均值为新的近似值,回到步骤2,循环计算。下面的算法就是在使用了巴比伦算法进行迭代计算x\sqrt{x}x。def square_root(n): root原创 2022-03-28 15:32:46 · 7040 阅读 · 2 评论 -
1.2压缩算法
这里是使用Python对四种核苷酸(A、C、G、T)的压缩实现class CompressedGene: def __init__(self,gene:str)->None: self._compress(gene) #压缩 def _compress(self,gene:str)->None: self.bit_string:int=1 for nuclleotide in gene.upper():原创 2022-01-18 16:48:55 · 283 阅读 · 0 评论 -
1.1斐波那契序列
def fib1(n:int) -> int: if n < 2: return n return fib1(n - 1) + fib1(n - 2)if __name__ == "__main__": print(fib1(5)) print(fib1(6)) print(fib1(10))原创 2022-01-17 20:19:32 · 642 阅读 · 0 评论 -
Python的几个程序练习
1、n!a = eval(input("输入一个要计算阶乘的数"))n = 1if a == 0: n = 0for i in range(1,a+1): n *= iprint("{}!={}".format(a,n))2、1!+2!+3!···n!k = eval(input("请输入计算阶乘的数值:"))sum1 = 0if k == 0: sum1 = 1for i in range(1,k+1): t = 1 for j in ran原创 2022-01-02 20:46:10 · 1631 阅读 · 8 评论 -
Python期末小复习(1)
1.完成输出for i in range(1,6): n =int(i*(i-1)/2+1) for j in range(i): print(n,end=" ") n += 1 print()2.完成输出for i in range(1,5): n = i for j in range(4): print(n,end=" ") n += 4 print()3.完成输出for原创 2021-12-28 19:45:45 · 594 阅读 · 0 评论 -
Python第五次作业
1.设计一个Group类,在该类中包括:一个数据成员(每个学生的分数)、两个类成员total(班级的总分)和count(班级的人数)。成员方法setScore(score)用于设置分数、成员方法sum()用于累计总分、类方法、average()用于求平均值。交互式输入学生的成绩,显示该组的总分和平均分。class Group: total = count = 0 def __init__(self, score): self.score = score s原创 2021-12-22 11:07:18 · 4981 阅读 · 2 评论 -
Python——递归函数
如果一个函数调用其他函数,会形成函数的嵌套调用;如果一个函数调用自身,则会形成函数的递归调用。1.递归的定义递归是函数在其定义或声明中直接或间接调用自身的一种方法。递归的基本思想是:在求解一个问题时,将这个问题递退简化为规模较小的同一问题,并设法求得这个规模较小的问题的解,在此基础上再递进求解原来的问题。如果经递退简化的问题还难以求解,可以再次进行递退简化。直至将问题递退简化成一个容易求解的基本问题为止。在此基础上进行递进求解,直至求得原问题的解。斐波那契数列是以数学家 Leonardo Fi原创 2021-11-28 14:21:58 · 645 阅读 · 0 评论 -
Python——作业(4)九九加法表_随机生成100个1到100之间的数_统计并显示这100个数中1到100之间数出现的次数_随机生成四则运算测验题_并且提交题目后打分
1、编程用循环实现显示九九加法表(这里网上搜到两种加法表,这一一实现)代码 1:for i in range(1,10): for j in range(1,i+1): print("{}+{}={:<2}".format(j,i-j+1,i+1),end=" ") print()输出结果 1:代码 2for i in range(1,10): for j in range(1,i+1): print("{}+{}={:&原创 2021-11-22 10:41:39 · 1933 阅读 · 0 评论 -
Python第三次作业_编程实现:s=1/2-2/3+3/4-4/5+…+98/99-99/100_星号金字塔_数字金字塔_空心三角_空心菱形_蒙特卡洛方法
1.编程实现:s=1/2-2/3+3/4-4/5+…+98/99-99/100Python程序:'''编程实现:s=1/2-2/3+3/4-4/5+...+98/99-99/100'''sum1 = 0for i in range(1,100): sum1 += i/(i+1)*(-1)**(i+1)print(sum1)运行结果:2.从键盘输入一个1到10的数,例如输入8,用单重for循环实现(金字塔):Python程序'''从键盘输入一个1到10的数,例如输入8,用单重fo原创 2021-11-07 20:43:19 · 3265 阅读 · 0 评论 -
Python使用for/while嵌套实现计算1!+2!+3!_斐波那契数列_求出总分最高值并输出_求1-3+5-7+...-99+101_三位数的平方值的后三位等于该数_企业发放奖金根据利润提成
1.使用for嵌套实现计算1!+2!+3!+。。。+10!sum1 = 0for i in range(1,11): n = 1 for j in range(1,i+1): n *= j sum1 += nprint(sum1)2.使用while嵌套实现计算1!+2!+3!+。。。+10!n = 1sum1 = 0while n <= 10: fac = a = 1 while a <= n: fac *=原创 2021-10-27 00:42:09 · 3825 阅读 · 0 评论 -
Python——数字金字塔
例 4-16使用 *号输出金字塔形状。程序在第 i 行,每行打印(2i-1)个星号(*),在之前输出 n - i 个空格,n 是用户申请打印的行数。#ex0416.pyn = eval(input("请输入打印的行数:"))for i in range(1,n+1): print(' '*(n-i)+'*'*(2*i-1))运行结果:例 4-17输出数字金字塔。#ex0417.pyn = eval(input("请输入打印的行数:"))for x in range(1,n+1)原创 2021-10-23 17:19:48 · 19554 阅读 · 7 评论