网站建设在哪块做,网站功能建设模块,综合办公oa系统,0317网站建设请大家严格按照下面顺序编写圆形生成器程序。 #xff1a;定义函数getCircleArea(r)#xff0c;可以对指定r计算圆面积。计算公式math库的pi*r*r。定义函数get_rList(n)#xff0c;功能#xff1a;输入n个值放入列表并将列表return。输入n#xff0c;调用get_rList(n)获得…请大家严格按照下面顺序编写圆形生成器程序。 定义函数getCircleArea(r)可以对指定r计算圆面积。计算公式math库的pi*r*r。定义函数get_rList(n)功能输入n个值放入列表并将列表return。输入n调用get_rList(n)获得列表rList。遍历rList对每个元素调用getCircleArea并按格式输出。注意需导入程序中所需要的库并提交两个函数的定义。函数接口定义getCircleArea(r) #r代表整数半径get_rList(n) #n代表在函数中输入n个值放入列表。裁判测试程序样例/* 请在这里填写答案 */n int(input())rList get_rList(n)for e in rList:print({:10.3f}.format(getCircleArea(e)))print(type(rList))输入样例3123输出样例3.14212.56628.274import mathdef getCircleArea(r):return math.pi*r*rdef get_rList(n):l[]for i inrange(n):aint(input())l.append(a)returnln int(input())rListget_rList(n)for e inrList:print({:10.3f}.format(getCircleArea(e)))print(type(rList))6-2 jmu-python-组合数据类型-1.计算坐标点欧氏距离 (10 分)读取若干个点每个点放入元组。并将所有点的点信息、点的类型、点与原点的距离打印出来。函数接口定义readPoint() #从一行以,分隔的数中读取坐标放入元组并返回distance(point) #计算point与原点的距离并返回要math库中的函数裁判测试程序样例/* 请在这里填写答案 */n int(input())for i in range(n):p readPoint()print(Point {}, type {}, distance {:.3f}.format(p,type(p),distance(p)))输入格式:输入n代表底下要输入n行点坐标。坐标全部为整数。点坐标x,y,z以,分隔。坐标全部为整数。注意坐标以,分隔相应位置可能无字符或者包含多个空格字符读入时按照0进行处理。输出格式:见输出样例输入样例:51,1,1,,2,,13,1,35,,输出样例:Point (1, 1, 1), type , distance 1.732Point (0, 0, 0), type , distance 0.000Point (2, 0, 1), type , distance 2.236Point (3, 1, 3), type , distance 4.359Point (5, 0, 0), type , distance 5.000import mathdef readPoint():#从一行以,分隔的数中读取坐标放入元组并返回ainput().split(,)for i inrange(len(a)):try:if eval(a[i])0:a[i]int(a[i])except:a[i]0returntuple(a)def distance(point):#计算point与原点的距离并返回要math库中的函数sum0for i in range(3):sumsumpoint[i]*point[i]returnmath.sqrt(sum)n int(input())for i inrange(n):preadPoint()print(Point {}, type {}, distance {:.3f}.format(p,type(p),distance(p)))6-3 jmu-python-组合数据类型-2.坐标点分类 (10 分)在上题(1.计算坐标点欧氏距离)的基础上。将每个点根据距离原点的远近分成两类一类是小于r的点一类是大于等于r的点。步骤如下调用ClassifyPoints(points, r)函数根据输入的半径r进行分类将所有r的点放入b列表。然后将a,b列表以元组的方式返回赋值给pointsTuple。将pointsTuple直接输出。调用printPointsTuple(pointsTuple, r)将r的点集合分情况输出输出还需包含每个点集的平均距离。函数接口定义readPoint() #从一行以,分隔的数中读取坐标放入元组并返回。如果相应位置无数据按0处理。distance(point) #计算point与原点的距离并返回要math库中的函数ClassifyPoints(points, r): #根据r将points中的点分成两类放入两个列表距离小于r与大于等于r。然后将两个列表以元组的形式返回avgDistance(pointList): #计算列表pointList中的所有点到原点的平均距离可利用distance(p)函数printPointsTuple(psTuple, r): #将元组psTuple中的数据按照输出样例格式输出。输出顺序由psTuple中点列表的顺序决定。裁判测试程序样例/* 请在这里填写答案 */n int(input())r int(input())points []for i in range(n):p readPoint()points.append(p)print(Point {}, type {}, distance {:.3f}.format(p,type(p),distance(p)))pointsTuple ClassifyPoints(points, r)print(pointsTuple {}.format(pointsTuple))printPointsTuple(pointsTuple,r)输入格式:输入n代表底下要输入n行点坐标。点坐标x,y,z以,分隔。坐标全部为整数。输入r 代表要以r作为分类依据。注意坐标以,分隔相应位置可能无字符或者包含多个空格字符读入时按照0进行处理。输出格式:见输出样例。注意 两侧均有一个空格,后面要有一个空格。printPointsTuple中计算的平均距离保留3位小数。输出顺序由psTuple中点列表的顺序决定。输入样例:551,1,1,,2,3,53,1,35,,输出样例:Point (1, 1, 1), type , distance 1.732Point (0, 0, 0), type , distance 0.000Point (2, 3, 5), type , distance 6.164Point (3, 1, 3), type , distance 4.359Point (5, 0, 0), type , distance 5.000pointsTuple ([(1, 1, 1), (0, 0, 0), (3, 1, 3)], [(2, 3, 5), (5, 0, 0)])distance 5, avgDistance 2.030, points [(1, 1, 1), (0, 0, 0), (3, 1, 3)]distance 5, avgDistance 5.582, points [(2, 3, 5), (5, 0, 0)]import mathdef readPoint():ainput().split(,)for i inrange(len(a)):try:if eval(a[i])0:a[i]int(a[i])except:a[i]0returntuple(a)def distance(point):sum0for i in range(3):sumpoint[i]**2returnmath.sqrt(sum)def ClassifyPoints(points, r):a,b[],[]for i inrange(len(points)):if distance(points[i])a.append(points[i])else:b.append(points[i])z(a,b)returnzdef avgDistance(pointList):sum0for i inrange(len(pointList)):sumdistance(pointList[i])return sum/len(pointList)def printPointsTuple(psTuple, r):print(distance {}, avgDistance {:.3f}, points {}.format(r,avgDistance(psTuple[0]),psTuple[0]))print(distance {}, avgDistance {:.3f}, points {}.format(r,avgDistance(psTuple[1]),psTuple[1]))n int(input())r int(input())points[]for i inrange(n):preadPoint()points.append(p)print(Point {}, type {}, distance {:.3f}.format(p,type(p),distance(p)))pointsTupleClassifyPoints(points, r)print(pointsTuple {}.format(pointsTuple))printPointsTuple(pointsTuple,r)6-4 jmu-python-组合数据类型-3.二维坐标点统计 (15 分)随机生成n个点并存入字典每个点的坐标为(x, y)坐标x、y的取值范围是[0,10]之间的整数。随机生成点的过程中可能会产生重复的点(两个点的坐标值一样)需记录该点生成的次数如在整个生成点的过程中生成了3个坐标为(21)的点那么需将3作为点生成次数纪录下来。最后在字典中查询3次点坐标并返回查询结果。建议使用字典存储点。思考:如何在此基础上使用蒙特卡洛方法计算圆周率。步骤如下 输入n代表要产生n个点输入x代表随机数种子(注意设置种子前需将x转化为整型)调用generatePoint(n)函数生成n个点每个点包含x,y坐标将(x,y)存为元组然后将该元组作为元素放入列表(可放重复的点坐标)并将该列表返回。调用createPointDict(pList)将步骤1生成的点列表pList中的每个点放入字典pDict中字典的键为点(元组)值为出现次数。调用doQuery(pDict, p): 在pDict中查询p如果查到则输出点即出现次数否则输出Not Found。注意需要导入random库函数接口定义generatePoints(n) #产生n个2维坐标点放入列表并返回该列表createPointDict(pList) #将pList中的节点加入字典并统计出现次数然后返回字典doQuery(pDict, p) #在pDict中查询p如果查到则输出该点及其出现次数否则输出Not Found。裁判测试程序样例/* 请在这里填写答案 */n int(input())seed(int(input()))pList generatePoints(n)pDict createPointDict(pList)for i in range(3):#查询3次x, y [int(e) for e in input().split(,)]doQuery(pDict, (x, y))输入格式:输入的n代表产生n个坐标点输入x代表种子(x需转化为整型)若干个行所要查找的坐标。输出格式:如果存在输出 二维坐标点 出现次数。注二维坐标点以元组形式出现。否则输出Not Found输入样例:1000012,999,1001,7输出样例:(2, 9) 87Not Found(1, 7) 75from random import*import mathdef generatePoints(n):#产生n个2维坐标点放入列表并返回该列表l[]for i inrange(n):x,yrandint(0,10),randint(0,10)z(x,y)l.append(z)returnldef createPointDict(pList):#将pList中的节点加入字典并统计出现次数然后返回字典s{}for i inpList:if i ins:s[i]1else:s[i]1returnsdef doQuery(pDict, p):#在pDict中查询p如果查到则输出该点及其出现次数否则输出Not Found。if p inpDict:print({} {}.format(p,pDict[p]))else:print(Not Found)n int(input())seed(int(input()))pListgeneratePoints(n)pDictcreatePointDict(pList)for i in range(3):#查询3次x, y [int(e) for e in input().split(,)]doQuery(pDict, (x, y))6-5 jmu-python-判断质数 (10 分)本题要求实现一个函数判断参数是否是质数是的话返回True否则返回False注意函数中要有异常处理如果参数不是整数返回False函数接口定义def isPrime(num)裁判测试程序样例/* 请在这里填写答案 */numinput()if isPrime(num):print(yes)else:print(no)输入样例1ab输出样例1no输入样例21.1输出样例2no输入样例311输出样例3yesdef isPrime(num):try:numint(num)for i in range(2,num):if num%i0:returnFalsereturnTrueexcept:returnFalsenuminput()ifisPrime(num):print(yes)else:print(no)6-6 jmu-python-函数-找钱 (10 分)买单时营业员要给用户找钱。营业员手里有10元、5元、1元(假设1元为最小单位)几种面额的钞票其希望以尽可能少(张数)的钞票将钱换给用户。比如需要找给用户17元那么其需要给用户1张10元1张5元2张1元。而不是给用户17张1元或者3张5元与2张1元。函数接口定义giveChange(money) #money代表要找的钱为整数。该函数经过计算然后按照格式要找的钱 x*10 y*5 z*1直接输出。裁判测试程序样例/* 请在这里填写答案 */n int(input())for i in range(n):giveChange(int(input()))输入样例5109171030输出样例109 10*10 1*5 4*117 1*10 1*5 2*110 1*10 0*5 0*13 0*10 0*5 3*10 0*10 0*5 0*1def giveChange(a):a10, a5, a1 0, 0, 0a10 a//10a5 (a%10)//5a1 (a%10)%5print({} {}*10 {}*5 {}*1.format(a, a10, a5, a1))6-7 jmu-python-杨辉三角 (10 分)根据输入的n打印n行杨辉三角型。函数接口定义printYanghui(n):#打印n行杨辉三角型裁判测试程序样例/* 请在这里填写答案 */n int(input())printYanghui(n)输入格式:输入n转化为整数输出格式:每个数后面均有一个空格。输入样例:5输出样例:11 11 2 11 3 3 11 4 6 4 1def printYanghui(n):num[]for i in range(n1):num[[]]for j in range(n1):num[i][0]num[1][1]1for i in range(2,n1):for j in range(1,n1):num[i][j]num[i-1][j]num[i-1][j-1]for i in range(1,n1):for k in range(n-i):print(,end )for j in range(1,i1):print(num[i][j],end )print()n int(input())printYanghui(n)6-8 jmu-javapython-统计字符个数 (10 分)编写程序统计1行字符串中不同字符的个数。每种字符出现的次数。函数接口定义Freq(line)函数功能该函数统计不同字符出现的次数并最后按照字符升序进行输出。输出格式见输出样例。参数说明line为需要统计的字符串。裁判测试程序样例/* 请在这里填写答案 */line input()Freq(line)输入样例abc 123 adex!!!输出样例11 2! 31 12 13 1a 2b 1c 1d 1e 1x 1输出格式说明第1行输出不同字符的个数。两边应有空格。上述输出样例中第2行的字符是空格。输出按照字符升序排列。def Freq(line):wordslines{}for i in words:if i in s:s[i]1else:s[i]1slist(s.items())print(len(s))s.sort(keylambda x:x[0])for i in range(len(s)):word,counts[i]print({} {}.format(word,count))line input()Freq(line)6-9 6-1.使用函数求特殊a串数列和 (30 分)给定两个均不超过9的正整数a和n要求编写函数fn(a,n) 求aaaaaa⋯aa⋯aa(n个a)之和fn须返回的是数列和函数接口定义fn(a,n)其中 a 和 n 都是用户传入的参数。 a 的值在[1, 9]范围n 是[1, 9]区间内的个位数。函数须返回级数和裁判测试程序样例/* 请在这里填写答案 */a,binput().split()sfn(int(a),int(b))print(s)输入样例在这里给出一组输入。例如2 3输出样例在这里给出相应的输出。例如246def fn(a,n):sum0for i in range(1,n1):cafor j in range(0,i-1):cac*10sumsumcreturn sum6-10 6-2.使用函数求素数和 (20 分)使用函数求素数和prime(p), 其中函数prime当用户传入参数p为素数时返回True否则返回False. PrimeSum(m,n),函数PrimeSum返回区间[m, n]内所有素数的和。题目保证用户传入的参数1m函数接口定义在这里描述函数接口prime(p)返回True表示p是素数返回False表示p不是素数PrimeSum(m,n)函数返回素数和裁判测试程序样例/* 请在这里填写答案 */m,ninput().split()mint(m)nint(n)print(PrimeSum(m,n))输入样例在这里给出一组输入。例如1 10输出样例在这里给出相应的输出。例如17def prime(p):if p1:returnFalsefor i in range(2,p):if p%i0:returnFalsereturnTruedef PrimeSum(m,n):sum0for i in range(m,n1):ifprime(i):sumireturn sum6-11 6-3 使用函数统计指定数字的个数 (20 分)本题要求实现一个统计整数中指定数字的个数的简单函数。CountDigit(number,digit )其中number是整数digit为[1, 9]区间内的整数。函数CountDigit应返回number中digit出现的次数。函数接口定义在这里描述函数接口。例如CountDigit(number,digit ),返回digit出现的次数裁判测试程序样例/* 请在这里填写答案 */number,digitinput().split()numberint(number)digitint(digit)countCountDigit(number,digit )print(Number of digit 2 in str(number):,count)输入样例在这里给出一组输入。例如-21252 2输出样例在这里给出相应的输出。例如Number of digit 2 in -21252: 3def CountDigit(number,digit ):count0if number0:number-numberwhile number0:inumber%10if idigit:count1number//10return count6-12 6-5.使用函数求余弦函数的近似值 (20 分)本题要求实现一个函数用下列公式求cos(x)近似值精确到最后一项的绝对值小于eps(绝对值小于eps的项不要加)cos (x) x^0 / 0! - x^2 / 2! x^4 / 4! - x^6 / 6! ?函数接口定义funcos(eps,x ),其中用户传入的参数为eps和x函数funcos应返回用给定公式计算出来保留小数4位。函数接口定义函数接口:funcos(eps,x ),返回cos(x)的值。裁判测试程序样例在这里给出函数被调用进行测试的例子。例如/* 请在这里填写答案 */epsfloat(input())xfloat(input())valuefuncos(eps,x )print(cos({0}) {1:.4f}.format(x,value))输入样例在这里给出一组输入。例如0.0001-3.1输出样例在这里给出相应的输出。例如cos(-3.1) -0.9991def funcos(eps,x ):sum0i0count0whileTrue:c1for j in range(1,2*i1):cc*jif ((x**(2*i))/c)else:if count%20:sumsum(x**(2*i))/celse:sumsum-(x**(2*i))/ci1count16-13 6-4.使用函数输出指定范围内Fibonacci数的个数 (20 分)本题要求实现一个计算Fibonacci数的简单函数并利用其实现另一个函数,输出两正整数m和n(0函数接口定义在这里描述函数接口。例如fib(n),返回fib(n)的值PrintFN(m,n)用列表返回[m, n]中的所有Fibonacci数。裁判测试程序样例在这里给出函数被调用进行测试的例子。例如/* 请在这里填写答案 */m,n,iinput().split()nint(n)mint(m)iint(i)bfib(i)print(fib({0}) {1}.format(i,b))fiblistPrintFN(m,n)print(len(fiblist))输入样例在这里给出一组输入。例如20 100 6输出样例在这里给出相应的输出。例如fib(6) 134def fib(n):if n0 or n1:return 1else:return fib(n-1)fib(n-2)def PrintFN(m,n):a[]#for i in range(m,n1):for j in range(26):if mfib(j)n:a.append(fib(j))#print(a)return a6-14 计算素数和 (20 分)本题要求计算输入两个正整数x,y(xy包括x,y)素数和。函数isPrime用以判断一个数是否素数primeSum函数返回素数和。输入格式:输入两个整数。输出格式:[m-n]间的素数和裁判测试程序样例/* 请在这里填写答案 */x,y map(int, input().split())print(primeSum(x,y))输入样例:2 8输出样例:17def isPrime(num):numint(num)for i in range(2,num):if num%i0:returnFalsereturnTruedef primeSum(a,b):sum0for i in range(a,b1):ifisPrime(i):sumireturn sum