实操作业五

练习1:定义一个函数实现反向输出一个整数。比如:输入 3245,输出 5432

def reverse(a,b,c,d):
    print(d,c,b,a)

reverse(2,3,4,5)

练习2:编写一个函数,计算下面的数列:

在这里插入图片描述

def m(n):
    if n==0:
        return 0
    else:
        return (n/(n+1))+m(n-1)

print(m(2))

练习3:. 输入三角形三个顶点的坐标,若有效则计算三角形的面积;如坐标无效,则给出提示。

import math

def area(a,b,c):
    l1 = math.sqrt((a[0] - b[0]) ** 2 + (a[1] - b[1]) ** 2)
    l2 = math.sqrt((a[0] - c[0]) ** 2 + (a[1] - c[1]) ** 2)
    l3 = math.sqrt((c[0] - b[0]) ** 2 + (c[1] - b[1]) ** 2)
    p = (l1 + l2 + l3) / 2
    s = math.sqrt(p*(p-l1)*(p-l2)*(p-l3))
    if s > 0:
        return s
    else:
        print("输入坐标有误")
c=area([2,2],[4,2],[3,4])
print(c)

练习4:输入一个毫秒数,将该数字换算成小时数,分钟数、秒数。

def f1():
    ms = int(input("请输入毫秒数"))
    s = ms/1000
    m = s/60
    h = m/60
    print("是{0}毫秒,为{1}秒,{2}分,{3}小时".format(ms,s,m,h))

f1()

练习5:使用海龟绘图。输入多个点,将这些点都两两相连。

import turtle
t = turtle.Pen()
x = []
y = []
while True:
    a = input("输入x坐标:(输入空格则结束)")
    b = input("输入y坐标:(输入空格则结束)")
    if a == ' 'or b==' ':
        break
    else:
        a1 = eval(a)
        b1 = eval(b)
        x.append(a1)
        y.append(b1)

print(x, y)
n = len(x)


for i in range(n):
    for j in range(i, n-1):
        t.penup()
        t.goto(x[i], y[i])
        t.pendown()
        t.goto(x[j+1], y[j+1])


turtle.done()

猜你喜欢

转载自blog.csdn.net/kkaa__/article/details/113134688