質問<3267>2006/6/24
次の問題を教えて下さい。 次のプログラムは、分数q/p(p、qは正の整数)に関係するものである。 3/13を入力したときの出力を求めよ。配列R( )がどのように変化していくかを 調べ、なぜそのような出力がえられるか説明せよ。 プログラムに入れると0.{230769}がでました。 がどのように答えていったらいいのでしょうか。 100 OPTION BASE 0 110 DIM A(1000) 120 DIM R(999) 130 LET N=1000 140 FOR I=0 TO N-1 150 LET R(I)=0 160 NEXT I 170 DO 180 PRINT "分母P="; 190 INPUT P 200 IF (P>N) THEN 210 PRINT "分母は1000以下にしてください。" 220 END IF 230 LOOP WHILE (P>N) 240 PRINT "分子q="; 250 INPUT Q 260 LET A(0)=INT(Q/P) 270 LET Q=MOD(Q,P) 280 LET K=0 290 DO 300 LET K=K+1 310 LET R(Q)=K 320 LET Q=Q*10 330 LET A(K)=INT(Q/P) 340 LET Q=MOD(Q,P) 350 LOOP WHILE (R(Q)=0) 360 PRINT A(0);"・"; 370 FOR I=1 TO R(Q)-1 380 PRINT A(I); 390 NEXT I 400 IF (R(Q)<K) OR (A(K)<>0) THEN 410 PRINT "{"; 420 FOR I=R(Q) TO K 430 PRINT A(I); 440 NEXT I 450 PRINT "}"; 460 END IF 470 END (※小文字の<、>を大文字に変えてあります。タグの関係です。管理人談) ★完全解答希望★
お便り2006/6/25
from=JJon.com
このサイトの[検索]機能を使って, キーワード「分母は1000以下にしてください」を検索する。