猫史档案馆


【Python作品分享】平面直角坐标系

用户:DickWangDickWang查看:0 回复:0 评论:0 创建时间:2023-06-03T20:05:10


【作品展示】

center_image

 

【作品介绍】

1

 

【作品源代码】

'''
制作:DickWang
未经作者允许,禁止……等
'''
import turtle
import math

def setup():
    global t,U
    U = 20
    t = turtle.Pen()
    t.speed(0)
    t.pensize(2)
    t.hideturtle()

    t.down()
    t.goto(-1000,0)
    t.goto(1000,0)
    go(0,1000)
    t.goto(0,-1000)
    t.goto(0,0)
    t.dot()
    t.up()

def d():
    go(-600,0)
    for i in range(30):
        t.forward(U)
        t.dot()
    go(0,0)
    t.right(90)
    for i in range(30):
        t.forward(U)
        t.dot()

def go(x,y):
    t.up()
    t.goto(x,y)
    t.down()

def f1(x,k=1,b=5):
    return k*x+b

def f2(x,a=1,b=2,c=3):
    return a*x*x+b*x+c

def f3(x,a=0.5,b=1,c=3,d=4):
    return a*x*x*x+b*x*x+c*x+d

def f4(x,a=0.2,b=0.2,c=0.2,d=2,e=2):
    return a*x*x*x*x+b*x*x*x+c*x*x+d*x+e

def f5(x,k=10):
    if x==0:
        return 0
    return k/x

def f6(x,a=1,k=2):
    if x==0:
        return 0
    return a*x+k/x

def draw1(f,start=-10,end=10,step=0.1):
    go(start*U,f(start)*U)
    i=start
    while i<=end:
        t.goto(i*U,f(i)*U)
        #t.dot()
        i+=step

def draw2(f,start=-50,end=50,step=1,tmp=0.0001):
    go(start*U,f(start)*U)
    i = start
    while i<0 and step>tmp:
        t.goto(i*U,f(i)*U)
        i+=step
        if(abs(i) 0 and step > tmp:
        t.goto(i*U, f(i)*U)
        i -= step
        if(abs(i) < abs(f(i))):
            step *= 0.95

'''
def draw3(f, start=-50, end=50, step=1, tmp=0.0001):
    s = step
    go(-math.sqrt(10)*U,-f(math.sqrt(10))*U)
    t.dot()
    i = -math.sqrt(10)
    step = s
    while i < 0 and step > tmp:
        t.goto(i*U, f(i)*U)
        i += step
        step *= 0.95
    i = -math.sqrt(10)
    step = s
    go(i*U,f(i)*U)
    while f(i) < 0 and step > tmp:
        t.goto(i*U, f(i)*U)
        i -= step
        step *= 0.95
'''

if __name__ == '__main__':
    setup()
    draw2(f5)
    turtle.done()

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 0下一页