繰り返しと条件分岐の使い分け

繰り返し(WHILE)を使うべきか、条件分岐(IF)を使うべきか、人によっては迷うこともあると思います。

基本的に「WHILE」でできることは「IF」で実現できます。しかし、プログラムの読みやすさを考えた場合「WHILE」の方が適しています。

WHILEは「DO」と「END」が対になっているので、繰り返される場所が一目でわかります。NCプログラムの場合は問題となることはあまりありませんが、繰り返される場所が決まっているので処理速度も速いのです。


一方「IF」は、GOTO文を使用して特定のシーケンス番号へ飛ばすことができるので、自由度が高い分まとまりのないプログラムになることもあります。あっちへ飛んだりこっちへ飛んだりするプログラムは、コンピュータプログラムの世界では「スパゲッティプログラム」と呼ばれ敬遠されます。可読性の悪いプログラムはメンテナンス性も悪いのです。

このような理由から「WHILE」でできることは「WHILE」で、できないことは「IF」でという使い分けが最も適していると思います。

「IF」を使う時も、GOTOの飛び先であるシーケンス番号は上から番号順に使うなど、基本的な取り決めをしておくことも大切です。

コラム一覧
  1. 最低限必要なコード
  2. ミスを減らすためにすること
  3. マクロプログラムを作るときの考え方
  4. 繰り返しと条件分岐の使い分け
  5. NCプログラムとは。そのメリットとデメリット
  6. NC設備も良いけど、何気に活躍する手動工作機械
  7. 標準で使える変数
  8. NCプログラムの改善とは何か
  9. NCプログラムと生産システム
  10. 分業のジレンマ
  11. 座標とはなにか【初めてのNCプログラミング】
  12. 機械座標とワーク座標【初めてのNCプログラミング】
  13. 平面指定(G17〜19)を変更すると何が変わるのか【初めてのNCプログラミング】
  14. NCプログラムの基本は軸移動【初めてのNCプログラミング】
  15. アブソリュート指令(G90)とインクレメンタル指令(G91)
  16. 工具長補正は連続加工に必須の機能
  17. ATC(オート・ツール・チェンジャー)の使い方
  18. 主軸回転数と切削条件の求め方
  19. ワークのセッティングと測定機器
  20. タッチセンサを使った自動測定

お知らせ
メニュー
NC旋盤
サブメニュー
OSP(オークマ)
雑学
NCプログラマの為の数学
関連サイト