• ベストアンサー

プログラミング流れ図について

このような、流れ図の場合、ソースコード?はどんな感じになりますかね? 繰り返しがあるのはわかるんですがどのような感じなのか教えてもらえないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • wormhole
  • ベストアンサー率28% (1626/5665)
回答No.4

for (;;) {  処理A;  if (判断A) {   処理B;   continue;  }  if (判断B) {   処理C;   continue;  }  if (判断C) {   処理D;   continue;  }  break; }

その他の回答 (5)

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.6

>このような、流れ図の場合、ソースコード? 処理A、処理B、処理C、処理Dの内容と出口の結果を具体的に示さないと的確な回答は困難です。(実務でなくても例を示すべきです) 判断A、判断B、判断Cの内容は出口の結果に因って効率の良い考え方でフローチャートを書き替えることになるかも知れません。 一般的には入り口で初期値を設定し、判断Aの結果で処理Bを行って判断Aへ戻るか次の判断Bへ進みます。 提示の図では各(A、B、C)判断後で各(B、C、D)処理後に処理Aを行ってから判断Aに戻っていますので処理Aの内容によっては各処理との整合性を誤って無限ループになる可能性があります。

  • bardfish
  • ベストアンサー率28% (5029/17766)
回答No.5

具体的なコードではないですが・・・ 処理Aの結果がどの様になるか次第ですが、私ならIF文ではなくSelect CaseとDo Whileを併用するでしょう。 Do  Select 処理A   Case 判定A    処理B   Case 判定B    処理C   Case 判定C    処理D   Case Else    Exit Do Loop コードの書き方は言語不明で超適当ですけど、頭の中ではこんな感じでコードを入力していきます。

回答No.3

GoToキャンペーン始まるので、 // 入口 syori_a: // 処理A // 判断A if(handan_a){goto syori_b;} // 判断B if(handan_b){goto syori_c;} // 判断C if(handan_c){goto syori_d;} // 出口 exit; syori_b: // 処理B goto syori_a; syori_c: // 処理C goto syori_a; syori_d: // 処理D goto syori_a;

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.2

ああ、Cのカテゴリでしたか。 適当な擬似言語で書きました。 ↓

  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.1

while true 処理A if 判断 A then 処理B elseif 判断B then 処理C elseif 判断C then 処理D else break endif endwhile

関連するQ&A