zoukankan      html  css  js  c++  java
  • 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()
    
  • 相关阅读:
    vue中的样式
    v-model 双向数据绑定
    v-on 事件修饰符
    Linq Join
    Elasticsearch.Net 异常:[match] query doesn't support multiple fields, found [field] and [query]
    MongoDB开启权限认证
    elasticsearch备份与恢复
    elasticserach + kibana环境搭建
    Kibana TypeError : Object #<GlobalState> has no method 'setDefaults'
    匿名函数
  • 原文地址:https://www.cnblogs.com/python960410445/p/14771943.html
Copyright © 2011-2022 走看看