给定两个均不超过9的正整数a和n,要求编写函数fn(a,n) 求a+aa+aaa++⋯+aa⋯aa(n个a)之和,fn须返回的是数列和
函数接口定义:
fn(a,n)
其中 a 和 n 都是用户传入的参数。 a 的值在[1, 9]范围;n 是[1, 9]区间内的个位数。函数须返回级数和
def fn(a,b):
sum=0
for i in range(b):
sum+=(b-i)*a*pow(10,i)
return sum
使用函数求素数和
prime§, 其中函数prime当用户传入参数p为素数时返回True,否则返回False. PrimeSum(m,n),函数PrimeSum返回区间[m, n]内所有素数的和。题目保证用户传入的参数1<=m<n。
函数接口定义:
在这里描述函数接口:
prime(p),返回True表示p是素数,返回False表示p不是素数
PrimeSum(m,n),函数返回素数和
def prime(m):
if m==1:
return False
for i in range(2,int(pow(m,1/2)+1)):
if m%i==0:
return False
return True
def PrimeSum(m,n):
sum=0
for i in range(m,n+1):
if prime(i)==True:
sum+=i
return sum
本题要求实现一个统计整数中指定数字的个数的简单函数。
CountDigit(number,digit )
其中number是整数,digit为[1, 9]区间内的整数。函数CountDigit应返回number中digit出现的次数。
函数接口定义:
在这里描述函数接口。例如:
CountDigit(number,digit ),返回digit出现的次数
def CountDigit(number,digit):
s=str(number)
lst=[]
digit=str(digit)#这一行影响了第一个测试点
for i in s:
lst.append(i)
return lst.count(digit)
本题要求实现一个计算Fibonacci数的简单函数,并利用其实现另一个函数,输出两正整数m和n(0<m<n≤100000)之间的所有Fibonacci数的数目。 所谓Fibonacci数列就是满足任一项数字是前两项的和(最开始两项均定义为1)的数列,fib(0)=fib(1)=1。其中函数fib(n)须返回第n项Fibonacci数;函数PrintFN(m,n)用列表返回[m, n]中的所有Fibonacci数。
函数接口定义:
在这里描述函数接口。例如:
fib(n),返回fib(n)的值
PrintFN(m,n),用列表返回[m, n]中的所有Fibonacci数。
def fib(n):
a,b=0,1
for i in range(n+1):#这个位置是n+1
a,b=b,a+b
return a
def PrintFN(m,n):
lst=[]
a,b=0,0
while(True):
if fib(a)<m:
a+=1
if fib(b)<=n:
b+=1
if fib(a)>=m and fib(b)>n:
break
for i in range(a,b):
lst.append(fib(i))
return lst
本题要求实现一个函数,用下列公式求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)的值。
def fact(n):
if n==0:
return 1
else:
return n*fact(n-1)
def funcos(eps,x):
sum=0
i=0
while x**i/fact(i)>=eps:
i=i+2#先得到
for j in range(0,i,2):
if j%4==0:#注意是每四位一个负号
sum=sum+x**j/fact(j)
else:
sum=sum-x**j/fact(j)
return sum
缩写词是由一个短语中每个单词的第一个字母组成,均为大写。例如,CPU是短语“central processing unit”的缩写。
函数接口定义:
acronym(phrase);
phrase是短语参数,返回短语的缩写词
def acronym(phrase):
s=phrase.split()
ans=""
for i in range(len(s)):
ans+=s[i][0].upper()#取第i个列表元素的第一个字母,并用upper()转为大写
return ans
文章来源互联网,如有侵权,请联系管理员删除。邮箱:417803890@qq.com / QQ:417803890
Python Free
邮箱:417803890@qq.com
QQ:417803890
皖ICP备19001818号-4
© 2019 copyright www.pythonf.cn - All rights reserved
微信扫一扫关注公众号:
Python Free