OPTION BASE 0 FUNCTION f(n) IF n=1 THEN LET f=0 ELSEIF n=2 THEN LET f=1 ELSE LET f=(n-1)*(f(n-2)+f(n-1)) END IF END FUNCTION DIM P(20),G(20),H(20) FOR k=1 TO 20 LET G(k)=1-f(k)/FACT(k) NEXT k LET P(0)=0 LET P(1)=1 LET P(2)=1/2 FOR i=3 TO 20 LET C=0 FOR j=1 TO i LET C=C+(1-P(j-1))/FACT(i+1-j) NEXT j LET P(i)=C NEXT i FOR i=1 TO 20 LET C=0 FOR j=1 TO i LET C=C+(-1)^(j-1)/FACT(j) NEXT j LET H(i)=C NEXT i PRINT PRINT " 1 から n までの すべての自然数を使って n桁の数を2つ作る。" PRINT "このとき、 それぞれの位の数が1組以上同じ数になっているいる確率。" PRINT PRINT " 一般的な解法 オイラーの解法 包除原理による解法" PRINT FOR i=1 TO 20 PRINT USING "#####":i; PRINT ": "; PRINT USING "#.############### #.############### #.###############":P(i),G(i),H(i) NEXT i PRINT PRINT END