
基础经典问题
Meropidae
你的关注是我最大的动力
展开
-
Python基础经典问题-约瑟夫问题
n个人按1,2,3,… ,n编号,并顺序围坐一圈。开始按照1,2,3,… ,m 报数,凡报到 m 的出列,直到所有人出列为止。 算法如下: 1)建立一个列表lb存放n个值 2)遍历该列表,从1开始计数,到第m个值将其从列表删除。然后继续从1开始计数,数到第m个值将其从列表删除。 3)以此类推,直到列表中没有元素为止 编写程序,输入人数n和序号m,输出出圈的序号。#列表综合案例2:约瑟夫问题#n代表总人数,m代表出圈间隔序号数n,m=eval(input()) #原创 2021-11-01 17:03:47 · 4937 阅读 · 1 评论 -
Python基础经典问题-杨辉三角形
在屏幕上输出杨辉三角形图形 例如 输入 6 输出结果为:提示:每行数据就是一个单列表,多行数据构成列表的嵌套。n = eval(input()) #num为杨辉三角的行数t=[]print('[1]')for i in range(n): r=[1] t.append(r) if i ==0 : continue for j in range(i-1): r.append(t[i-1][j]+t[i-1][j+1])原创 2021-11-01 17:01:17 · 623 阅读 · 0 评论 -
Python基础经典问题-天天向上的力量
一年365天,以第1天的能力值为基数,记为1.0,当好好学习时能力值相比前一天提高1‰,当没有学习时由于遗忘等原因能力值相比前一天下降1‰。每天努力和每天放任,一年下来的能力值相差多少呢?import math dayup = math.pow((1.0 + 0.001), 365) # 每天提高0.001 daydown = math.pow((1.0 - 0.001), 365) # 每天荒废0.001 print("向上: %.2f, 向下: %.2f."%(dayup, daydown)) 如果原创 2021-10-20 23:21:20 · 14430 阅读 · 0 评论 -
Python基础经典问题-特殊图形的输出(星号三角形)
1.键盘输入m行n列,在屏幕上输出m行n列的*行图案 例如输入6,7 输出为:m,n= eval(input())for i in range(m): for x in range(n): print('*',end='') print()2.从键盘输入m行,在屏幕上输出m行的直角图案例如输入:8 输出为:m=eval(input())for i in range(1,m+1): for j in range(1,2*i):原创 2021-10-20 23:15:53 · 27067 阅读 · 5 评论 -
Python基础经典问题-输出给定范围内的所有素数
输出给定范围以内的所有素数。输出时,每行显示10个数。 程序从测试集中读取到数据范围m,求2~m之间所有素数。素数:除1与本身n以外没有其他约数。用2...n-1每个数去除n,都不能除尽。如2、3、5、7、11、 13等。m=eval(input()) #输入范围l=[2]c=0for i in range(2,m+1): for j in range(2,i): if i%j==0: break elif原创 2021-10-20 22:55:44 · 7092 阅读 · 1 评论 -
python基础经典问题-判断身份证号码是否有效
输入一个身份证号,判断其是否有效: 若不为18位,提示“长度错误”; 若前17位不为数字,提示“有无效字符”; 最后一位为校验码,若错误,提示”校验码错误”, 若校验码正确,提示“校验码正确”。...原创 2021-10-20 22:51:55 · 9416 阅读 · 3 评论 -
python基础经典问题-字母金字塔
输入行数,打印如下字母金字塔图形:输入:7 打印图形如下:提示: 打印图案关键是找出其中的规律。 根据打印第几行,算出每行打印多少列。 输出的每一行包括三部分组成:空格、字符串和换行。n=eval(input())list1=list('ABCDEFGHIJKLMNO') #正序输出的部分list2=list('ONMLKJIHGFEDCBA') #倒序输出的部分for i in range(1,n+1): #最外循环为打印行 for j in原创 2021-10-20 22:45:54 · 12521 阅读 · 2 评论 -
Python基础经典问题-凯撒密码加密
凯撒密码是古罗马凯撒大帝用来对军事情报进行加密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为字母表序列该字符后面第三个字符对应关系如下: 原文:abcdefghijklmnopqrstuvwxyz 密文:defghijklmnopqrstuvwxyzabc#凯撒密码加密p= input() t='' #输入明文#代码开始 for c in p : if 'a'<=c<='z': t+=ch...原创 2021-10-19 22:50:31 · 3960 阅读 · 1 评论 -
Python基础经典问题-前n项之和
求s= a + aa + aaa + … + aa…a 的值(最后一项中 a 的个数为 n ),其中 a 是一个1~9的数字,例如: 当a=2,n=5时,s= 2 + 22 + 222 + 2222 + 22222num = eval(input())numbers =eval(input())l1 = []a = 0for i in range(0,numbers): a += num * (10 ** i) l1.append(a)c=sum(l1)print (c原创 2021-10-19 22:24:16 · 7531 阅读 · 0 评论 -
Python基础经典问题-求sin正弦值
完成程序,从键盘输入x的值,求 sinx=x−3!x3+5!x5−7!x7+⋯ 直到最后一项绝对值小于le的-7次方(即10−7次方)为止(注:x为弧度值)。结果保留10位小数。#求正弦值from math import *x=eval(input()) #输入弧度值#代码开始t=xs=0n=1while abs(t)>=10**(-7): s+=t n+=2 t*=-x**2/(n*(n-1))print('%.10f'%s)注意循环结构内原创 2021-10-19 22:11:15 · 8643 阅读 · 1 评论 -
Python基础经典问题-水仙花数
水仙花数是一个三位数的自然数,该数各位数字的立方和等于该数本身,例如:153为水仙花数,13+53+33=153。 由小到大分行输出所有水仙花数。提示:需要求出数值上的每位数字。#水仙花数由小到大分行输出for i in range(100,1000): a=i//100 b=(i-a*100)//10 c=i%10 if a**3+b**3+c**3==i: print(i)重在理解循环结构和数值运算。...原创 2021-10-19 22:04:57 · 1912 阅读 · 0 评论