============================================= 放物線の区分求積法 16.01.27 houbutusen-kubunkyuuseki.cdy y=x^2 に関する区分求積法の図を作成する. &ref(houbutusen-kubunkyuuseki.png,,title=,width=400,) &ref(houbutusen-kubunkyuuseki.zip) Setunitlen("2.6cm"); // 一目盛を2.6cmに設定する Setcolor([0.3,0,0,0.1]); forall(1..length(ptcL), Shade(["fr"+text(#)]) ); Setcolor("black"); Plotdata("1","x^2","x=[0,1.1]"); forall(0..8, Putpoint("P"+text(#),[#/8,0]) ); // x軸上に分割点をとる ptL=[P0,P1,P2,P3,P4,P5,P6,P7,P8]; // 分割点の座標リスト forall(1..(length(ptL)-1), tmp=ptL_(#+1); Putoncurve("Pc"+text(#),"gr1",[tmp.x,tmp.x]); ); // 各分割点と同じx座標をもつ曲線上の点をとる ptcL=[Pc1,Pc2,Pc3,Pc4,Pc5,Pc6,Pc7,Pc8]; // 曲線上の分割点の座標リスト forall(1..length(ptcL), tmp=ptL_#; tmp1=ptcL_#; Framedata2(text(#),[tmp,tmp1]); ); // Framedata2関数を使って微小矩形を描く // 生成されるデータ名はfr1~fr8 Setcolor([0.3,0,0,0.1]); Lineplot("1",[P8,Pc8]); Bowdata([P5,P6],[2]); Setcolor("black"); Expr(A,"n","y=x^2"); Fontsize("s"); Expr([P1,"s","\frac{1}{n}",P2,"s","\frac{2}{n}"]); Expr([P5,"sw-2","\frac{k-1}{n}",P6,"s","\frac{k}{n}"]); Expr([P8,"se","1"]);