ベクトルの和 問題 0. 2つのベクトルの和を以下のような枠と変化の対応で描くプログラムを作成せよ。 In[1]:= Manipulate@Graphics@8Thick, Blue, Arrow@880, 0<, a<D, Text@a, a + 0.5D, Green, Arrow@880, 0<, b<D, Text@b, b + 0.5D, Red, Arrow@880, 0<, a + b<D, Text@a + b, a + b + 0.5D, Dashed, Brown, Line@8a, a + b, b<D<, PlotRange Ø 10, GridLines Ø 8Range@- 10, 10D, Range@- 10, 10D<, Axes Ø TrueD, 88a, 85, 1<<, Locator<, 88b, 81, 5<<, Locator<, SaveDefinitions Ø TrueD 10 86, 6< 5 81, 5< 85, 1< Out[1]= -10 -5 5 10 -5 -10 注: Locator を使って、点の移動を行えるようにしてある。 2次関数の平行移動 問題1. 2次関数 y = (x - p)^2 + q のグラフとして以下の操作ができるプログラムを作成せよ。 In[1]:= Manipulate@f1 = x ^ 2; f2 = Hx - pL ^ 2 + q; Plot@8f1, f2<, 8x, - 3, 3<, PlotRange Ø 3, PlotStyle Ø 8Blue, 8Thick, Red<<, AspectRatio Ø Automatic, Epilog Ø Inset@Style@Hx - pL ^ 2 + q, 32D, 80, - 2.5<DD, 88p, 0<, - 2, 2, 0.5, Appearance Ø "Labeled"<, 88q, 0<, - 2, 2, 0.5, Appearance Ø "Labeled"<, SaveDefinitions Ø TrueD p 1. 1. q 0.5 0.5 3 2 Out[1]= 1 -3 -2 -1 1 2 3 -1 -2 Hx - 1.L2 + 0.5 -3 注: グラフ中に関数の式を表示するために Inset を用いた。スライダーには、値を表示できるよ うに Appearance -> "Labeled" を使った。 p, q の値は、0.5 刻みで変化させた。 2次関数の最大・最小 問題2. 0 c x, 0 c y, x + y =4 であるとき、x^2 + y^2 の最小値を空間図形として、以下のように 表現できるプログラムを作成せよ。 In[1]:= Manipulate@Show@Plot3D@x ^ 2 + y ^ 2, 8x, 0, 4<, 8y, 0, 4<, MeshFunctions Ø 8Ò1 + Ò2 - 4 &<, MeshStyle Ø Purple, Mesh Ø 1, BoxRatios Ø 1D, Graphics3D@8Red, Sphere@8a, 4 - a, a ^ 2 + H4 - aL ^ 2<, 0.1D<DD, 88a, 0, "x"<, 0, 4, Appearance Ø "Labeled"<, SaveDefinitions Ø TrueD x 2. 2. Out[1]= 注: 紫の曲線は、x + y = 4 である範囲を Mesh で表している。 x を変更することにより、赤い点 が移動するようにしている。 順列・組合わせの図形への応用 問題3. 以下の図のような道路において、始点から終点に行く道順を描くプログラムを作成せ よ。 In[1]:= Manipulate@walk = Map@Accumulate, Permutations@Join@Table@81, 0<, 84<D, Table@80, 1<, 83<DDDD; Graphics@8Table@Line@88x, 0<, 8x, 3<<D, 8x, 0, 4<D, Table@Line@880, y<, 84, y<<D, 8y, 0, 3<D, Blue, Text@"Start", 80, - 0.1<D, Text@"Goal", 84, 3 + 0.1<D, Thick, Red, Line@Prepend@walk@@pDD, 80, 0<DD<D, 8p, 1, 35, 1, Appearance Ø "Labeled"<, SaveDefinitions Ø TrueD p 16 16 Goal Out[1]= Start 注: スライダーを動かすことにより、すべての経路を眺めることができるようにしている。Permutations と Accumulate を合わせて計算している。 2つの円の交点を通る曲線 問題4. 2つの円 x^2 + y^2 = 4, (x-2)^2 + (y-2)^2 = 4 の交点を通る直線または曲線を以下の図の ようなグラフを描いて求めるプログラムを作成せよ。 In[1]:= Manipulate@f = x ^ 2 + y ^ 2 - 4; g = Hx - 2L ^ 2 + Hy - 2L ^ 2 - 4; h = f - k g; ContourPlot@8f ã 0, g ã 0, h ã 0<, 8x, - 2, 5<, 8y, - 2, 5<, Frame Ø None, Axes Ø True, ContourStyle Ø 88Thick, Blue<, 8Thick, Green<, 8Thick, Red<<D, 88k, 1<, - 5, 5, Appearance Ø "Labeled"<, SaveDefinitions Ø TrueD k -1.8 5 4 3 2 Out[1]= 1 -2 -1 1 2 3 -1 -2 注: h = f - k g をうまく使うことがポイント! 4 5 線型計画法 問題5. x, y が次の不等式を満たすとき、x + y の最大値を、以下の図のようなグラフを描いて求 めるプログラムを作成せよ。 0 c x , 0 c y , 2 x + y c 8 , 2 x + 3 y c 12 In[1]:= ManipulateB ShowBRegionPlot@8x ¥ 0 && y ¥ 0 && 2 x + y § 8 && 2 x + 3 y § 12<, 8x, 0, 6<, 8y, 0, 4<, AspectRatio Ø Automatic, PlotRange Ø 8- 2, 8<, Frame Ø None, Axes Ø TrueD, -2 PlotB:- 2 x + 8, x + 4, - x + k>, 8x, - 1, 6<, 3 PlotStyle Ø 8Automatic, Automatic, 8Thick, Red<<F, Graphics@[email protected], Green, Point@80, k<D<DF, 8k, 0, 6, Appearance Ø "Labeled"<, SaveDefinitions Ø TrueF k 3.32 3.32 Out[1]= 注: x + y = k を赤い直線で表している。領域は、RegionPlot で描画した。 三角関数のグラフ 問題6. y = sin q 以下の図のような枠と変化の対応でグラフを描くプログラムを作成せよ。 In[1]:= ManipulateB ShowBGraphics@8Circle@8- 2, 0<, 1D, Line@88- 2, - 1.2<, 8- 2, 1.2<<D, Green, Line@88- 2, 0<, 8Cos@qD - 2, Sin@qD<, 8q, Sin@qD<<D, [email protected], Red, Point@88Cos@qD - 2, Sin@qD<, 8q, Sin@qD<<D<D, Pi Plot@Sin@xD, 8x, 0, 2 Pi<D, Axes Ø True, Ticks Ø :RangeB0, 2 Pi, F, Automatic>F, 4 Pi :q, 0, 2 Pi, , Appearance Ø "Labeled">, SaveDefinitions Ø TrueF 12 q p p Out[1]= 1.0 0.5 -0.5 p p 3p 4 2 4 p 5p 3p 7p 4 2 4 -1.0 注: Ticks の付け方で、Range を使っている。 2p 三角関数の合成 問題7. a sin q + b cos q を合成するグラフを以下のような枠と変化の対応でグラフを描くプログ ラムを作成せよ。 In[1]:= ManipulateBf = a Sin@qD; g = b Cos@qD; c = f + g; PlotB8f, g, c<, 8q, 0, 2 Pi<, PlotStyle Ø 88Thick, Blue<, 8Thick, Green<, 8Thick, Red<<, Pi Ticks Ø :RangeB0, 2 Pi, F, Automatic>, PlotRange Ø AllF, 4 Pi :a, 1, 5, , Appearance Ø "Labeled">, 12 Pi :b, 1, 5, , Appearance Ø "Labeled">, SaveDefinitions Ø TrueF 12 a 1 1 b 1 1 1.5 Out[1]= 1.0 0.5 p p 3p 4 2 4 p 5p 3p 7p 4 2 4 2p -0.5 -1.0 -1.5 注: 青と緑のグラフを合成したグラフが、赤いグラフである。 2次関数の2つの接線の交点 問題8. 関数 y = x^2 + 2 上の2点から引いた接線の交点の y 座標は、2つの接点の座標の中点と なっていることを、以下のような枠と変化の対応でグラフを描くプログラムを作成せよ。 In[1]:= ManipulateB ShowBf = x ^ 2 + 2; g = 2 x; 8fa, fb< = f ê. x Ø 8a, b<; 8ga, gb< = g ê. x Ø 8a, b<; Plot@8f, ga Hx - aL + fa, gb Hx - bL + fb<, 8x, - 3, 3<, PlotRange Ø 8- 1, 6<, PlotStyle Ø 88Thick, Blue<, 8Thick, Red<, 8Thick, Orange<<, AspectRatio Ø AutomaticD, GraphicsB:[email protected], Red, Point@8a, 0<D, Orange, Point@8b, 0<D, Thick, Purple, LineB:: a+b 2 , - 1>, : a+b 2 , 6>>F>FF, 88a, - 1<, - 2, 1, Appearance Ø "Labeled"<, 88b, 1<, - 1, 2, Appearance Ø "Labeled"<, SaveDefinitions Ø TrueF a -0.705 -0.705 b 0.55 0.55 6 5 4 Out[1]= 3 2 1 -3 -2 -1 1 2 3 -1 注: 2つの接点の x 座標は、赤と橙の点で表している。交点の x 座標は、紫の直線で表してい る。 2 8.nb 注: 2つの接点の x 座標は、赤と橙の点で表している。交点の x 座標は、紫の直線で表してい る。 積分・面積の2等分 問題9. 関数 y = - x^2 + 4x と x 軸で囲まれた部分の面積を直線 y = m x で2等分していると き、定数 m の値を求めるグラフィックスを、以下のような枠と変化の対応で描くプログラムを作成 せよ。 In[1]:= Manipulate@f = - x ^ 2 + 4 x; g = m x; sa = NIntegrate@f - g, 8x, 0, 4 - m<D; sb = NIntegrate@f, 8x, 0, 4<D - sa; Show@Plot@8f, g<, 8x, 0, 4<, PlotRange Ø 80, 5<, AspectRatio Ø Automatic, Epilog Ø 8Inset@Style@sa, Blue, 24D, 81, 4<D, Inset@Style@sb, Red, 24D, 83, 4<D<D, RegionPlot@8y < f && y > g, y < f && y < g && y > 0<, 8x, 0, 4<, 8y, 0, 5<DD, 88m, 1<, 0, 4, Appearance Ø "Labeled"<, SaveDefinitions Ø TrueD m 0.825 0.825 Out[1]= 注: それぞれの面積の領域は、RegionPlot を使って描画した。 3頂点の座標と三角形の面積 問題 X. 3つの頂点の座標が与えられた際、その三角形の面積を 以下のような枠と変化の対応で描くプログラムを作成せよ。 In[1]:= ManipulateB8a, b, c< = Map@Rationalize@Ò, 0.1D &, 8a, b, c<D; GraphicsB:Thick, Blue, Line@8a, b, c, a<D, Green, Text@a, a + Sign@aD * 0.8D, Text@b, b + Sign@bD * 0.8D, Text@c, c + Sign@cD * 0.8D, Red, a+b+c TextBStyle@Det@8Hb - aL, Hc - aL<D ê 2, 24D, F>, PlotRange Ø 10, 3 GridLines Ø 8Range@- 10, 10D, Range@- 10, 10D<, Axes Ø TrueF, 88a, 85, 1<<, Locator<, 88b, 81, 5<<, Locator<, 88c, 8- 2, - 5<<, Locator<, SaveDefinitions Ø TrueF 10 81, 5< 5 91 3 Out[1]= -10 -5 : 17 1 , > 3 3 5 -5 8-2, -5< -10 注: ベクトルの成分表示を使って面積を求めています。 10
© Copyright 2024 ExpyDoc