强基初中数学&学Python——第八十五课 函数与方程之二十九:积函数

 

  本章讨论的函数的定义域和值域都是≥0

  我们先讨论常量函数(可以认为是一元0次函数)

y=5

函数起点是(0,5),终点是(x, 5),以原点和终点为对角的矩形面积是5x。把面积作为函数值,x轴作为自变量,就得到y=5的积函数

y=5x

  作图如下,作图代码附录1

 

  可见,常量函数(一元0次函数)的积函数是正比例函数(一元一次函数)。

  接着讨论正比例函数(一元一次函数)

y=5x

函数起点是(0,),终点是(x, 5x),以原点和终点连接线段为斜边的直角三角形面积是x*5x/2。把面积作为函数值,x轴作为自变量,就得到y=5x的积函数

y=(5/2)x²

  作图如下,作图代码附录2

 

  可见,正比例函数(一元一次函数)的积函数是顶点是原点的抛物线函数(一元二次函数)。

  最后讨论一般一元一次函数

y=5x+5

函数起点是(0,5),终点是(x, 5x+5),以原点和终点为对角的直角梯形面积是

(5+5x+5)x/2=(5/2)x²+5x

把面积作为函数值,x轴作为自变量,就得到y=5x+5的积函数

y=(5/2)x²+5x

  作图如下,作图代码附录3

 

可见,函数的积函数是函数解析式每个项目的积函数之和。

 

  练习题1求函数y=4x+2的积函数并作出图形和函数图象。

 

附录1

import sys
sys.path.append("/5xstar/pyfiles")
from mymath.rcs import *
import turtle as t
t.setup(500,500)
t.screensize(400,400)  
t.up()
build(t,xUnt=(1,40),yUnt=(1,10),wc=(-20,-20,380,380))
#标题与函数解析式
t.setpos(180, 390)
t.write("y=5的积函数图象",align="center",font=(markFont[0],14,markFont[2]))
t.setpos(2,5*10+2)
t.write("(0, 5)",font=(markFont[0],14,markFont[2]))
t.setpos(0,5*10)
t.down()
t.seth(0)
t.fd(6*40)
t.up()
t.seth(90)
for i in range(20,250,20):
    t.setpos(i,0)
    for j in range(0,5*10,4):
        t.down()
        t.fd(2)
        t.up()
        t.fd(2)
t.setpos(6*40+2,5*10+2)
t.write("(x, 5)",font=(markFont[0],14,markFont[2]))
def f(x):
    return 5*x
trace(t,0,6,f)
t.ht()

 

附录2

import sys
sys.path.append("/5xstar/pyfiles")
from mymath.rcs import *
import turtle as t
t.setup(500,500)
t.screensize(400,400)  
t.up()
build(t,xUnt=(1,40),yUnt=(5,20),wc=(-20,-20,380,380))
#标题与函数解析式
t.setpos(180, 390)
t.write("y=5x与它的积函数y=2.5x²图象",align="center",font=(markFont[0],14,markFont[2]))
t.setpos(-2,2)
t.write("(0, 0)",align="right",font=(markFont[0],14,markFont[2]))
t.setpos(6*40+5,5*6*4-10)
t.write("(x, 5x)",font=(markFont[0],14,markFont[2]))
t.setpos(6*40+5,5*6*4-35)
t.write("y=5x",font=(markFont[0],14,markFont[2]))
t.setpos(6*40,5*6*4)
t.down()
t.setpos(0,0)
t.up()
t.seth(90)
for i in range(20,250,20):
    t.setpos(i,0)
    for j in range(0,i//2,4):
        t.down()
        t.fd(2)
        t.up()
        t.fd(2)
def f(x):
    return 5/2*x**2
trace(t,0,6,f)
t.setpos(6*40+5,5*6**2*2-10)
t.write("y=2.5x²",font=(markFont[0],14,markFont[2]))
t.ht()

 

附录3

import sys
sys.path.append("/5xstar/pyfiles")
from mymath.rcs import *
import turtle as t
t.setup(500,500)
t.screensize(400,400)  
t.up()
build(t,xUnt=(1,40),yUnt=(5,15),wc=(-20,-10,380,390))
#标题与函数解析式
t.setpos(180, 400)
t.write("y=5x+5与它的积函数y=2.5x²+5x图象",align="center",font=(markFont[0],14,markFont[2]))
t.setpos(-2,5*3)
t.write("(0, 5)",align="right",font=(markFont[0],14,markFont[2]))
endX=6*40
endY= (5*6+5)*3
t.setpos(0,5*3)
t.down()
t.setpos(endX,endY)
t.up()
t.setpos(endX+5, endY-10)
t.write("(x, 5x+5)",font=(markFont[0],14,markFont[2]))
t.setpos(endX+5, endY-35)
t.write("y=5x+5",font=(markFont[0],14,markFont[2]))
t.seth(90)
for i in range(20,250,20):
    t.setpos(i,0)
    for j in range(0,int((i/8+5)*3),3):
        t.down()
        t.fd(1.5)
        t.up()
        t.fd(1.5)
def f(x):
    return 5/2*x**2+5*x
trace(t,0,6,f)
t.setpos(endX+5, (5*6**2//2+5*6)*3-10)
t.write("y=2.5x²+5x",font=(markFont[0],14,markFont[2]))
t.ht()