冬休みの課題1のプログラム解答例 -------------------------------------- LET a=1 DEF f(t)=3*a*t/(1+t^3) DEF g(t)=3*a*t^2/(1+t^3) LET h=0.01 SET WINDOW -2,2,-2,2 DRAW AXES FOR t=-200 TO 200-h STEP h WHEN EXCEPTION IN PLOT LINES:f(t),g(t);f(t+h),g(t+h) USE PLOT LINES END WHEN NEXT t END -------------------------------------------------- 冬休みの課題2のプログラム解答例 -------------------------------------- LET a=1 DEF f(t)=a*SQR(COS(2*t))*COS(t) DEF g(t)=a*SQR(COS(2*t))*SIN(t) LET h=0.001 SET WINDOW -1.5,1.5,-1.5,1.5 DRAW AXES FOR t=0 TO 2*PI-h STEP h WHEN EXCEPTION IN PLOT LINES:f(t),g(t);f(t+h),g(t+h) USE PLOT LINES END WHEN NEXT t END -------------------------------------------------- 冬休みの課題3のプログラム解答例(短冊近似法1=小区間の左端の点) -------------------------------------- DEF f(x)=4*SQR(1-x^2) INPUT n LET a=0 LET b=1 LET h=(b-a)/n LET s=0 FOR k=1 TO n LET x=h*(k-1) LET y=f(x) LET s=s+h*y NEXT k PRINT s END ---------------------------------------------------------------- 冬休みの課題3のプログラム解答例(短冊近似法2=小区間の右端の点) -------------------------------------- DEF f(x)=4*SQR(1-x^2) INPUT n LET a=0 LET b=1 LET h=(b-a)/n LET s=0 FOR k=1 TO n LET x=h*k LET y=f(x) LET s=s+h*y NEXT k PRINT s END ---------------------------------------------------------------- 冬休みの課題3のプログラム解答例(台形近似法) -------------------------------------- DEF f(x)=4*SQR(1-x^2) INPUT n LET a=0 LET b=1 LET h=(b-a)/n LET s=0 FOR k=1 TO n LET x=h*k LET y1=f(x-h) LET y2=f(x) LET s=s+h*(y1+y2)/2 NEXT k PRINT s END ---------------------------------------------------------------- 冬休みの課題4のプログラム解答例 ----------------------------------------------------------------- LET x1=1/2 LET x2=1/7 LET a1=x1 LET a2=x2 LET S1=a1 LET S2=a2 FOR k=1 TO 1662 LET a1=-a1*x1*x1 LET S1=S1+a1/(2*k+1) NEXT k FOR k=1 TO 591 LET a2=-a2*x2*x2 LET S2=S2+a2/(2*k+1) NEXT k PRINT PI PRINT 4*(2*S1-S2) END --------------------------------------------------------------- 冬休みの課題5のプログラム解答例(2分法) ----------------------------------------------------------------- DEF f(x)=2*SIN(x)-x LET E=10^(-10) LET a=1 LET b=2 LET c=0 DO WHILE b-a>E AND f((a+b)/2)<>0 IF f((a+b)/2)>0 THEN LET a=(a+b)/2 IF f((a+b)/2)<0 THEN LET b=(a+b)/2 LET c=c+1 LOOP PRINT (a+b)/2 PRINT c END --------------------------------------------------------------- 冬休みの課題5のプログラム解答例(Newton法) ----------------------------------------------------------------- DEF f(x)=2*SIN(x)-x DEF f1(x)=2*COS(x)-1 LET x=2 INPUT n FOR k=1 TO n LET x=x-f(x)/f1(x) PRINT x NEXT k END --------------------------------------------------------------- 冬休みの課題6のプログラム解答例 ----------------------------------------------------------------- DEF f(x,y)=x+4*y^3 DEF g(x,y)=-(4*x^3+y) LET h=0.001 LET x0=1 LET y0=0 SET WINDOW -1.5,1.5,-1.5,1.5 DRAW AXES SET LINE COLOR 2 FOR t=0 TO 2 STEP h LET a1=f(x0,y0)*h LET b1=g(x0,y0)*h LET a2=f(x0+a1/2,y0+b1/2)*h LET b2=g(x0+a1/2,y0+b1/2)*h LET a3=f(x0+a2/2,y0+b2/2)*h LET b3=g(x0+a2/2,y0+b2/2)*h LET a4=f(x0+a3,y0+b3)*h LET b4=g(x0+a3,y0+b3)*h LET x=x0+(a1+2*a2+2*a3+a4)/6 LET y=y0+(b1+2*b2+2*b3+b4)/6 PLOT LINES: x0,y0;x,y LET x0=x LET y0=y NEXT t END ---------------------------------------------------------------