課題なんですが・・・ kazu 2008/01/06 12:17:27 ├最大公約数を求める外部関数定義を利用しま... 白石 和夫 2008/01/06 14:43:49 (修正3回) └単に既約分数の形で結果を求めたいだけなら... 白石 和夫 2008/01/06 14:57:40 (修正1回) └ありがとうございます。できました!ちなみ... kazu 2008/01/06 16:05:59 └OPTIONARITHMETICRATIONALは,数値を有理数... 白石 和夫 2008/01/06 16:13:58 └毎回すみません。ありがとうございます。 kazu 2008/01/07 12:19:07 └正式な流れ図の書き方はよく分からないので... 白石 和夫 2008/01/07 14:29:43 (修正2回) ├!流れ図(フローチャート) 山中和義 2008/01/07 16:53:17
Re: 正式な流れ図の書き方はよく分からないので... |
返事を書く ノートメニュー |
山中和義 <drdlxujciw> 2008/01/07 16:53:17 | |
!流れ図(フローチャート)
!2つの分数の足し算(最小公倍数で通分) ! A1 A2 A3 ! ── + ── = ── ! B1 B2 B3 !A1,B1,A2,B2は、すべて正の整数とする。 ( はじめ ) ↓ /│ / │ │A1,B1│ 分数1の入力 └─ ─┘ ↓ /│ / │ │A2,B2│ 分数2の入力 └─ ─┘ ↓ ┌──────────┐ │A1×B2+A2×B1 → A3│ 分数3の計算 │B1×B2 → B3 │ └──────────┘ ↓ ┌────────┐ │GCD(B1,B2) → g │ 両分母の最大公約数の計算 ※1 └────────┘ ↓ ──┐ / A3÷g│ 分数3の表示 \ B3÷g│ ※LCM(a,b)=a*b/GCD(a,b) ──┘ ↓ ( おわり ) ※1 約分して(既約分数で)、結果を表示したい場合 ┌────────┐ │GCD(A3,B3) → g │ 分子と分母との最大公約数の計算 └────────┘ とする。 1000 EXTERNAL FUNCTION GCD(a,b) 1010 LET r=MOD(a,b) 1020 IF r=0 THEN LET GCD=b ELSE LET GCD=GCD(b,r) 1030 END FUNCTION !関数 GCD(a,b) ( はじめ ) ↓ ┌───────┐ │MOD(a,b) → r │ a÷bの余りの計算 └───────┘ ↓ /\ ≠ ┌────────┐ r:0 ─→||GCD(b,r) → GCD || 再帰呼び出し \/ └────────┘ ↓= │ ┌────┐ │ │b → GCD│ │ └────┘ │ ↓←──────┘ ↓ ( おわり ) |
│└「繰り返し」の流れ図 山中和義 2008/01/08 11:32:06 (修正1回) └functionGCD(a,b)について。 SECOND 2008/01/07 21:42:29