Python 第三周作业

1.完美立方 程序设计题

n = int(input())  # n范围内的立方数

list_cube = [0]  # 用于存储立方数的列表
for i in range(1, n + 1):
    list_cube.append(i * i * i)

for a in range(6, n + 1):
    for b in range(2, a - 1):
        if list_cube[a] < (list_cube[b] + list_cube[b + 1] + list_cube[b + 2]):
            break
        for c in range(b + 1, a):
            if list_cube[a] < (list_cube[b] + list_cube[c] + list_cube[c + 1]):
                break
            for d in range(c + 1, a):
                if list_cube[a] == (list_cube[b] + list_cube[c] + list_cube[d]):
                    print("Cube = %d,Tripe = (%d,%d,%d)" % (a, b, c, d))

2.鸡兔同笼 程序设计题

n = eval(input())
l = list()
for k in range(n):
    a = int(input())
    if (a%2) != 0:
        min = max = 0
    else:
        j = int(a/4)
        i = a%4
        m = int(i/2)
        min = m+j
        max = int(a/2)
    l += [(min,max)]
for b,c in l:
    print(b,c,end='')
    print(end='\n')

3.算24 程序设计题

n = eval(input())
l = list()
for k in range(n):
    a = int(input())
    if (a%2) != 0:
        min = max = 0
    else:
        j = int(a/4)
        i = a%4
        m = int(i/2)
        min = m+j
        max = int(a/2)
    l += [(min,max)]
for b,c in l:
    print(b,c,end='')
    print(end='\n')

4.温度转换异常处理

try:
    TempStr = input()
    if TempStr[-1] in ['F', 'f']:
        C = (eval(TempStr[0:-1]) - 32) / 1.8
        print("{:.2f}C".format(C))
    elif TempStr[-1] in ['C', 'c']:
        F = 1.8 * eval(TempStr[0:-1]) + 32
        print("{:.2f}F".format(F))
    else:
        print("输入错误,末位只能是'C','c','F','f'")
except NameError:
    print('试图访问的变量名不存在')
except SyntaxError:
    print('存在语法错误')
except Exception as e:
    print(e)

5.a除于b

a = float(input()) # 浮点数化
b = float(input())
if b == 0:   # = 是赋值符号  ==是比较符号
    print("除零错误")
else:
    c =a/b
    y=round(c,2)   #round(x,y)四舍五入函数
    print("{}".format(y))

6.2的n次方

n = int(input())
x = int(pow(2,n)) #pow(x,y) 计算x的y次幂
print("{}".format(x))

7.阶乘

import math  #导入math库,或用from math import *方法导入
num = int(input())  #整数化
x = int(math.factorial(num)) #math库阶乘函数
print("{}".format(x))

8.阶乘求和

sum=0
a=1
n=eval(input())
if not type(n)==int or n<=0:
    print("输入有误,请输入正整数")
else :
    for i in range(1,n+1):
        a*=i
        sum+=a
    print(sum)

9.表达式求值

import math
a = 5
b = 8
c = 3
x=((-b+math.sqrt(b**2-4*a*c))/(2*a))
print(x)

10.计算阶乘

def factorial(n):
    if n == 0 or n == 1:
        return 1
    else:
        return (n*factorial(n-1))

a = factorial(5)
print(a)

 

posted @ 2020-03-27 16:46  树懒君  阅读(404)  评论(0)    收藏  举报