:
Maxima数学I自習教材開発
教材の概要
2次関数 1)2次関数とグラフ
1.関数とグラフ
2.2次関数のグラフ
201.研究・補充問題
Maxima数学I自習教材試行報告用紙(Word)
Maxima数学I自習教材試行報告用紙(PDF)
Maxima数学I自習教材試行報告用紙(html)
:
教材の概要
活動時間
自宅での予習か授業初めの5分程度
活動概要
1 タブレット等を用いてトライ
1) 教科書の該当ページを開く
2) このWebページを開く
3) Maxima on lineのWebページを開く
4) 該当コマンドをMaximaOnLineにコピペして、実行
2 自分なりの感触、着想
1) 自分なりに、実行結果を見て、気づいたり感じたりすることがないか、考えてみる。
2) ワークシートに、考えてみたこと(意見・質問・感じたこと)を書く
3) ワークシートを、事前に提出する場合は、課題提出フォームを使うこと。
3 問題の雰囲気を2で感じてから、授業へ
1) 班活動などで自分の考えを仲間に伝える
2) 仲間の考えを受け止める
3) 筋が通って、見通しのよい解法、数学的な論点をうまく処理した解法をまとめる
参照テキスト
数研出版新編数学I
:
第1章2次関数
第1節2次関数とグラフ
1.関数とグラフ
A 関数
▼コマンド番号101
●例1
関数の式と定義域●●●●●●●●●●●●●●●●
kill(all) /* "101 関数の式と定義域" */;
(MONDAI1:"●例1 101 横が縦より2cm長い長方形で、縦は5cm以上、10cm以下",
MONDAI2:"縦xcm、面積をycm^2として、yをxで表し、x=8のときのyは(◆修正部分)")$
(TEISUU:"",
bL:[5,10],teigiIki:'(5<=x and x<=10) /* "定義域" */
)$
(KANSUU:"",
f(x):=if ev(teigiIki,nouns,numer) then x*(x+2) else false /* "定義域内(◆修正部分2)" */,
f2(x):=if not ev(teigiIki,nouns,numer) then x*(x+2) else false /* "定義域外(◆修正部分2)" */
)$
(GrafuHYOUJI:"",
xS:bL[1]-2,xL:bL[2]+2,yS:0,yL:130 /* "グラフ描画範囲" */,
pebL:[[xS,yS]], pibL:[[xS,yS]],print(pebL,pibL),
for k:1 thru length(bL) do(
/**/if f(bL[k])#false then pebL:append([[bL[k],f(bL[k])]],pebL),
/**/if f2(bL[k])#false then pibL:append([[bL[k],f2(bL[k])]],pibL)
/**/),
print(pebL,[[xS,yS],"はダミー,●点"]),
print(pibL,[[xS,yS],"はダミー,〇点"]),
wxdraw2d(yrange=[yS,yL] /* "()" */,
/**/line_width =3,
/**/color=red,explicit(f(x),x,bL[1],bL[2]) /* "()" */,
/**/line_width =1,
/**/color=blue,explicit(f2(x),x,xS,bL[1]-0.01) /* "()" */,
/**/color=blue,explicit(f2(x),x,bL[2]+0.01,xL),
/**/color=red,
/**/point_type = filled_circle,
/**/point_size = 2,points(pebL),
/**/point_type = circle,
/**/point_size = 2,points(pibL),
/**/color=white,
/**/point_type = filled_circle,point_size = 2,
/**/points([[xS,yS]])
/**/) /* "赤が定義域での関数(◆修正時y,y2の定義域変更)" */
)$
(TEJUN:"",
y:f(x),
TIIKI:" 3<=y and y<=7 " /* "値域(◆修正部分3)" */,
SAIDAITI:" y=7 (x=3)" /* "最大値(◆修正部分3)" */,
SAISHOUTI:" y=3 (x=1)" /* "最小値(◆修正部分3)" */,
ansl:[y,TIIKI,SAIDAITI,SAISHOUTI,"関数,値域,最大値,最小値"]
)$
(KETURON:"",
print(MONDAI1,MONDAI2),print(ansl)
)$
◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
MONDAI:"107 関数y=1/2*x+3 (1<=x<=3)のグラフ・値域・最大値・最小値は(◆修正部分1)"$
f(x):=if ev(teigiIki,nouns,numer) then 1/2*x +3 else false /* "定義域内(◆修正部分2)" */,
f2(x):=if not ev(teigiIki,nouns,numer) then 1/2*x +3 else false /* "定義域外(◆修正部分2)" */
TIIKI:" 7/2<=y and y<=9/2 " /* "値域(◆修正部分3)" */,
SAIDAITI:" y=9/2 (x=3)" /* "最大値(◆修正部分3)" */,
SAISHOUTI:" y=7/2 (x=1)" /* "最小値(◆修正部分3)" */,
▼コマンド番号102
●練習1
関数の式と定義域●●●●●●●●●●●●●●●●
kill(all) /* "102 関数の式と定義域" */$
(MONDAI1:"●練習1 102 深さ30cmの水槽に3cmの高さまで水。ここへ毎分2cmの割合で8分水を入れる。",
MONDAI2:"x分後の水面の高さをycmとし、yをxで表し、x=8のときのyは(◆修正部分1)")$
(TEISUUandKANSUUSIKI:"",
xm:0,ym:3,yM:30,f0:2*x+3 )$
(TEIGIIKIandTIIKI:"",
xM:rhs(solve(f0=yM,x)[1])+5,print(xM),
bL:[0,xM],teigiIkim:xm<=x ,tiIkim:ym<=y,tiIkiM:y<=yM /* "定義域,値域" */
)$
(KANSUU:"",
f(x):=block([Y,f],Y:2*x+3,Y:if ev(teigiIkim,nouns,numer) then (if subst(y=Y,ev(tiIkim,nouns,numer)) then(if subst(y=Y,ev(tiIkiM,nouns,numer)) then Y else yM) else 3 )else false,f:Y) /* "定義域内" */,
f2(x):=block([Y,f],Y:2*x+3,Y:if not ev(teigiIkim,nouns,numer) then (if subst(y=Y,ev(tiIkim,nouns,numer)) then(if subst(y=Y,ev(tiIkiM,nouns,numer)) then Y else yM) else 3 )else false,f:Y) /* "定義域内" */
)$
(TEJUN:"",
F:f(x),
pOL:[[8,f(8)]],print(pOL)/*(◆修正部分2)*/,
ansl:[F,pOL[1][2],"関数,x=8のときの値"]/*(◆修正部分2)*/,
print("y=f(x)=",F),print("f(8)=",f(8)),print(ansl)/*(◆修正部分2)*/
)$
(GrafuHYOUJI:"",
xS:bL[1]-2,xL:bL[2],yS:-5,yL:30+5 /* "グラフ描画範囲" */,
pebL:[[xS,yS]], pibL:[[xS,yS]],
for k:1 thru length(bL) do(
/**/if f(bL[k])#false then pebL:append([[bL[k],f(bL[k])]],pebL),
/**/if f2(bL[k])#false then pibL:append([[bL[k],f2(bL[k])]],pibL)
/**/),
print(pebL,[[xS,yS],"はダミー,●点"]),
print(pibL,[[xS,yS],"はダミー,〇点"]),
wxdraw2d(yrange=[yS,yL] /* "()" */,
/**/line_width =3,
/**/color=red,explicit(f(x),x,xS,xL) /* "()" */,
/**/line_width =1,
/**/color=blue,explicit(f2(x),x,xS,bL[1]-0.01) /* "()" */,
/**/point_type = filled_circle,color=cyan,
/**/point_size = 2,points(pOL),
/**/color=red,
/**/point_type = filled_circle,
/**/point_size = 2,points(pebL),
/**/point_type = circle,
/**/point_size = 2,points(pibL),
/**/color=white,
/**/point_type = filled_circle,point_size = 2,
/**/points([[xS,yS]])
)/* "赤が定義域での関数(◆修正時y,y2の定義域変更)" */
)$
(KETURON:"",
print(MONDAI1,MONDAI2),print(ansl)
)$
◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
MONDAI2:"x分後の水面の高さをycmとし、yをxで表し、x=6のときのyは(◆修正部分1)")$
pOL:[[6,f(6)]],print(pOL)/*(◆修正部分2)*/,
ansl:[F,pOL[1][2],"関数,x=6のときの値"]/*(◆修正部分2)*/,
print("y=f(x)=",F),print("f(6)=",f(6)),print(ansl)/*(◆修正部分2)*/
▼コマンド番号103
●例2
関数f(x)●●●●●●●●●●●●●●●●
kill(all) /* "103 関数f(x)" */$
(MONDAI1:"●例2 f(x)=x^2+2*xについて、f(5)は、(◆修正部分1)")$
(TEISUUandKANSUUSIKI:"",
xm:-6,xM:6,ym:-10,yM:50,f0:x^2+2*x,
w:5/*未定数,既定数なら値(◆修正部分2)*/ )$
(TEIGIIKIandTIIKI:"",
bL:[xm,xM],teigiIkim:xm<=x,teigiIkiM:x<=xM,tiIkim:ym<=y,tiIkiM:y<=yM /* "定義域,値域" */
)$
(KANSUU:"",
f(x):=block([Y,f],Y:ev(f0,nouns,numer),Y:if ev(teigiIkim,nouns,numer) and ev(teigiIkiM,nouns,numer) then (if subst(y=Y,ev(tiIkim,nouns,numer)) then(if subst(y=Y,ev(tiIkiM,nouns,numer)) then Y else yM) else 3 )else false,f:Y) /* "定義域内" */,
f2(x):=block([Y,f],Y:ev(f0,nouns,numer),Y:if not (ev(teigiIkim,nouns,numer) and ev(teigiIkiM,nouns,numer)) then (if subst(y=Y,ev(tiIkim,nouns,numer)) then(if subst(y=Y,ev(tiIkiM,nouns,numer)) then Y else yM) else 3 )else false,f:Y) /* "定義域内" */
)$
(TEJUN:"",
F:f(x),
if w=a then pOL:[[a,subst(x=a,f0)]] else pOL:[[w,f(w)]],print(["pOL",pOL]),
ansl:[pOL[1][2],"x=",w,"のときの値","答え"],
print("y=f(x)=",F),print("f(",w,")=",f(w)),print(ansl)
)$
if w#a then
(GrafuHYOUJI:"",
xS:bL[1]-0.1,xL:bL[2]+0.1,yS:ym,yL:yM /* "グラフ描画範囲" */,
pebL:[[xS,yS]], pibL:[[xS,yS]],
for k:1 thru length(bL) do(
/**/if f(bL[k])#false then pebL:append([[bL[k],f(bL[k])]],pebL),
/**/if f2(bL[k])#false then pibL:append([[bL[k],f2(bL[k])]],pibL)
/**/),
print(pebL,[[xS,yS],"はダミー,●点"]),
print(pibL,[[xS,yS],"はダミー,〇点"]),
wxdraw2d(yrange=[yS,yL] /* "()" */,
/**/line_width =3,
/**/color=red,explicit(f(x),x,xS,xL) /* "()" */,
/**/line_width =1,
/**/color=blue,explicit(f2(x),x,xS,bL[1]-0.01) /* "()" */,
/**/color=blue,explicit(f2(x),x,bL[2]+0.01,xL) /* "()" */,
/**/point_type = filled_circle,color=cyan,
/**/point_size = 2,points(pOL),
/**/color=red,
/**/point_type = filled_circle,
/**/point_size = 2,points(pebL),
/**/point_type = circle,
/**/point_size = 2,points(pibL),
/**/color=white,
/**/point_type = filled_circle,point_size = 2,
/**/points([[xS,yS]])
)/* "赤が定義域での関数(◆修正時y,y2の定義域変更)" */
)$
(KETURON:"",
print(MONDAI1,MONDAI2),print(ansl)
)$
◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI1:"●例2 f(x)=x^2+2*xについて、f(a)は、(◆修正部分1)")$
w:a/*未定数,既定数なら値(◆修正部分2)*/ )$
▼コマンド番号104
●練習2
関数f(x)●●●●●●●●●●●●●●●●
kill(all) /* "●練習2 104 関数f(x)" */$
(MONDAI1:"●練習2 104 f(x)=x^2-2*x+1 について、f(-1)は、(◆修正部分1)")$
(TEISUUandKANSUUSIKI:"",
xm:-3,xM:3,ym:-10,yM:20,f0:x^2-2*x+1,
w:-1/*未定数,既定数なら値(◆修正部分2)*/ )$
(TEIGIIKIandTIIKI:"",
bL:[xm,xM],teigiIkim:xm<=x,teigiIkiM:x<=xM,tiIkim:ym<=y,tiIkiM:y<=yM /* "定義域,値域" */
)$
(KANSUU:"",
f(x):=block([Y,f],Y:ev(f0,nouns,numer),Y:if ev(teigiIkim,nouns,numer) and ev(teigiIkiM,nouns,numer) then (if subst(y=Y,ev(tiIkim,nouns,numer)) then(if subst(y=Y,ev(tiIkiM,nouns,numer)) then Y else yM) else 3 )else false,f:Y) /* "定義域内" */,
f2(x):=block([Y,f],Y:ev(f0,nouns,numer),Y:if not (ev(teigiIkim,nouns,numer) and ev(teigiIkiM,nouns,numer)) then (if subst(y=Y,ev(tiIkim,nouns,numer)) then(if subst(y=Y,ev(tiIkiM,nouns,numer)) then Y else yM) else 3 )else false,f:Y) /* "定義域内" */
)$
(TEJUN:"",
F:f(x),
if w=-a then pOL:[[-a,subst(x=-a,f0)]] else pOL:[[w,f(w)]],print(["pOL",pOL]),
ansl:[pOL[1][2],"x=",w,"のときの値","答え"],
print("y=f(x)=",F),print("f(",w,")=",f(w)),print(ansl)
)$
if w#-a then
(GrafuHYOUJI:"",
xS:bL[1]-0.1,xL:bL[2]+0.1,yS:ym,yL:yM /* "グラフ描画範囲" */,
pebL:[[xS,yS]], pibL:[[xS,yS]],
for k:1 thru length(bL) do(
/**/if f(bL[k])#false then pebL:append([[bL[k],f(bL[k])]],pebL),
/**/if f2(bL[k])#false then pibL:append([[bL[k],f2(bL[k])]],pibL)
/**/),
print(pebL,[[xS,yS],"はダミー,●点"]),
print(pibL,[[xS,yS],"はダミー,〇点"]),
wxdraw2d(yrange=[yS,yL] /* "()" */,
/**/line_width =3,
/**/color=red,explicit(f(x),x,xS,xL) /* "()" */,
/**/line_width =1,
/**/color=blue,explicit(f2(x),x,xS,bL[1]-0.01) /* "()" */,
/**/color=blue,explicit(f2(x),x,bL[2]+0.01,xL) /* "()" */,
/**/point_type = filled_circle,color=cyan,
/**/point_size = 2,points(pOL),
/**/color=red,
/**/point_type = filled_circle,
/**/point_size = 2,points(pebL),
/**/point_type = circle,
/**/point_size = 2,points(pibL),
/**/color=white,
/**/point_type = filled_circle,point_size = 2,
/**/points([[xS,yS]])
)/* "赤が定義域での関数(◆修正時y,y2の定義域変更)" */
)$
(KETURON:"",
print(MONDAI1,MONDAI2),print(ansl)
)$
◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI1:"●練習2 f(x)=x^2-2*x+1 について、f(-a)は、(◆修正部分1)")$
w:-a/*未定数,既定数なら値(◆修正部分2)*/ )$
▼コマンド番号105
●例題1
関数f(x)●●●●●●●●●●●●●●●●
kill(all) /* "105 関数f(x)" */$
(MONDAI1:"●例題1 105 f(x)=a*x+b について、f(1)=3,f(4)=9のとき, a, bは、(◆修正部分1)")$
(TEISUUandKANSUUSIKI:"",
xm:-5,xM:5,ym:-10,yM:20,f0:a*x+b,
pOL:[[1,3],[4,9]]/*(◆修正部分2)*/ )$
(TEIGIIKIandTIIKI:"",
bL:[xm,xM]/* "定義域,値域" */
)$
(KANSUU:"",
f(x):=block([Y,f],Y:ev(f0,nouns,numer) /* "定義域内" */)
)$
(TEJUN:"",
sabl:solve([f(pOL[1][1])=pOL[1][2],f(pOL[2][1])=pOL[2][2]],[a,b]),
f0:subst(sabl[1],f0),
ansl:[sabl[1],"f(x)=",f0,"答え"],print(ansl)
)$
(GrafuHYOUJI:"",
xS:bL[1]-0.1,xL:bL[2]+0.1,yS:ym,yL:yM /* "グラフ描画範囲" */,
pebL:[[xS,yS]], pibL:[[xS,yS]],
for k:1 thru length(bL) do(
/**/if f(bL[k])#false then pebL:append([[bL[k],f(bL[k])]],pebL)
/**/),
print(pebL,[[xS,yS],"はダミー,●点"]),
print(pibL,[[xS,yS],"はダミー,〇点"]),
wxdraw2d(yrange=[yS,yL] /* "()" */,
/**/line_width =3,
/**/color=red,explicit(f(x),x,xS,xL) /* "()" */,
/**/line_width =1,
/**/point_type = filled_circle,color=cyan,
/**/point_size = 2,points(pOL),
/**/color=red,
/**/point_type = filled_circle,
/**/point_size = 2,points(pebL),
/**/point_type = circle,
/**/color=white,
/**/point_type = filled_circle,point_size = 2,
/**/points([[xS,yS]])
)
)$
(KETURON:"",
print(MONDAI1,MONDAI2),print(ansl)
)$
◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI1:"●例題1 105 f(x)=a*x+b について、f(1)=3,f(4)=6のとき, a, bは、(◆修正部分1)")$
pOL:[[1,3],[4,6]]/*(◆修正部分2)*/ )$
▼コマンド番号106
●練習3
関数f(x)●●●●●●●●●●●●●●●●
kill(all) /* "106 関数f(x)" */$
(MONDAI1:"●練習3 106 f(x)=a*x+b について、f(2)=8,f(-1)=-4のとき, a, bは、(◆修正部分1)")$
(TEISUUandKANSUUSIKI:"",
xm:-5,xM:5,ym:-20,yM:20,f0:a*x+b,
pOL:[[2,8],[-1,4]]/*(◆修正部分2)*/ )$
(TEIGIIKIandTIIKI:"",
bL:[xm,xM]/* "定義域,値域" */
)$
(KANSUU:"",
f(x):=block([Y,f],Y:ev(f0,nouns,numer) /* "定義域内" */)
)$
(TEJUN:"",
sabl:solve([f(pOL[1][1])=pOL[1][2],f(pOL[2][1])=pOL[2][2]],[a,b]),
f0:subst(sabl[1],f0),
ansl:[sabl[1],"f(x)=",f0,"答え"],print(ansl)
)$
(GrafuHYOUJI:"",
xS:bL[1]-0.1,xL:bL[2]+0.1,yS:ym,yL:yM /* "グラフ描画範囲" */,
pebL:[[xS,yS]], pibL:[[xS,yS]],
for k:1 thru length(bL) do(
/**/if f(bL[k])#false then pebL:append([[bL[k],f(bL[k])]],pebL)
/**/),
print(pebL,[[xS,yS],"はダミー,●点"]),
print(pibL,[[xS,yS],"はダミー,〇点"]),
wxdraw2d(yrange=[yS,yL] /* "()" */,
/**/line_width =3,
/**/color=red,explicit(f(x),x,xS,xL) /* "()" */,
/**/line_width =1,
/**/point_type = filled_circle,color=cyan,
/**/point_size = 2,points(pOL),
/**/color=red,
/**/point_type = filled_circle,
/**/point_size = 2,points(pebL),
/**/point_type = circle,
/**/color=white,
/**/point_type = filled_circle,point_size = 2,
/**/points([[xS,yS]])
)
)$
(KETURON:"",
print(MONDAI1,MONDAI2),print(ansl)
)$
◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI1:"●練習3 106 f(x)=a*x+b について、f(0)=2,f(3)=-7のとき, a, bは、(◆修正部分1)")$
pOL:[[0,2],[3,-7]]/*(◆修正部分2)*/ )$
B 関数のグラフ
▼コマンド番号107
●例題2
関数のグラフ・値域・最大値・最小値●●●●●●●●●●●●●●●●
kill(all) /* "●例題2 107 関数のグラフ・値域・最大値・最小値" */$
MONDAI:"107 関数y=2*x+1 (1<=x<=3)のグラフ・値域・最大値・最小値は(◆修正部分1)"$
(TEISUU:"",
bL:[1,3],teigiIki:'(1<=x and x<=3) /* "定義域" */
)$
(KANSUU:"",
f(x):=if ev(teigiIki,nouns,numer) then 2*x +1 else false /* "定義域内(◆修正部分2)" */,
f2(x):=if not ev(teigiIki,nouns,numer) then 2*x +1 else false /* "定義域外(◆修正部分2)" */
)$
(GrafuHYOUJI:"",
xS:bL[1]-2,xL:bL[2]+2,yS:-1,yL:10 /* "グラフ描画範囲" */,
pebL:[[xS,yS]], pibL:[[xS,yS]],
for k:1 thru length(bL) do(
/**/if f(bL[k])#false then pebL:append([[bL[k],f(bL[k])]],pebL),
/**/if f2(bL[k])#false then pibL:append([[bL[k],f2(bL[k])]],pibL)
/**/),
print(pebL,[[xS,yS],"はダミー,●点"]),
print(pibL,[[xS,yS],"はダミー,〇点"]),
wxdraw2d(yrange=[yS,yL] /* "()" */,
/**/line_width =3,
/**/color=red,explicit(f(x),x,bL[1],bL[2]) /* "()" */,
/**/line_width =1,
/**/color=blue,explicit(f2(x),x,xS,bL[1]-0.01) /* "()" */,
/**/color=blue,explicit(f2(x),x,bL[2]+0.01,xL),
/**/color=red,
/**/point_type = filled_circle,
/**/point_size = 2,points(pebL),
/**/point_type = circle,
/**/point_size = 2,points(pibL),
/**/color=white,
/**/point_type = filled_circle,point_size = 2,
/**/points([[xS,yS]])
/**/) /* "赤が定義域での関数(◆修正時y,y2の定義域変更)" */
)$
(TEJUN:"",
TIIKI:" 3<=y and y<=7 " /* "値域(◆修正部分3)" */,
SAIDAITI:" y=7 (x=3)" /* "最大値(◆修正部分3)" */,
SAISHOUTI:" y=3 (x=1)" /* "最小値(◆修正部分3)" */,
ansl:[TIIKI,SAIDAITI,SAISHOUTI,"値域,最大値,最小値"]
)$
(KETURON:"",
print(MONDAI),print(ansl)
)$
◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
MONDAI:"107 関数y=1/2*x+3 (1<=x<=3)のグラフ・値域・最大値・最小値は(◆修正部分1)"$
f(x):=if ev(teigiIki,nouns,numer) then 1/2*x +3 else false /* "定義域内(◆修正部分2)" */,
f2(x):=if not ev(teigiIki,nouns,numer) then 1/2*x +3 else false /* "定義域外(◆修正部分2)" */
TIIKI:" 7/2<=y and y<=9/2 " /* "値域(◆修正部分3)" */,
SAIDAITI:" y=9/2 (x=3)" /* "最大値(◆修正部分3)" */,
SAISHOUTI:" y=7/2 (x=1)" /* "最小値(◆修正部分3)" */,
▼コマンド番号108
●練習4
関数のグラフ・値域・最大値・最小値●●●●●●●●●●●●●●●●
kill(all) /* "●練習4 108 関数のグラフ・値域・最大値・最小値" */$
MONDAI:"108 関数y=-2*x+4 (-2<=x<=2)のグラフ・値域・最大値・最小値は(◆修正部分1)"$
(TEISUU:"",
bL:[-2,2],teigiIki:'(-2<=x and x<=2) /* "定義域" */
)$
(KANSUU:"",
f(x):=if ev(teigiIki,nouns,numer) then -2*x +4 else false /* "定義域内(◆修正部分2)" */,
f2(x):=if not ev(teigiIki,nouns,numer) then -2*x +4 else false /* "定義域外(◆修正部分2)" */
)$
(GrafuHYOUJI:"",
xS:bL[1]-2,xL:bL[2]+2,yS:-1,yL:10 /* "グラフ描画範囲" */,
pebL:[[xS,yS]], pibL:[[xS,yS]],
for k:1 thru length(bL) do(
/**/if f(bL[k])#false then pebL:append([[bL[k],f(bL[k])]],pebL),
/**/if f2(bL[k])#false then pibL:append([[bL[k],f2(bL[k])]],pibL)
/**/),
print(pebL,[[xS,yS],"はダミー,●点"]),
print(pibL,[[xS,yS],"はダミー,〇点"]),
wxdraw2d(yrange=[yS,yL] /* "()" */,
/**/line_width =3,
/**/color=red,explicit(f(x),x,bL[1],bL[2]) /* "()" */,
/**/line_width =1,
/**/color=blue,explicit(f2(x),x,xS,bL[1]-0.01) /* "()" */,
/**/color=blue,explicit(f2(x),x,bL[2]+0.01,xL),
/**/color=red,
/**/point_type = filled_circle,
/**/point_size = 2,points(pebL),
/**/point_type = circle,
/**/point_size = 2,points(pibL),
/**/color=white,
/**/point_type = filled_circle,point_size = 2,
/**/points([[xS,yS]])
/**/) /* "赤が定義域での関数(◆修正時y,y2の定義域変更)" */
)$
(TEJUN:"",
TIIKI:" 0<=y and y<=8 " /* "値域(◆修正部分3)" */,
SAIDAITI:" y=8 (x=-2)" /* "最大値(◆修正部分3)" */,
SAISHOUTI:" y=0 (x=2)" /* "最小値(◆修正部分3)" */,
ansl:[TIIKI,SAIDAITI,SAISHOUTI,"値域,最大値,最小値"]
)$
(KETURON:"",
print(MONDAI),print(ansl)
)$
◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
MONDAI:"108 関数y=-3/2*x+5 (-2<= x<= 2)のグラフ・値域・最大値・最小値は(◆修正部分1)"$
f(x):=if ev(teigiIki,nouns,numer) then -3/2*x +5 else false /* "関数;定義域内(◆修正部分2)" */;
f2(x):=if not ev(teigiIki,nouns,numer) then -3/2*x +5 else false /* "定義域外(◆修正部分2)" */;
TIIKI:" 2<=y and y<=8 " /* "値域(◆修正部分3)" */,
SAIDAITI:" y=8 (x=-2)" /* "最大値(◆修正部分3)" */,
SAISHOUTI:" y=2 (x=2)" /* "最小値(◆修正部分3)" */,
:
2.2次関数のグラフ
A 2次関数y=a*x^2のグラフ
▼コマンド番号201
●練習5
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "201 2次関数のグラフ、凹凸" */$
(MONDAI:"201 2次関数 y =3*x^2 のグラフ・頂点・軸・凹凸は?(◆修正部分)")$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),subl:[x =3/7],
STEP:"0End")$
(STEP:"1",
Y:3*x^2 /* "関数式をYで指定(◆修正時変更)" */,
e1:[" y =3*(x-0)^2","(頂点着目式変形)",flt(subl,[Y, 3*(x-0)^2] )],print(e1) /*(◆修正時変更)" */,/*
*/STEP:"1End")$
(STEP:"2",
pP:[[0,0]] /* "頂点の座標を入力(◆修正時変更)" */,
eA:[x=0] /* "軸を入力(◆修正時変更)" */,
totu:"u" /* "上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "グラフ描画範囲(◆修正時変更)" */,
youten:[pP,eA,totu,hani,"頂点(元[、後])、軸(元[、後])、凸、範囲"],print(youten),/*
*/STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/line_width =3,
/**/color=red,explicit(Y,x,xS,xL) /* "()" */,
/**/line_width =1,
/**/color=black,implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/color=black,implicit(x=0,x,xS,xL,y,yS,yL) /* "(y軸)" */,
/**/color=blue,implicit(eA[1],x,xS,xL,y,yS,yL),
/**/point_type =6,point_size =2,points(pP))/* "グラフ(赤)、軸・頂点(青))" */,/*
*/STEP:"3End")$
(STEP:"4",
print(MONDAI),
print(youten),/*
*/STEP:"4End")$
/*
*//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI:"201 2次関数 y =-1/3*x^2 のグラフ・頂点・軸・凹凸は?(◆修正部分)")$
*/
B 2次関数y=a*x^2 +qのグラフ
▼コマンド番号202
●練習6
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "202 2次関数のグラフ、凹凸" */$
(MONDAI:"202 2次関数 y =2*x^2-3 のグラフ・頂点・軸・凹凸は?(◆修正部分)")$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),subl:[x =3/7],
STEP:"0End")$
(STEP:"1",
Y:2*x^2-3 /* "関数式をYで指定(◆修正時変更)" */,
e1:[" y =2*(x-0)^2 -3","(頂点着目式変形)",flt(subl,[Y, 2*(x-0)^2 -3] )],print(e1) /*(◆修正時変更)" */,/*
*/STEP:"1End")$
(STEP:"2",
pP:[[0,-3]] /* "頂点の座標を入力(◆修正時変更)" */,
eA:[x=0] /* "軸を入力(◆修正時変更)" */,
totu:"u" /* "上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "グラフ描画範囲(◆修正時変更)" */,
youten:[pP,eA,totu,hani,"頂点(元[、後])、軸(元[、後])、凸、範囲"],print(youten),/*
*/STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/line_width =3,
/**/color=red,explicit(Y,x,xS,xL) /* "()" */,
/**/line_width =1,
/**/color=black,implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/color=black,implicit(x=0,x,xS,xL,y,yS,yL) /* "(y軸)" */,
/**/color=blue,implicit(eA[1],x,xS,xL,y,yS,yL),
/**/point_type =6,point_size =2,points(pP))/* "グラフ(赤)、軸・頂点(青))" */,/*
*/STEP:"3End")$
(STEP:"4",
print(MONDAI),
print(youten),/*
*/STEP:"4End")$
/*
*//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI:"202 2次関数 y =-x^2-2 のグラフ・頂点・軸・凹凸は?(◆修正部分)")$
*/
▼コマンド番号203
●練習7
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "203 2次関数のグラフ、凹凸" */;
(MONDAI:"203 2次関数 y =-2*x^2 +3 のグラフ・頂点・軸・凹凸は?(◆修正部分)")$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),subl:[x =3/7],
STEP:"0End")$
(STEP:"1",
Y:-2*x^2 +3 /* "関数式をYで指定(◆修正時変更)" */,
e1:[" y =-2*(x-0)^2 +3","(頂点着目式変形)",flt(subl,[Y, -2*(x-0)^2 +3] )],print(e1) /*(◆修正時変更)" */,/*
*/STEP:"1End")$
(STEP:"2",
pP:[[0,3]] /* "頂点の座標を入力(◆修正時変更)" */,
eA:[x=0] /* "軸を入力(◆修正時変更)" */,
totu:"n" /* "上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "グラフ描画範囲(◆修正時変更)" */,
youten:[pP,eA,totu,hani,"頂点(元[、後])、軸(元[、後])、凸、範囲"],print(youten),/*
*/STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/line_width =3,
/**/color=red,explicit(Y,x,xS,xL) /* "()" */,
/**/line_width =1,
/**/color=black,implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/color=black,implicit(x=0,x,xS,xL,y,yS,yL) /* "(y軸)" */,
/**/color=blue,implicit(eA[1],x,xS,xL,y,yS,yL),
/**/point_type =6,point_size =2,points(pP))/* "グラフ(赤)、軸・頂点(青))" */,/*
*/STEP:"3End")$
(STEP:"4",
print(MONDAI),
print(youten),/*
*/STEP:"4End")$
/*
*//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI:"203 2次関数 y =1/2*x^2 -4 のグラフ・頂点・軸・凹凸は?(◆修正部分)")$
*/
C 2次関数y=a*(x-p)^2 のグラフ
▼コマンド番号204
●練習8
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "204 2次関数のグラフ、凹凸" */;
(MONDAI:"204 2次関数 y =(x-2)^2 のグラフ・頂点・軸・凹凸は?(◆修正部分)")$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),subl:[x =3/7],
STEP:"0End")$
(STEP:"1",
Y:(x-2)^2 /* "関数式をYで指定(◆修正時変更)" */,
e1:[" y =(x-2)^2 +0","(頂点着目式変形)",flt(subl,[Y, (x-2)^2 +0] )],print(e1) /*(◆修正時変更)" */,/*
*/STEP:"1End")$
(STEP:"2",
pP:[[2,0]] /* "頂点の座標を入力(◆修正時変更)" */,
eA:[x=2] /* "軸を入力(◆修正時変更)" */,
totu:"u" /* "上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "グラフ描画範囲(◆修正時変更)" */,
youten:[pP,eA,totu,hani,"頂点(元[、後])、軸(元[、後])、凸、範囲"],print(youten),/*
*/STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/line_width =3,
/**/color=red,explicit(Y,x,xS,xL) /* "()" */,
/**/line_width =1,
/**/color=black,implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/color=black,implicit(x=0,x,xS,xL,y,yS,yL) /* "(y軸)" */,
/**/color=blue,implicit(eA[1],x,xS,xL,y,yS,yL),
/**/point_type =6,point_size =2,points(pP))/* "グラフ(赤)、軸・頂点(青))" */,/*
*/STEP:"3End")$
(STEP:"4",
print(MONDAI),
print(youten),/*
*/STEP:"4End")$
/*
*//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI:"204 2次関数 y =-(x+2)^2 のグラフ・頂点・軸・凹凸は?(◆修正部分)")$
*/
D 2次関数y=a*(x-p)^2 +qのグラフ
▼コマンド番号205
●例3
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "205 2次関数のグラフ、凹凸" */;
(MONDAI:"205 2次関数 y =2*(x-3)^2 +1 のグラフ・頂点・軸・凹凸は?(◆修正部分)")$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),subl:[x =3/7],
STEP:"0End")$
(STEP:"1",
Y:2*(x-3)^2 +1 /* "関数式をYで指定(◆修正時変更)" */,
e1:[" y =2*(x-3)^2 +1","(頂点着目式変形)",flt(subl,[Y, 2*(x-3)^2 +1] )],print(e1) /*(◆修正時変更)" */,/*
*/STEP:"1End")$
(STEP:"2",
pP:[[3,1]] /* "頂点の座標を入力(◆修正時変更)" */,
eA:[x=3] /* "軸を入力(◆修正時変更)" */,
totu:"u" /* "上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "グラフ描画範囲(◆修正時変更)" */,
youten:[pP,eA,totu,hani,"頂点(元[、後])、軸(元[、後])、凸、範囲"],print(youten),/*
*/STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/line_width =3,
/**/color=red,explicit(Y,x,xS,xL) /* "()" */,
/**/line_width =1,
/**/color=black,implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/color=black,implicit(x=0,x,xS,xL,y,yS,yL) /* "(y軸)" */,
/**/color=blue,implicit(eA[1],x,xS,xL,y,yS,yL),
/**/point_type =6,point_size =2,points(pP))/* "グラフ(赤)、軸・頂点(青))" */,/*
*/STEP:"3End")$
(STEP:"4",
print(MONDAI),
print(youten),/*
*/STEP:"4End")$
/*
*//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI:"205 2次関数 y =2*(x+2)^2 -4 のグラフ・頂点・軸・凹凸は?(◆修正部分)")$
*/
▼コマンド番号206
●練習9
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "206 2次関数のグラフ、凹凸" */;
(MONDAI:"205 2次関数 y =(x-1)^2 +2 のグラフ・頂点・軸・凹凸は?(◆修正部分)")$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),subl:[x =3/7],
STEP:"0End")$
(STEP:"1",
Y:(x-1)^2 +2 /* "関数式をYで指定(◆修正時変更)" */,
e1:[" y =(x-1)^2 +2","(頂点着目式変形)",flt(subl,[Y, (x-1)^2 +2] )],print(e1) /*(◆修正時変更)" */,/*
*/STEP:"1End")$
(STEP:"2",
pP:[[1,2]] /* "頂点の座標を入力(◆修正時変更)" */,
eA:[x=1] /* "軸を入力(◆修正時変更)" */,
totu:"u" /* "上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "グラフ描画範囲(◆修正時変更)" */,
youten:[pP,eA,totu,hani,"頂点(元[、後])、軸(元[、後])、凸、範囲"],print(youten),/*
*/STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/line_width =3,
/**/color=red,explicit(Y,x,xS,xL) /* "()" */,
/**/line_width =1,
/**/color=black,implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/color=black,implicit(x=0,x,xS,xL,y,yS,yL) /* "(y軸)" */,
/**/color=blue,implicit(eA[1],x,xS,xL,y,yS,yL),
/**/point_type =6,point_size =2,points(pP))/* "グラフ(赤)、軸・頂点(青))" */,/*
*/STEP:"3End")$
(STEP:"4",
print(MONDAI),
print(youten),/*
*/STEP:"4End")$
/*
*//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI:"206 2次関数 y =-1/2*(x+2)^2 -1 のグラフ・頂点・軸・凹凸は?(◆修正部分)")$
*/
▼コマンド番号207
●例4
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "207 平行移動" */;
(MONDAI:"207 2次関数 y=2*x^2のグラフを、x軸方向に1、y軸方向に3、平行移動_____した関数?(◆修正部分)",
MIKATA:"平行移動の変換式は、・・・"
)$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),subl:[x =3/7],
STEP:"0End")$
(STEP:"1",
Y0:2*x^2, subL:[X=x+1, Y=y+3,x=3/7, y=flt(subl,Y0)]/*(x,y) >> (X,Y) */ /*(◆修正時変更)*/,
e1:["y =2*x^2 >> Y -3 =2*(X-1)^2 ", "変換式を代入ーーーーーーーーーー", subL, flt(subL,y =2*x^2 )," >>", flt(subL, Y -3 =2*(X-1)^2 )], print(e1) /*(◆修正時変更)*/,
e2:["Y =X^2*(2) +X*(-4) +(2 +3) ", "Y =...へX^2,X,定数ごとに係数整理ーーーーー", flt(subL,Y =X^2*(2) +X*(-4) +(2+3) )], print(e2) /*(◆修正時変更)*/,
e3:[" =2*X^2 -4*X +5 ", "係数計算ーーーーーーーーーーーーーーーー", flt(subL,2*X^2 -4*X +5 )], print(e3) /*(◆修正時変更)*/,
e9:["y =2*x^2 -4*x +5 ", "変数をx,yに書き換えーーーーー ", flt(subL,subst([x=X,y=Y],y =2*x^2 -4*x +5) )], print(e9) /*(◆修正時変更)*/,
ansl:[e9[1],"(結論)"],print(ansl)/**/ ,
Y01:2*x^2, e91:[Y0,Y01,flt(subl,[Y0,Y01])], print(e91) /*Y0の平方完成*//*(◆修正時変更)*/,
Y:2*x^2 -4*x +5, Y1:2*(x -1)^2 +3, e92:[Y,Y1,flt(subl,[Y,Y1])],print(e92) /*Yの平方完成*//*(◆修正時変更)*//**/,
STEP:"1End")$
(STEP:"2",
kakuninn:"グラフもチェック",
pP:[[0,0],[1,3]] /* "◇頂点の座標(◆修正時変更)" */,
eA:[x=0,x=1] /* "◇軸を入力(◆修正時変更)" */,
totu:"u" /* "◇上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "◇グラフ描画範囲" */,
youten:[pP,eA,totu,hani,"頂点(元、後)、軸(元、後)、凸、範囲"],print(youten),
STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/color=red,
/**/line_width =3,explicit(Y,x,xS,xL) /* "後の式のグラフ(太赤))" */,
/**/line_width =1,explicit(Y0,x,xS,xL) /* "元の式のグラフ(細赤))" */,
/**/color=blue,point_type =6,
/**/line_width =3,implicit(eA[2],x,xS,xL,y,yS,yL)/*"軸"*/,
/**/line_width =1,implicit(eA[1],x,xS,xL,y,yS,yL)/*"軸"*/,
/**/point_size =2,points(pP)/*"頂点"*/,
/**/color=black,line_width =1 /**/,
/**/implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/implicit(x=0,x,xS,xL,y,yS,yL)) /* "(y軸)" */,
STEP:"3End",print("グラフでチェック(◇もとのグラフが細線◇)"))$
/*
(STEP:"4",
print(MONDAI),
print(ansl),
print(youten),
STEP:"4End")$
*//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI:"207 2次関数 y=2*x^2のグラフを、x軸方向に-1、y軸方向に3、平行移動_____した関数?(◆修正部分)",
*/
▼コマンド番号208
●練習10
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "208 平行移動" */$
(MONDAI:"208 2次関数 y=-3*x^2のグラフを、x軸方向に4、y軸方向に2、平行移動_____した関数?(◆修正部分)",
MIKATA:"平行移動の変換式は、・・・"
)$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),subl:[x =3/7],
STEP:"0End")$
(STEP:"1",
Y0:-3*x^2, subL:[X=x+4, Y=y+2,x=3/7, y=flt(subl,Y0)]/*(x,y) >> (X,Y) */ /*(◆修正時変更)*/,
e1:["y =-3*x^2 >> Y -2 =-3*(X-4)^2 ", "変換式を代入ーーーーーーーーーー", subL, flt(subL,y =-3*x^2 )," >>", flt(subL, Y -2 =-3*(X-4)^2 )], print(e1) /*(◆修正時変更)*/,
e2:["Y =X^2*(-3) +X*(24) +(-48 +2) ", "Y =...へX^2,X,定数ごとに係数整理ーーーーー", flt(subL,Y =X^2*(-3) +X*(24) +(-48+2) )], print(e2) /*(◆修正時変更)*/,
e3:[" =-3*X^2 +24*X -46 ", "係数計算ーーーーーーーーーーーーーーーー", flt(subL,-3*X^2 +24*X -46 )], print(e3) /*(◆修正時変更)*/,
e9:["y =-3*x^2 +24*x -46 ", "変数をx,yに書き換えーーーーー ", flt(subL,subst([x=X,y=Y],y =-3*x^2 +24*x -46) )], print(e9) /*(◆修正時変更)*/,
ansl:[e9[1],"(結論)"],print(ansl)/**/ ,
Y01:-3*x^2, e91:[Y0,Y01,flt(subl,[Y0,Y01])], print(e91) /*Y0の平方完成*//*(◆修正時変更)*/,
Y:-3*x^2 +24*x -46, Y1:-3*(x -4)^2 +2, e92:[Y,Y1,flt(subl,[Y,Y1])],print(e92) /*Yの平方完成*//*(◆修正時変更)*//**/,
STEP:"1End")$
(STEP:"2",
kakuninn:"グラフもチェック",
pP:[[0,0],[4,2]] /* "◇頂点の座標(◆修正時変更)" */,
eA:[x=0,x=4] /* "◇軸を入力(◆修正時変更)" */,
totu:"n" /* "◇上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "◇グラフ描画範囲" */,
youten:[pP,eA,totu,hani,"頂点(元、後)、軸(元、後)、凸、範囲"],print(youten),
STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/color=red,
/**/line_width =3,explicit(Y,x,xS,xL) /* "後の式のグラフ(太赤))" */,
/**/line_width =1,explicit(Y0,x,xS,xL) /* "元の式のグラフ(細赤))" */,
/**/color=blue,point_type =6,
/**/line_width =3,implicit(eA[2],x,xS,xL,y,yS,yL)/*"軸"*/,
/**/line_width =1,implicit(eA[1],x,xS,xL,y,yS,yL)/*"軸"*/,
/**/point_size =2,points(pP)/*"頂点"*/,
/**/color=black,line_width =1 /**/,
/**/implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/implicit(x=0,x,xS,xL,y,yS,yL)) /* "(y軸)" */,
STEP:"3End",print("グラフでチェック(◇もとのグラフが細線◇)"))$
(STEP:"4",
print(MONDAI),
print(ansl),
print(youten),
STEP:"4End")$
/**//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI:"208 2次関数 y=-3*x^2のグラフを、x軸方向に-4、y軸方向に2、 平行移動した関数は?(◆修正部分)",
*/
ED 2次関数y=a*x^2 +b*x +cのグラフ
▼コマンド番号209
●例5
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "209 2次関数のグラフ、凹凸" */;
MONDAI:"209 2次関数 y =x^2 +4*xのグラフは?(◆修正部分)"$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),
STEP:"0End")$
(STEP:"1",
Y0:x^2 +4*x, subl:[x =3/7] /* "(◆修正時変更)" */,
e1:[ "x^2 +4*x =x^2 +4*x +2^2 -2^2", "1次係数4の半分の平方を加減", subl, flt(subl,x^2 +4*x =x^2 +4*x +2^2 -2^2 )], print(e1) /* "(◆修正時変更)" */,
e2:[" =",(x +2)^2 -4, "前3項を平方の因数分解ーーーーーーー", subl, flt(subl,(x +2)^2 -4 )],print(e2) /* "(◆修正時変更)" */,
Y:e2[2] /* "◇平方完成" */,
ansl:[Y0,"=",Y,"(平方完成)"],print(ansl)/**/,
STEP:"1End")$
(STEP:"2",
kakuninn:"グラフもチェック(◇曲線が2つできたら間違い◇)",
pP:[[-2,-4]] /* "◇頂点の座標(◆修正時変更)" */,
eA:x=-2 /* "◇軸を入力(◆修正時変更)" */,
totu:"u" /* "◇上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "◇グラフ描画範囲(◆修正時変更)" */,
youten:[pP,eA,totu,hani,"頂点、軸、凸、範囲"],print(youten),
STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/color=red,
/**/line_width =3,explicit(Y,x,xS,xL) /* "()" */,
/**/line_width =1,explicit(Y0,x,xS,xL) /* "()" */,
/**/color=blue,point_type =6,
/**/line_width =3,implicit(eA,x,xS,xL,y,yS,yL),
/**/point_size =2,points(pP)/* "平方完成した式のグラフ(太赤)、軸・頂点(太青))" */,
/**/color=black,line_width =1 /* "元の式のグラフ(細赤)、軸・頂点(細青))" */,
/**/implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/implicit(x=0,x,xS,xL,y,yS,yL)) /* "(y軸)" */,
STEP:"3End",print("グラフでチェック(◇曲線が2つできたら間違い◇)"))$
(STEP:"4",
print(ansl),
print(youten),
STEP:"4End")$
/**//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
MONDAI:"209 2次関数 y =x^2 -3*x +2のグラフは?(◆修正部分1)"$
*/
▼コマンド番号210
●練習11
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "210 2次関数のグラフ、凹凸" */;
MONDAI:"210 2次関数 y =x^2 +6*x +8のグラフは?(◆修正部分)"$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),
STEP:"0End")$
(STEP:"1",
Y0:x^2 +6*x +8, subl:[x =3/7] /* "(◆修正時変更)" */,
e1:[ "x^2 +6*x +8 =x^2 +6*x +3^2 -3^2 +8", "1次係数4の半分の平方を加減", subl, flt(subl,x^2 +6*x +8 =x^2 +6*x +3^2 -3^2 +8 )], print(e1) /* "(◆修正時変更)" */,
e2:[" =",(x +3)^2 -1, "前3項を平方の因数分解、4項以降計算", subl, flt(subl,(x +3)^2 -1 )],print(e2) /* "(◆修正時変更)" */,
Y:e2[2] /* "◇平方完成" */,
ansl:[Y0,"=",Y,"(平方完成)"],print(ansl)/**/,
STEP:"1End")$
(STEP:"2",
kakuninn:"グラフもチェック(◇曲線が2つできたら間違い◇)",
pP:[[-3,-1]] /* "◇頂点の座標(◆修正時変更)" */,
eA:x=-3 /* "◇軸を入力(◆修正時変更)" */,
totu:"u" /* "◇上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "◇グラフ描画範囲(◆修正時変更)" */,
youten:[pP,eA,totu,hani,"頂点、軸、凸、範囲"],print(youten),
STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/color=red,
/**/line_width =3,explicit(Y,x,xS,xL) /* "平方完成した式のグラフ(太赤))" */,
/**/line_width =1,explicit(Y0,x,xS,xL) /* "元の式のグラフ(細赤))" */,
/**/color=blue,point_type =6,
/**/line_width =3,implicit(eA,x,xS,xL,y,yS,yL)/*"軸"*/,
/**/point_size =2,points(pP)/*"頂点"*/,
/**/color=black,line_width =1 /**/,
/**/implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/implicit(x=0,x,xS,xL,y,yS,yL)) /* "(y軸)" */,
STEP:"3End",print("グラフでチェック(◇曲線が2つできたら間違い◇)"))$
(STEP:"4",
print(ansl),
print(youten),
STEP:"4End")$
/**//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
MONDAI:"210 2次関数 y =x^2 -7*x +12のグラフは?(◆修正部分)"$
*/
▼コマンド番号211
●例6
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "211 2次関数のグラフ、凹凸" */;
MONDAI:"211 2次関数 y =3*x^2 +6*x +2のグラフは?(◆修正部分)"$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),
STEP:"0End")$
(STEP:"1",
Y0:3*x^2 +6*x +2, subl:[x =3/7] /* "(◆修正時変更)" */,
e1:["3*x^2 +6*x +2 =3*(x^2 +2*x) +2", "2次係数括り出し(第2項まで)ーーーーーーーーーー", subl, flt(subl,3*x^2 +6*x +2 =3*(x^2 +2*x) +2 )], print(e1) /* "(◆修正時変更)" */,
e2:[" =3*(x^2 +2*x +(2/2)^2 -(2/2)^2) +2", "括り出し中で、1次係数2の半分の平方を加減ーーーーー", subl, flt(subl,3*(x^2 +2*x +(2/2)^2 -(2/2)^2) +2 )], print(e2) /* "(◆修正時変更)" */,
e3:[" =3*(x +1)^2) -3 +2", "括り出し中で、前3項を平方の因数分解 して第4項を外へーーーーーーーーーーーーーーー", subl, flt(subl,3*(x +1)^2 -3 +2 )], print(e3) /* "(◆修正時変更)" */,
e4:[" =",3*(x +1)^2 -1, "平方の因数分解を残して整理ーーー", subl, flt(subl,3*(x +1)^2 -1 )],print(e4) /* "(◆修正時変更)" */,
Y:e4[2] /* "◇平方完成" */,
ansl:[Y0,"=",Y,"(平方完成)"],print(ansl)/**/,
STEP:"1End")$
(STEP:"2",
kakuninn:"グラフもチェック(◇曲線が2つできたら間違い◇)",
pP:[[-1,-1]] /* "◇頂点の座標(◆修正時変更)" */,
eA:x=-1 /* "◇軸を入力(◆修正時変更)" */,
totu:"u" /* "◇上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "◇グラフ描画範囲(◆修正時変更)" */,
youten:[pP,eA,totu,hani,"頂点、軸、凸、範囲"],print(youten),
STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/color=red,
/**/line_width =3,explicit(Y,x,xS,xL) /* "平方完成した式のグラフ(太赤))" */,
/**/line_width =1,explicit(Y0,x,xS,xL) /* "元の式のグラフ(細赤))" */,
/**/color=blue,point_type =6,
/**/line_width =3,implicit(eA,x,xS,xL,y,yS,yL)/*"軸"*/,
/**/point_size =2,points(pP)/*"頂点"*/,
/**/color=black,line_width =1 /**/,
/**/implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/implicit(x=0,x,xS,xL,y,yS,yL)) /* "(y軸)" */,
STEP:"3End",print("グラフでチェック(◇曲線が2つできたら間違い◇)"))$
(STEP:"4",
print(ansl),
print(youten),
STEP:"4End")$
/**//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
MONDAI:"211 2次関数 y =-2*x^2 +4*x +3 のグラフは?(◆修正部分)"$
*/
▼コマンド番号212
●連数12
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "212 2次関数のグラフ、凹凸" */;
MONDAI:"212 2次関数 y =3*x^2 +9*x +4 のグラフは?(◆修正部分)"$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),
STEP:"0End")$
(STEP:"1",
Y0:3*x^2 +9*x +4, subl:[x =3/7] /* "(◆修正時変更)" */,
e1:["3*x^2 +9*x +4 =3*(x^2 +3*x) +4", "2次係数括り出し(第2項まで)ーーーーーーーーーー", subl, flt(subl,3*x^2 +9*x +4 =3*(x^2 +3*x) +4 )], print(e1) /* "(◆修正時変更)" */,
e2:[" =3*(x^2 +3*x +(3/2)^2 -(3/2)^2) +4", "括り出し中で、1次係数2の半分の平方を加減ーーーーー", subl, flt(subl,3*(x^2 +3*x +(3/2)^2 -(3/2)^2) +4 )], print(e2) /* "(◆修正時変更)" */,
e3:[" =3*((x +3/2)^2) -27/4 +4", "括り出し中で、前3項を平方の 因数分解して第4項を外へーーーーーーーーーーーーー", subl, flt(subl,3*((x +3/2)^2) -27/4 +4 )], print(e3) /* "(◆修正時変更)" */,
e4:[" =",3*(x +3/2)^2 -11/4, "平方の因数分解を残して整理ーーー", subl, flt(subl,3*(x +3/2)^2 -11/4 )],print(e4) /* "(◆修正時変更)" */,
Y:e4[2] /* "◇平方完成" */,
ansl:[Y0,"=",Y,"(平方完成)"],print(ansl)/**/,
STEP:"1End")$
(STEP:"2",
kakuninn:"グラフもチェック(◇曲線が2つできたら間違い◇)",
pP:[[-3/2,-11/4]] /* "◇頂点の座標(◆修正時変更)" */,
eA:x=-3/2 /* "◇軸を入力(◆修正時変更)" */,
totu:"u" /* "◇上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "◇グラフ描画範囲(◆修正時変更)" */,
youten:[pP,eA,totu,hani,"頂点、軸、凸、範囲"],print(youten),
STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/color=red,
/**/line_width =3,explicit(Y,x,xS,xL) /* "平方完成した式のグラフ(太赤))" */,
/**/line_width =1,explicit(Y0,x,xS,xL) /* "元の式のグラフ(細赤))" */,
/**/color=blue,point_type =6,
/**/line_width =3,implicit(eA,x,xS,xL,y,yS,yL)/*"軸"*/,
/**/point_size =2,points(pP)/*"頂点"*/,
/**/color=black,line_width =1 /**/,
/**/implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/implicit(x=0,x,xS,xL,y,yS,yL)) /* "(y軸)" */,
STEP:"3End",print("グラフでチェック(◇曲線が2つできたら間違い◇)"))$
(STEP:"4",
print(ansl),
print(youten),
STEP:"4End")$
/**//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
MONDAI:"212 2次関数 y =-2*x^2 -6*x +1のグラフは?(◆修正部分)"$
*/
▼コマンド番号213
●例題3
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "213 2次関数のグラフ、凹凸" */;
MONDAI:"213 2次関数 y =-2*x^2 -4*x +1 のグラフは?(◆修正部分)"$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),
STEP:"0End")$
(STEP:"1",
Y0:-2*x^2 -4*x +1, subl:[x =3/7] /* "(◆修正時変更)" */,
e1:["-2*x^2 -4*x +1 =-2*(x^2 +2*x) +1", "2次係数括り出し(第2項まで)ーーーーーーーーーー", subl, flt(subl,-2*x^2 -4*x +1 =-2*(x^2 +2*x) +1 )], print(e1) /* "(◆修正時変更)" */,
e2:[" =-2*(x^2 +2*x +(2/2)^2 -(2/2)^2) +1", "括り出し中で、1次係数2の半分の平方を加減ーーーーー", subl, flt(subl,-2*(x^2 +2*x +(2/2)^2 -(2/2)^2) +1 )], print(e2) /* "(◆修正時変更)" */,
e3:[" =-2*((x +1)^2) +2 +1", "括り出し中で、前3項を平方の 因数分解して第4項を外へーーーーーーーーーーーーー", subl, flt(subl,-2*((x +1)^2) +2 +1 )], print(e3) /* "(◆修正時変更)" */,
e4:[" =",-2*(x +1)^2 +3, "平方の因数分解を残して整理ーーー", subl, flt(subl,-2*(x +1)^2 +3 )],print(e4) /* "(◆修正時変更)" */,
Y:e4[2] /* "◇平方完成" */,
ansl:[Y0,"=",Y,"(平方完成)"],print(ansl)/**/,
STEP:"1End")$
(STEP:"2",
kakuninn:"グラフもチェック(◇曲線が2つできたら間違い◇)",
pP:[[-1,3]] /* "◇頂点の座標(◆修正時変更)" */,
eA:x=-1 /* "◇軸を入力(◆修正時変更)" */,
totu:"n" /* "◇上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "◇グラフ描画範囲(◆修正時変更)" */,
youten:[pP,eA,totu,hani,"頂点、軸、凸、範囲"],print(youten),
STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/color=red,
/**/line_width =3,explicit(Y,x,xS,xL) /* "平方完成した式のグラフ(太赤))" */,
/**/line_width =1,explicit(Y0,x,xS,xL) /* "元の式のグラフ(細赤))" */,
/**/color=blue,point_type =6,
/**/line_width =3,implicit(eA,x,xS,xL,y,yS,yL)/*"軸"*/,
/**/point_size =2,points(pP)/*"頂点"*/,
/**/color=black,line_width =1 /**/,
/**/implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/implicit(x=0,x,xS,xL,y,yS,yL)) /* "(y軸)" */,
STEP:"3End",print("グラフでチェック(◇曲線が2つできたら間違い◇)"))$
(STEP:"4",
print(ansl),
print(youten),
STEP:"4End")$
/**//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
MONDAI:"213 2次関数 y =x^2 -6*x +5のグラフは?(◆修正部分)"$
*/
▼コマンド番号214
●練習13
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "214 2次関数のグラフ、凹凸" */;
MONDAI:"214 2次関数 y =2*x^2 +4*x -1 のグラフは?(◆修正部分)"$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),
STEP:"0End")$
(STEP:"1",
Y0:2*x^2 +4*x -1, subl:[x =3/7] /* "(◆修正時変更)" */,
e1:["2*x^2 +4*x -1 =2*(x^2 +2*x) -1", "2次係数括り出し(第2項まで)ーーーーーーーーーー", subl, flt(subl,2*x^2 +4*x -1 =2*(x^2 +2*x) -1 )], print(e1) /* "(◆修正時変更)" */,
e2:[" =2*(x^2 +2*x +(2/2)^2 -(2/2)^2) -1", "括り出し中で、1次係数2の半分の平方を加減ーーーーー", subl, flt(subl,2*(x^2 +2*x +(2/2)^2 -(2/2)^2) -1 )], print(e2) /* "(◆修正時変更)" */,
e3:[" =2*((x +1)^2) -2 -1", "括り出し中で、前3項を平方の 因数分解して第4項を外へーーーーーーーーーーーーー", subl, flt(subl,2*((x +1)^2) -2 -1 )], print(e3) /* "(◆修正時変更)" */,
e4:[" =",2*(x +1)^2 -3, "平方の因数分解を残して整理ーーー", subl, flt(subl,2*(x +1)^2 -3 )],print(e4) /* "(◆修正時変更)" */,
Y:e4[2] /* "◇平方完成" */,
ansl:[Y0,"=",Y,"(平方完成)"],print(ansl)/**/,
STEP:"1End")$
(STEP:"2",
kakuninn:"グラフもチェック(◇曲線が2つできたら間違い◇)",
pP:[[-1,-3]] /* "◇頂点の座標(◆修正時変更)" */,
eA:x=-1 /* "◇軸を入力(◆修正時変更)" */,
totu:"u" /* "◇上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "◇グラフ描画範囲(◆修正時変更)" */,
youten:[pP,eA,totu,hani,"頂点、軸、凸、範囲"],print(youten),
STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/color=red,
/**/line_width =3,explicit(Y,x,xS,xL) /* "平方完成した式のグラフ(太赤))" */,
/**/line_width =1,explicit(Y0,x,xS,xL) /* "元の式のグラフ(細赤))" */,
/**/color=blue,point_type =6,
/**/line_width =3,implicit(eA,x,xS,xL,y,yS,yL)/*"軸"*/,
/**/point_size =2,points(pP)/*"頂点"*/,
/**/color=black,line_width =1 /**/,
/**/implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/implicit(x=0,x,xS,xL,y,yS,yL)) /* "(y軸)" */,
STEP:"3End",print("グラフでチェック(◇曲線が2つできたら間違い◇)"))$
(STEP:"4",
print(ansl),
print(youten),
STEP:"4End")$
/**//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
MONDAI:"214 2次関数 y =-x^2 +3*x のグラフは?(◆修正部分)"$
*/
▼コマンド番号215
●応用例題1
2次関数のグラフ、平行移動●●●●●●●●●●●●●●●●
kill(all) /* "215 2次関数のグラフ、平行移動" */;
MONDAI:"215 2次関数 y =x^2 +2*x +2 のグラフは?(◆修正部分)"$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),
STEP:"0End")$
(STEP:"1",
Y0:x^2 +2*x +2, subl:[x =3/7] /* "(◆修正時変更)" */,
e1:["x^2 +2*x +2 =x^2 +2*x +(2/2)^2 -(2/2)^2 +2", "1次係数2の半分の平方を加減ーーーーーーーーーーー", subl, flt(subl,x^2 +2*x +2 =x^2 +2*x +(2/2)^2 -(2/2)^2 +2 )], print(e1) /* "(◆修正時変更)" */,
e2:[" =(x +1)^2 -1 +2", "前3項を平方の因数分解してーーーー ", subl, flt(subl,(x +1)^2 -1 +2 )], print(e2) /* "(◆修正時変更)" */,
e9:[" =",(x +1)^2 +1, "平方の因数分解を残して整理ーーーーー ", subl, flt(subl,(x +1)^2 +1 )],print(e9) /* "(◆修正時変更)" */,
Y:e9[2] /* "◇平方完成" */,
ansl:[Y0,"=",Y,"(平方完成)"],print(ansl)/**/,
STEP:"1End")$
(STEP:"2",
kakuninn:"グラフもチェック(◇曲線が2つできたら間違い◇)",
pP:[[-1,1]] /* "◇頂点の座標(◆修正時変更)" */,
eA:x=-1 /* "◇軸を入力(◆修正時変更)" */,
totu:"u" /* "◇上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "◇グラフ描画範囲(◆修正時変更)" */,
youten:[pP,eA,totu,hani,"頂点、軸、凸、範囲"],print(youten),
STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/color=red,
/**/line_width =3,explicit(Y,x,xS,xL) /* "平方完成した式のグラフ(太赤))" */,
/**/line_width =1,explicit(Y0,x,xS,xL) /* "元の式のグラフ(細赤))" */,
/**/color=blue,point_type =6,
/**/line_width =3,implicit(eA,x,xS,xL,y,yS,yL)/*"軸"*/,
/**/point_size =2,points(pP)/*"頂点"*/,
/**/color=black,line_width =1 /**/,
/**/implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/implicit(x=0,x,xS,xL,y,yS,yL)) /* "(y軸)" */,
STEP:"3End",print("グラフでチェック(◇曲線が2つできたら間違い◇)"))$
(STEP:"4",
print(ansl),
print(youten),
STEP:"4End")$
/**//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
MONDAI:"215 2次関数 y =x^2 -4*x +5 のグラフは?(◆修正部分)"$
*/
▼コマンド番号216
●練習14
2次関数のグラフ、平行移動●●●●●●●●●●●●●●●●
kill(all) /* "216 2次関数のグラフ、平行移動" */;
(MONDAI:"216 2次関数 y =2*x^2 -4*x のグラフを、どう平行移動すると y =2*x^2 に重なるか?(◆修正部分)",
MIKATA:"平方完成で見つかる頂点の平行移動を考察。なお、平方完成は頂点を見つける手段で、平行移動の手段ではない。"
)$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),subl:[x =3/7],
STEP:"0End")$
(STEP:"1",
Y0:2*x^2 -4*x, Y:2*x^2 /**/,
e1:["2*x^2 -4*x =2*(x^2 -2*x) ", "2次係数括り出し(第2項まで)ーーーーーーーーーー", subl, flt(subl,2*x^2 -4*x =2*(x^2 -2*x) )], print(e1) /**/,
e2:[" =2*(x^2 -2*x +(-2/2)^2 -(-2/2)^2) ", "括り出し中で、1次係数2の半分の平方を加減ーーーーー", subl, flt(subl,2*(x^2 -2*x +(-2/2)^2 -(-2/2)^2) )], print(e2) /**/,
e3:[" =2*((x -1)^2) -2 ", "括り出し中で、前3項を平方の因数分解 して第4項を外へーーーーーーーーーーーーーーーー", subl, flt(subl,2*((x -1)^2) -2 )], print(e3) /**/,
e4:[" =2*(x -1)^2 -2 ", "平方の因数分解を残して整理ーーーーー ", subl, flt(subl,2*(x -1)^2 -2 )], print(e4) /**/,
e21:["2*x^2 =2*(x^2 +0*x) +0 ", "2次係数括り出し(第2項まで)ーーーーーーーーーー", subl, flt(subl,2*x^2 =2*(x^2 +0*x) +0 )], print(e21) /* "(◆修正時変更)" */,
e22:[" =2*(x^2 +0*x +(0/2)^2 -(0/2)^2) +0 ", "括り出し中で、1次係数2の半分の平方を加減ーーーーー", subl, flt(subl,2*(x^2 +0*x +(0/2)^2 -(0/2)^2) +0 )], print(e22) /* "(◆修正時変更)" */,
e23:[" =2*((x +0)^2) -0 +0 ", "括り出し中で、前3項を平方の因数分解 して第4項を外へーーーーーーーーーーーーーーーー", subl, flt(subl,2*((x +0)^2) -0 +0 )], print(e23) /* "(◆修正時変更)" */,
e24:[" =2*(x +0)^2 +0 ", "平方の因数分解を残して整理ーーーーー ", subl, flt(subl,2*(x +0)^2 +0 )], print(e24) /* "(◆修正時変更)" */,
e5:["(1, -2) >> (0, 0)", "y=Y0の頂点 >> y=Yの頂点ーーーーー "],print(e5) /* "(◆修正時変更)" */,
e9:[" x軸方向へ−1,y軸方向へ2", "頂点の平行移動から判断"],print(e9) /* "(◆修正時変更)" */,
ansl:[e9[1],"(結論)"],print(ansl)/**/,
STEP:"1End")$
(STEP:"2",
kakuninn:"グラフもチェック",
pP:[[1,-2],[0,0]] /* "◇頂点の座標(◆修正時変更)" */,
eA:[x=1,x=0] /* "◇軸を入力(◆修正時変更)" */,
totu:"u" /* "◇上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "◇グラフ描画範囲" */,
youten:[pP,eA,totu,hani,"頂点(元、後)、軸(元、後)、凸、範囲"],print(youten),
STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/color=red,
/**/line_width =3,explicit(Y,x,xS,xL) /* "後の式のグラフ(太赤))" */,
/**/line_width =1,explicit(Y0,x,xS,xL) /* "元の式のグラフ(細赤))" */,
/**/color=blue,point_type =6,
/**/line_width =3,implicit(eA[2],x,xS,xL,y,yS,yL)/*"軸"*/,
/**/line_width =1,implicit(eA[1],x,xS,xL,y,yS,yL)/*"軸"*/,
/**/point_size =2,points(pP)/*"頂点"*/,
/**/color=black,line_width =1 /**/,
/**/implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/implicit(x=0,x,xS,xL,y,yS,yL)) /* "(y軸)" */,
STEP:"3End",print("グラフでチェック(◇もとのグラフが細線◇)"))$
(STEP:"4",
print(ansl),
print(youten),
STEP:"4End")$
/**//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI:"216 2次関数 y =2*x^2 -4*x のグラフを、どう平行移動すると y =2*x^2 +4*x -3 に重なるか?(◆修正部分)",
*/
:
研究・補充問題
▼コマンド番号20101
●研究1
2次関数のグラフ、平行移動●●●●●●●●●●●●●●●●
kill(all) /* "20101 2次関数のグラフ、平行移動" */;
(MONDAI:"20101 2次関数 y =2*x^2 をx軸方向に4、y軸方向に3、平行移動_____した関数?(◆修正部分)",
MIKATA:"平行移動の変換式は、・・・"
)$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),subl:[x =3/7],
STEP:"0End")$
(STEP:"1",
Y0:2*x^2, subL:[X=x+4, Y=y+3,x=3/7, y=flt(subl,Y0)]/*(x,y) >> (X,Y) */ /*(◆修正時変更)*/,
e1:["y =2*x^2 >> Y -3 =2*(X-4)^2 ", "変換式を代入ーーーーーーーーーー", subL, flt(subL,y =2*x^2 )," >>", flt(subL, Y -3 =2*(X-4)^2 )], print(e1) /*(◆修正時変更)*/,
e2:["Y =X^2*(2) +X*(-16) +(32 +3) ", "Y =...へX^2,X,定数ごとに係数整理ーーーーー", subL, flt(subL,Y =X^2*(2) +X*(-16) +(32+3) )], print(e2) /*(◆修正時変更)*/,
e3:[" =2*X^2 -16*X +35 ", "係数計算ーーーーーーーーーーーーーーーー", subL, flt(subL,2*X^2 -16*X +35 )], print(e3) /*(◆修正時変更)*/,
e9:["y =2*x^2 -16*x +35 ", "変数をx,yに書き換えーーーーー ", subL, flt(subL,subst([x=X,y=Y],y =2*x^2 -16*x +35) )], print(e9) /*(◆修正時変更)*/,
ansl:[e9[1],"(結論)"],print(ansl)/**/ ,
Y01:2*x^2, e91:[Y0,Y01,flt(subl,[Y0,Y01])], print(e91) /*Y0の平方完成*//*(◆修正時変更)*/,
Y:2*x^2 -16*x +35, Y1:2*(x -4)^2 +3, e92:[Y,Y1,flt(subl,[Y,Y1])],print(e92) /*Yの平方完成*//*(◆修正時変更)*//**/,
STEP:"1End")$
(STEP:"2",
kakuninn:"グラフもチェック",
pP:[[0,0],[4,3]] /* "◇頂点の座標(◆修正時変更)" */,
eA:[x=0,x=4] /* "◇軸を入力(◆修正時変更)" */,
totu:"u" /* "◇上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "◇グラフ描画範囲" */,
youten:[pP,eA,totu,hani,"頂点(元、後)、軸(元、後)、凸、範囲"],print(youten),
STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/color=red,
/**/line_width =3,explicit(Y,x,xS,xL) /* "後の式のグラフ(太赤))" */,
/**/line_width =1,explicit(Y0,x,xS,xL) /* "元の式のグラフ(細赤))" */,
/**/color=blue,point_type =6,
/**/line_width =3,implicit(eA[2],x,xS,xL,y,yS,yL)/*"軸"*/,
/**/line_width =1,implicit(eA[1],x,xS,xL,y,yS,yL)/*"軸"*/,
/**/point_size =2,points(pP)/*"頂点"*/,
/**/color=black,line_width =1 /**/,
/**/implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/implicit(x=0,x,xS,xL,y,yS,yL)) /* "(y軸)" */,
STEP:"3End",print("グラフでチェック(◇もとのグラフが細線◇)"))$
(STEP:"4",
print(MONDAI),
print(ansl),
print(youten),
STEP:"4End")$
/**//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI:"20101 2次関数 y =2*x^2 +3*x +1 をx軸方向に1、y軸方向に3、平行移動した関数?(◆修正部分)",
*/
▼コマンド番号20102
●研究2
2次関数のグラフ、対称移動●●●●●●●●●●●●●●●●
kill(all) /* "20102 2次関数のグラフ、対称移動" */;
(MONDAI:"20102 2次関数 y =x^2 -4*x +5 のグラフをx軸に関して対称移動した関数?(◆修正部分)",
MIKATA:"対称移動の変換式は、・・・"
)$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),subl:[x =3/7],
STEP:"0End")$
(STEP:"1",
Y0:x^2 -4*x +5, subL:[X=x, Y=-y, x=3/7, y=flt(subl,Y0)]/*(x,y) >> (X,Y) */ /*(◆修正時変更)*/,
e1:["y =x^2 -4*x +5 >> -Y =X^2 -4*X +5 ", "変換式を代入ーーーーーーーーーー", subL, flt(subL,y =x^2 -4*x +5 )," >>", flt(subL, -Y =X^2 -4*X +5 )], print(e1) /*(◆修正時変更)*/,
e2:["Y =-X^2 +4*X -5 ", "Y =...へX^2,X,定数ごとに係数整理ーーーーー", subL, flt(subL,Y =-X^2 +4*X -5 )], print(e2) /*(◆修正時変更)*/,
e9:["y =-x^2 +4*x -5 ", "変数をx,yに書き換えーーーーー ", subL, flt(subL,subst([x=X,y=Y],y =-x^2 +4*x -5 ) )], print(e9) /*(◆修正時変更)*/,
ansl:[e9[1],"(結論)"],print(ansl)/**/ ,
Y01:(x -2)^2 +1, e91:[Y0,Y01,flt(subl,[Y0,Y01])], print(e91) /*Y0の平方完成*/ /*(◆修正時変更)*/,
Y:-x^2 +4*x -5, Y1:-(x -2)^2 -1, e92:[Y,Y1,flt(subl,[Y,Y1])],print(e92) /*Yの平方完成*//*(◆修正時変更)*//**/,
STEP:"1End")$
(STEP:"2",
kakuninn:"グラフもチェック(◇曲線が2つできたら間違い◇)",
pP:[[2,1],[2,-1]] /* "◇頂点の座標(◆修正時変更)" */,
eA:[x=2,x=2] /* "◇軸を入力(◆修正時変更)" */,
totu:"n" /* "◇上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "◇グラフ描画範囲" */,
youten:[pP,eA,totu,hani,"頂点(元、後)、軸(元、後)、凸、範囲"],print(youten),
STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/color=red,
/**/line_width =3,explicit(Y,x,xS,xL) /* "後の式のグラフ(太赤))" */,
/**/line_width =1,explicit(Y0,x,xS,xL) /* "元の式のグラフ(細赤))" */,
/**/color=blue,point_type =6,
/**/line_width =3,implicit(eA[2],x,xS,xL,y,yS,yL)/*"軸"*/,
/**/line_width =1,implicit(eA[1],x,xS,xL,y,yS,yL)/*"軸"*/,
/**/point_size =2,points(pP)/*"頂点"*/,
/**/color=black,line_width =1 /**/,
/**/implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/implicit(x=0,x,xS,xL,y,yS,yL)) /* "(y軸)" */,
STEP:"3End",print("グラフでチェック(◇もとのグラフが細線◇)"))$
(STEP:"4",
print(MONDAI),
print(ansl),
print(youten),
STEP:"4End")$
/**//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI:"20102 2次関数 y =x^2 -4*x +5 をy軸に関して対称移動した関数?(◆修正部分)",
*/
▼コマンド番号20103
●補充問題2
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "20103 2次関数のグラフ、凹凸" */;
(MONDAI:"20103 2次式 (x -1)*(x -2) を ((x -a) -b)*((x -a) +b) と変形して、平方完成せよ。◆修正部分)",
MIKATA:"対称移動の変換式は、・・・"
)$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),subl:[x =3/7],
STEP:"0End")$
(STEP:"1",
Y0:(x -1)*(x -2) /*(◆修正時変更)*/,
e1:["(x -1)*(x -2) =((x -(1+2)/2) -(1-2)/2)*((x -(1+2)/2) +(1-2)/2) ", "足して半分、引いて半分ーーーーーーーーーー", subl, flt(subl,(x -1)*(x -2) =((x -(1+2)/2) -(1-2)/2)*((x -(1+2)/2) +(1-2)/2) )], print(e1) /*(◆修正時変更)*/,
e2:[" =((x -3/2) +1/2)*((x -3/2) -1/2) ", "因子の内部計算ーーーーー", subl, flt(subl,((x -3/2) +1/2)*((x -3/2) -1/2) )], print(e2) /*(◆修正時変更)*/,
e3:[" =(x -3/2)^2 -(1/2)^2 ", "和と差の積で展開ーーーーーーー ", subl, flt(subl,(x -3/2)^2 -(1/2)^2 )], print(e3) /*(◆修正時変更)*/,
e9:[" =(x -3/2)^2 -1/4 ", "第2項を計算ーーーーーーーーーーー ", subl, flt(subl,Y:(x -3/2)^2 -1/4 )], print(e9) /*(◆修正時変更)*/,
ansl:[e9[1],"(結論)"],print(ansl)/**/ ,
print(Y),
STEP:"1End")$
(STEP:"2",
kakuninn:"グラフもチェック(◇曲線が2つできたら間違い◇)",
pP:[[3/2,-1/4]] /* "◇頂点の座標(◆修正時変更)" */,
eA:[x=3/2] /* "◇軸を入力(◆修正時変更)" */,
totu:"u" /* "◇上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "◇グラフ描画範囲" */,
youten:[pP,eA,totu,hani,"頂点(元、後)、軸(元、後)、凸、範囲"],print(youten),
STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/color=red,
/**/line_width =3,explicit(Y,x,xS,xL) /* "後の式のグラフ(太赤))" */,
/**/line_width =1,explicit(Y0,x,xS,xL) /* "元の式のグラフ(細赤))" */,
/**/color=blue,point_type =6,
/**/line_width =1,implicit(eA[1],x,xS,xL,y,yS,yL)/*"軸"*/,
/**/point_size =2,points(pP)/*"頂点"*/,
/**/color=black,line_width =1 /**/,
/**/implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/implicit(x=0,x,xS,xL,y,yS,yL)) /* "(y軸)" */,
STEP:"3End",print("グラフでチェック(◇曲線が2つできたら間違い◇)"))$
(STEP:"4",
print(MONDAI),
print(ansl),
print(youten),
STEP:"4End")$
/**//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI:"20103 2次式 (2*x -1)*(x +3) を 2*((x -a) -b)*((x -a) +b) と変形して、平方完成せよ。◆修正部分)",
*/
▼コマンド番号20104
●補充問題3
2次関数のグラフ、凹凸●●●●●●●●●●●●●●●●
kill(all) /* "20104 2次関数のグラフ、凹凸" */;
(MONDAI:"20104 2次関数 y =2*x^2 -4*x -1 をx軸方向に2、y軸方向に-1、平行移動_____した関数、頂点?(◆修正部分)",
MIKATA:"平行移動の変換式は、・・・"
)$
(STEP:"0",
flt(subl,ex):=float(subst(subl,ex)),subl:[x =3/7],
STEP:"0End")$
(STEP:"1",
Y0:2*x^2 -4*x -1, subL:[X=x+2, Y=y-1,x=3/7, y=flt(subl,Y0)]/*(x,y) >> (X,Y) */ /*(◆修正時変更)*/,
e1:["y =2*x^2 -4*x -1 >> Y +1 =2*(X-2)^2 -4*(X-2) -1 ", "変換式を代入ーーーーーーーーーー", subL, flt(subL,2*x^2 -4*x -1 )," >>", flt(subL, Y +1 =2*(X-2)^2 -4*(X-2) -1 )], print(e1) /*(◆修正時変更)*/,
e2:["Y =X^2*(2) +X*(-8-4) +(8+8-1-1) ", "Y =...へX^2,X,定数ごとに係数整理ーーーーー", subL, flt(subL,Y =X^2*(2) +X*(-8-4) +(8+8-1-1) )], print(e2) /*(◆修正時変更)*/,
e3:[" =2*X^2 -12*X +14 ", "係数計算ーーーーーーーーーーーーーーーー", subL, flt(subL,2*X^2 -12*X +14 )], print(e3) /*(◆修正時変更)*/,
e9:["y =2*x^2 -12*x +14 ", "変数をx,yに書き換えーーーーー ", subL, flt(subL,subst([x=X,y=Y],y =2*x^2 -12*x +14) )], print(e9) /*(◆修正時変更)*/,
ansl:[e9[1],"(結論)"],print(ansl)/**/ ,
Y01:2*(x -1)^2 -3 , e91:[Y0,Y01,flt(subl,[Y0,Y01])], print(e91) /*Y0の平方完成*//*(◆修正時変更)*/,
Y:2*x^2 -12*x +14, Y1:2*(x -3)^2 -4, e92:[Y,Y1,flt(subl,[Y,Y1])],print(e92) /*Yの平方完成*//*(◆修正時変更)*//**/,
STEP:"1End")$
(STEP:"2",
kakuninn:"グラフもチェック",
pP:[[1,-3],[3,-4]] /* "◇頂点の座標(◆修正時変更)" */,
eA:[x=1,x=3] /* "◇軸を入力(◆修正時変更)" */,
totu:"u" /* "◇上に凸:n、下に凸:uを入力(◆修正時変更)" */,
hani:[xS:-5,xL:5,yS:-10,yL:10] /* "◇グラフ描画範囲" */,
youten:[pP,eA,totu,hani,"頂点(元、後)、軸(元、後)、凸、範囲"],print(youten),
STEP:"2End")$
(STEP:"3",
wxdraw2d(title =totu, /**/yrange=[yS,yL] /* "()" */,
/**/color=red,
/**/line_width =3,explicit(Y,x,xS,xL) /* "後の式のグラフ(太赤))" */,
/**/line_width =1,explicit(Y0,x,xS,xL) /* "元の式のグラフ(細赤))" */,
/**/color=blue,point_type =6,
/**/line_width =3,implicit(eA[2],x,xS,xL,y,yS,yL)/*"軸"*/,
/**/line_width =1,implicit(eA[1],x,xS,xL,y,yS,yL)/*"軸"*/,
/**/point_size =2,points(pP)/*"頂点"*/,
/**/color=black,line_width =1 /**/,
/**/implicit(y=0,x,xS,xL,y,yS,yL) /* "(x軸)" */,
/**/implicit(x=0,x,xS,xL,y,yS,yL)) /* "(y軸)" */,
STEP:"3End",print("グラフでチェック(◇もとのグラフが細線◇)"))$
(STEP:"4",
print(MONDAI),
print(ansl),
print(youten),
STEP:"4End")$
/**//*◎上のMaximaコマンドを実行せよ。
◎上のコマンドを、次により修正して実行し、結果を比較して考察せよ。
(MONDAI:"20104 2次関数 y =-2*x^2 +3*x +1 をx軸方向に2、y軸方向に3、平行移動した関数、頂点?(◆修正部分)",
*/