python基础Day_5函数作业

  1. 定义一个函数实现反响输出一个整数。比如:输入 3245,输出 5432. 2. 编写一个函数,计算下面的数列:
  2. 数列计算
  3. 输入三角形三个顶点的坐标,若有效则计算三角形的面积;如坐标无效,则给出提
    示。
  4. 输入一个毫秒数,将该数字换算成小时数,分钟数、秒数。
  5. 使用海龟绘图。输入多个点,将这些点都两两相连。在这里插入图片描述

(1)

def trace_print(n):
    sum = 0
    while True:
        if n < 1:
            break
        else:
            i = n % 10
            sum = sum*10 + i
            n //= 10
    return sum


m = int(input("请输入一个整数"))
print("这个整数反向输出为{}".format(trace_print(m)))

(2)

def count_m(n):
    total = 0
    for i in range(1, n+1):
        total += (i/(i + 1))
    return total


k = int(input("请输入一个整数n: "))
print("这个数列的和为{}".format(count_m(k)))

(3)

import math


def s_tri(x1, x2, x3, y1, y2, y3):
    a = math.sqrt((x1 - x2) ** 2 + (y1 - y2) ** 2)
    b = math.sqrt((x1 - x3) ** 2 + (y1 - y3) ** 2)
    c = math.sqrt((x2 - x3) ** 2 + (y2 - y3) ** 2)
    p = (a + b + c) / 2
    if a + b == c or a + c == b or b + c == a:
        print("坐标是无效的哦")
        s = None
    else:
        s = math.sqrt(p * (p - a) * (p - b) * (p - c))
    return s


x1, y1 = map(int, input("请输入第一个点的坐标").split())
x2, y2 = map(int, input("请输入第一个点的坐标").split())
x3, y3 = map(int, input("请输入第一个点的坐标").split())
print("这三角形的面积为{}".format(s_tri(x1, x2, x3, y1, y2, y3)))

(4)

def convert(ms):
    s = ms/1000
    minu = s/60
    hours = minu/60
    print("{:.2f}毫秒是{:.2f}秒,是{:.2f}分,"  #  保留两位小数输出
          "是{:.2f}小时".format(ms, s, minu, hours))


ms = int(input("请输入多少毫秒"))
convert(ms)

(5)

import turtle


def mul_tur(s, n):
    t = turtle.Pen()
    for i in range(n - 1):
        for j in range(i + 1, n):
            t.penup()
            t.goto(s[i])
            t.pendown()
            t.goto(s[j])
    t.hideturtle()
    turtle.done()


s = []
while True:
    a = input("输入坐标,按Q/q停止输入:")
    if a.upper() == 'Q':
        break
    rea = eval(a)
    s.append(rea)
n = len(s)
mul_tur(s, n)

猜你喜欢

转载自blog.csdn.net/tjjyqing/article/details/113195717