数据组六月Python考核任务

任务要求

1.输入三条边长,如果能构成三角形就计算周长和面积
2.输入一个正整数判断是不是素数,是就输出Yes,不是就输出No
3.输入两个正整数,计算它们的最大公约数和最小公倍数
4.生成斐波那契数列的前20个数
5.实现跑马灯文字(文字内容随意)
6.将上述代码做成五个函数在a.py文件里
7.用b.py文件调用上面a.py文件里的五个函数,输入1-5的题号,实现相应的功能

实现

a.py

def calculator():
    a, b, c = eval(input('请输入三条边长,以英文逗号隔开:'))
    if a+b > c and b+c > a and c+a > b:
        C = a + b + c
        p = C/2
        S = pow(p*(p-a)*(p-b)*(p-c), 0.5)
        return C, S
        
def is_prime():
    from math import sqrt
    n = eval(input('请输入一个正整数:'))
    for i in range(2, int(sqrt(n))+2):
        if n%i == 0:
            print('No')
            break
    else:
        print('Yes')

def zdgys(m, n):
    while m%n != 0:
        m, n = n, m%n
    return n

def zxgbs(m, n):
    return m * n // zdgys(m, n)

def fibo(n):
    if n == 1 or n == 2:
        return 1
    else:
        return fibo(n-1) + fibo(n-2)

def wordshow():
    from time import sleep
    s = '小哥哥可以加你微信嘛 关注你很久啦 '
    while True:
        s = s[1:] + s[0]
        print('\r{}'.format(s), end='')
        sleep(0.2)

b.py

import a
print('请输入相应题号:')
print('1.输入三条边长,如果能构成三角形就计算周长和面积')
print('2.输入一个正整数判断是不是素数,是就输出Yes,不是就输出No')
print('3.输入两个正整数,计算它们的最大公约数和最小公倍数')
print('4.生成斐波那契数列的前20个数')
print('5.实现跑马灯文字')
while True:
    input_num = eval(input('输入题号:'))
    if input_num == 1:
        C, S = a.calculator()
        print('周长是:{},面积是:{}。'.format(C, S))
    elif input_num == 2:
        a.is_prime()
    elif input_num == 3:
        p, q = eval(input('请输入两个正整数,以英文逗号隔开:'))
        Ma=a.zdgys(p, q)
        mi=a.zxgbs(p, q)
        print('最大公约数是:{},\n最小公倍数是:{}。'.format(Ma,mi))
    elif input_num == 4:
        for i in range(1,21):  
            print('{:05}'.format(a.fibo(i)),end=' ')
            if i%5 == 0:
                print()
    elif input_num == 5:
        a.wordshow()
    else:
        print('输入错误,请重新输入题号')
        print('请输入相应题号:')
        print('1.输入三条边长,如果能构成三角形就计算周长和面积')
        print('2.输入一个正整数判断是不是素数,是就输出Yes,不是就输出No')
        print('3.输入两个正整数,计算它们的最大公约数和最小公倍数')
        print('4.生成斐波那契数列的前20个数')
        print('5.实现跑马灯文字')
posted @ 2020-06-26 07:34  胡椒椒椒(弃用勿联系)  阅读(129)  评论(0编辑  收藏  举报