プログラミング

プログラミングの基本(順次・分岐・反復)を理解しよう!スクラッチとの対応もあり.

プログラミングって難しいイメージがあります。

スクラッチなどのビジュアルプログラミングはプログラミング習得に役立つのでしょうか。

いくお
いくお

プログラミング技術の習得は奥が深いですが、基本構造はかなりシンプルです。プログラミングの基本構造を理解すれば、ビジュアルプログラミングの意図も理解できると思います。

プログラミングの基本「順次・分岐・反復」とは何か

プログラミングの歴史として、

「構造化プログラミング」

「オブジェクト指向プログラミング」

「関数型プログラミング」と様々な手法が出てきています。

ここでは、構造化プログラミングで提唱されていた

「順次」「分岐」「反復(繰り返し)」について説明します。

この技術の適用範囲は、構造化プログラミングだけではないため、理解しておいて損はないです。

構造化プログラミング

「構造化プログラミング」は、オランダ人の学者であるダイクストラ氏によって提唱されました。

考え方は、

正しく動作するプログラムを作成するには、わかりやすい構造にすることが重要

という考え方に沿っています。

わかりやすい構造にするために、

「順次」「反復」「分岐」の3つの構造だけで表現することを提唱しています。

  • 構造化プログラミングには、この基本三構造以外の工夫もありますが、割愛します.
  • 複雑な処理をプログラミングする際には「設計」が非常に重要になります。
    構造化プログラミングの後にオブジェクト指向設計が出てきていますが、こちらについても割愛します。

設計方針によらず、今回紹介する基本三構造はプログラミングの基本ですので、ここに絞って今回紹介します

順次

順次は、処理を順番に実行していくことです。

上図のアクティビティ図通り、処理Aを実行し、その次に、処理Bを実行します。

分岐

条件に従って、処理が分岐します。

条件を満たした場合、処理Aへ進み、

満たさなければ、処理Bに進みます。

処理結果によって、処理が変わる分岐です。

反復

反復は、一定回数、あるいは、条件を満たすまで処理を繰り返します。

上図では、処理をさかのぼっていますが、

フローチャートでは、台形のような形で書かれることが多いです。

プログラミングとのマッピング

ビジュアルプログラミングとの対応

ビジュアルプログラミングには、いくつかのタイプがありますが、

その中でも Scratch のようなブロックタイプとの対応を行います。

ブロックタイプというのは、ブロックを組み合わせてプログラミングを行うものです。

以下、Scratchを例に対応をとります。

順次

分岐

反復

分岐や反復のブロックは他にも用意されていますが、

基本的な考え方としては、

これらの組み合わせで、プログラムが出来上がっていることがお分かりいただけると思います。

様々なプログラミング言語が出てきていますが、

どういう風にプログラムを組み立てればよいかの考え方は同じです。

テキストプログラミングとの対応

一般的にプログラミングといえば、こちらになるのですが、

最近では、Scratchなどのビジュアルプログラミングをされている方もいらっしゃると思うので、

あえて、テキストプログラミングという記述にしています。

カテゴリ対応
順次省略。以下、例ですが、
1の後に2の処理を順番に処理することをいいます。
変数iを定義した後に、iをインクリメント(1増やす)する。

1: int i = 0;
2: i++;
分岐if, switch
反復for, while

文法は、プログラミング言語によって若干の違いがありますが、

上述したように、基本的な考え方は同じです。

まとめ

以上、プログラミングの基本「順次」「分岐」「反復」の紹介でした。

  • プログラミングは、順次・分岐・反復で分かりやすく記述する
  • ビジュアルプログラミングではこの基本三構造のトレーニングになる
  • プログラミングは奥が深く、基本三構造以外にも学ぶ必要があるが、今回は割愛している

関連する記事

【必見】プログラミング言語別で年収の違いはあるのか?(3年間の推移を確認) プログラミングの人気をどう測るか プログラミング人気を測る方法として、ざっくりと以下が存在します。 利用実態から判...
【おすすめのプログラミング言語は?】プログラミング人気を確認する方法。3つの評価サイトを紹介。 プログラミングの人気をどう測るか プログラミング人気を測る方法として、ざっくりと以下が存在します。 利用実態から判...
起業向けプログラミングスクール!お勧め2選 起業にお勧めのプログラミングスクール2選 順を追って説明していきますが、まずは結論を先に記載しておきます。 ...
ABOUT ME
いくお
10年以上システムエンジニアしています。 現在、数億円規模のプロジェクトリーダーを担当し、2021年には働きながらMBA取得。 これまでに得た知識、経験から役立つビジネス情報を発信していきます。 趣味の読書、運動、アウトドア、旅行なども幅広く投稿していけたらと思います。

COMMENT

メールアドレスが公開されることはありません。