zoukankan      html  css  js  c++  java
  • python小练手题1

    1.
    """
    Write a program which can compute the factorial of a given numbers.
    The results should be printed in a comma-separated sequence on a single line.
    Suppose the following input is supplied to the program:
    8
    Then, the output should be:
    40320
    """
    num = int(input('请输入需要计算的数:'))
    def fact(num):
        if num == 0:
            return 1
        return num * fact(num-1)
    
    print(fact(num))
    
    2.
    """
    With a given integral number n, write a program to generate a dictionary that contains (i, i*i) such that is an integral number between 1 and n (both included). and then the program should print the dictionary.
    Suppose the following input is supplied to the program:
    8
    Then, the output should be:
    {1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64}
    """
    num = int(input('请输入'))
    d = {}
    for i in range(1,num+1):
        d.update({i:i*i})
    
    print(d)
    
    3.
    """
    Write a program which accepts a sequence of comma-separated numbers from console and generate a list and a tuple which contains every number.
    Suppose the following input is supplied to the program:
    34,67,55,33,12,98
    Then, the output should be:
    ['34', '67', '55', '33', '12', '98']
    ('34', '67', '55', '33', '12', '98')
    """def spl(word):
        li = []
        for i in word.split(','):
            li.append(i)
        print()
        tup = '('+str(li)[1:-1]+')'
        return print(li,'
    ',tup)
    word = input("")
    spl(word)
    
    4.
    """
    Write a program that calculates and prints the value according to the given formula:
    Q = Square root of [(2 * C * D)/H]
    Following are the fixed values of C and H:
    C is 50. H is 30.
    D is the variable whose values should be input to your program in a comma-separated sequence.
    Example
    Let us assume the following comma separated input sequence is given to the program:
    100,150,180
    The output of the program should be:
    18,22,24
    """
    import math
    def fun(D):
        C = 50
        H = 30
        li = []
        for d in D.split(','):
            Q = int(math.sqrt((2 * C * int(d)) / H))
            li.append(Q)
        return print(str(li)[1:-1])
    
    D = input()
    fun(D)
    
    5.
    """
    Write a program which takes 2 digits, X,Y as input and generates a 2-dimensional array. The element value in the i-th row and j-th column of the array should be i*j.
    Note: i=0,1.., X-1; j=0,1,¡­Y-1.
    Example
    Suppose the following inputs are given to the program:
    3,5
    Then, the output of the program should be:
    [[0, 0, 0, 0, 0], [0, 1, 2, 3, 4], [0, 2, 4, 6, 8]] 
    """
    def array(x,y):
        li = []
        for i in range(x):
            li.append([])
            for j in range(y):
                li[i].append(0)
    
                li[i][j] = i*j
    
        return print(li)
    array(3,5)
    
    6.
    """
    Write a program that accepts a comma separated sequence of words as input and prints the words in a comma-separated sequence after sorting them alphabetically.
    Suppose the following input is supplied to the program:
    without,hello,bag,world
    Then, the output should be:
    bag,hello,without,world
    """
    def fun(word):
        li = [w for w in (word.split(','))]
        li.sort()
        # new = sorted(li,key=lambda i:i[0])
        return print(','.join(li))
    
    fun('without,hello,bag,world')
    
    7.
    """
    Write a program that accepts sequence of lines as input and prints the lines after making all characters in the sentence capitalized.
    Suppose the following input is supplied to the program:
    Hello world
    Practice makes perfect
    Then, the output should be:
    HELLO WORLD
    PRACTICE MAKES PERFECT
    """
    def fun():
        li = []
        while True:
            s = input()
            if s:
                li.append(s.upper())
                continue
            else:
                for i in li:
                    print(i)
                break
    fun()
    
    8.
    """
    Write a program which accepts a sequence of comma separated 4 digit binary numbers as its input and then check whether they are divisible by 5 or not. The numbers that are divisible by 5 are to be printed in a comma separated sequence.
    Example:
    0100,0011,1010,1001
    Then the output should be:
    1010
    Notes: Assume the data is input by console.
    """
    def fun(word):
        li = []
        for i in word.split(','):
            if int(i,base=2)%5==0:
                li.append(i)
        return print(','.join(li))
    
    fun('0100,0011,1010,1001')
    
    9.
    """
    Write a program, which will find all such numbers between 1000 and 3000 (both included) such that each digit of the number is an even number.
    The numbers obtained should be printed in a comma-separated sequence on a single line.
    """
    def fun():
        li = []
        flag = 0
        for i in range(1000,3000):
            for j in list(str(i)):
                if int(j)%2 == 0:
                    flag += 1
                    if flag == 4:
                        li.append(i)
                        flag = 0
                else:
                    flag = 0
        return print(li)
    fun()
    
    10.
    "Write a program that accepts a sentence and calculate the number of letters and digits.
    Suppose the following input is supplied to the program:
    hello world! 123
    Then, the output should be:
    LETTERS 10
    DIGITS 3""
    """
    import re
    def fun(word):
        alp = re.findall('[a-z,A-Z]',word)
        num = re.findall('[0-9]',word)
        return print('字母{}
    数字{}'.format(len(alp),len(num)))
    fun('hello world! 123')
  • 相关阅读:
    javaSE笔记-多态
    javaSE笔记-接口
    javaSE笔记-static关键字
    javaSE笔记-fianl关键字
    javaSE笔记-抽象类
    javaSE笔记-继承
    javaSE笔记-JKD、JRE、JVM各自的作用和关系
    搭建网络验证RIP协议
    计算机网络学习
    python itertools 模块讲解
  • 原文地址:https://www.cnblogs.com/miaoweiye/p/12036001.html
Copyright © 2011-2022 走看看