百木园-与人分享,
就是让自己快乐。

5道Python函数练习题

1、编写函数f(n),实现输入n的值,求出n的阶乘。然后调用此函数计算1! +2!+3!+……10!的结果,输出到屏幕上。

def f(n):
count = 1;
for i in range(1,n+1):
count =count*i
return count

def main():
sum = 0
n = int(input(\"请输入一个整数n,以求1-n的阶乘之和\"))
for i in range(1,n+1):
sum = sum + f(i)
print(sum)

main()

2、定义一个函数is_prime(n),判断输入的n是不是素数,是的话返回True,否则返回False。通过键盘输入两个整数X和Y,调用此函数输出两数范围之内素数的个数(包括X和Y)。

import math
def isprime(n):
m = int(math.sqrt(n)+1)
for i in range(2,m):
if n%i==0:
return False
break
else:
return True
def main():
n,m =eval(input(\"请输入两个数,来求这两个数之间素数的个数,逗号作为分隔符:\"))
count = 0
for i in range (n,m+1):
if isprime(i) == True:
count=count+1
print(count)

main()

3、一个数如果从左往右读和从右往左读数字是相同的,则称这个数是回文数,如121,1221,15651都是回文数。

现在请写出一个函数h(n),判断n是否为回文数,是的话返回True,否则返回False。利用上面的判断素数函数,找出所有既是回文数又是素数的3位十进制数。

#Python学习交流群:531509025
import math
def isprime(n):
m = int(math.sqrt(n)+1)
for i in range(2,m):
if n%i==0:
return False
break
else:
return True

def h(n):
a = n//100
b = n%10
if a == b:
return True
else:
return False

def main():
print(\"既是素数又是回文数的3位十进制数:\")
for i in range (100,1000):
if isprime(i) == True:
if h(i) == True:
print(i)

main()

4.输入要过生日的人的名字,唱生日歌给他听

def happy():
print(\"Happy Birthday to you!\")
def sing(person):
\'\'\'person must be string\'\'\'#注释
happy()
happy()
print(\"Happy Birthday, dear\",person,\"!\")
happy()
person = input(\"请输入人名\")
sing(person)

5.编写函数,接收整数参数t,返回斐波那契数列中大于t的第一个数。

def demo(t):
a, b = 1, 1
while b<t:
a, b = b, a+b
else:
return b
def main():
n=int(input(\"请输入一个整数\"))
print(demo(n))
main()

来源:https://www.cnblogs.com/python960410445/p/14771943.html
图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » 5道Python函数练习题

相关推荐

  • 暂无文章