プログラミングの基本となる3つの処理【順次・分岐・反復】とフローチャート

順次処理 プログラミングの始め方
本ページは、プロモーションを含んでいる場合があります。
疑問

プログラミングって(むずか)しそう

(おも)っていませんか?

たしかに、最近(さいきん)のゲームなどを()ているとそう(おも)われるのも仕方(しかた)ないかもしれません。

でも、(むずか)しそうに()えるものでも、基本(きほん)となる部分(ぶぶん)意外(いがい)単純(たんじゅん)だったりしますよね。 それはプログラミングにおいても例外(れいがい)ではありません。

この記事(きじ)では、プログラミングの基本(きほん)となる3つの処理(しょり)について説明(せつめい)します。

プログラミングの基本となる3つの処理【順次・分岐・反復】

まず最初(さいしょ)に、スマートフォンをイメージしてみてください。

スマートフォン

スマートフォンといえば、たくさんのアプリケーションがインストールされているのはご存知(ぞんじ)のことと(おも)います。 (べつ)()(かた)をすれば、スマートフォンはたくさんのアプリケーションが(あつ)まってできている()えます。

(じつ)はそのアプリケーションもまた、(ちい)さなプログラムが(あつ)まってできています。 さらにもっと(こま)かく()ていくと、その(ちい)さなプログラムは「基本(きほん)となる処理(しょり)」が(あつ)まってできています。

つまり、「基本(きほん)となる処理(しょり)」を(まな)ぶことが、プログラミングのはじめの一歩(いっぽ)なのです。

プログラミングの基本(きほん)となる処理(しょり)は3つです。 “3つしかない”と(おも)っていただければ、“プログラミングは(むずか)しい”というイメージは払拭(ふっしょく)されるのではないかと(おも)います。

その3つの基本(きほん)となる処理(しょり)とは、

  • 順次処理(じゅんじしょり)
  • 分岐処理(ぶんきしょり)
  • 反復処理(はんぷくしょり)

です。

1つずつ順番(じゅんばん)説明(せつめい)しますね。

プログラミングの基本①「順次処理」

“この処理(しょり)(つぎ)はこの処理(しょり)”、というように順々(じゅんじゅん)処理(しょり)実行(じっこう)していくことを「順次処理(じゅんじしょり)」といいます。

プログラミングとは、コンピュータにやってほしい内容(ないよう)(なら)べていく作業(さぎょう)なので、 「順次処理(じゅんじしょり)」はプログラミングの(なか)でも一番基本的(いちばんきほんてき)処理(しょり)である()えます。

プログラムは基本的(きほんてき)(うえ)から(した)()いていくので、(さき)実行(じっこう)したい処理(しょり)(うえ)()きます。

時間割表(じかんわりひょう)をイメージしてみてください。

じかんわりひょう

“1時間目(じかんめ)⇒2時間目(じかんめ)⇒3時間目(じかんめ)”というように、(うえ)から順々(じゅんじゅん)(すす)んでいきますよね。 これが「順次処理(じゅんじしょり)」です。イメージは(つか)めましたでしょうか?

プログラミングの基本②「分岐処理」

ある条件(じょうけん)によって実行(じっこう)する内容(ないよう)()えることを「分岐処理(ぶんきしょり)」といいます。

もう一度(いちど)時間割表(じかんわりひょう)をイメージしてみてください。

曜日(ようび)によって、各時間(かくじかん)科目(かもく)(ちが)っていますよね。

(たと)えば、
月曜日(げつようび)は、“国語(こくご)生活(せいかつ)算数(さんすう)
火曜日(かようび)は、“国語(こくご)体育(たいいく)算数(さんすう)

というようにです。

ある条件(じょうけん)、つまり“曜日(ようび)”によって、 実行(じっこう)する内容(ないよう)、つまり“各時間(かくじかん)科目(かもく)”を()えているわけですね。

これが「分岐処理(ぶんきしょり)」です。イメージは(つか)めましたでしょうか?

プログラミングの基本③「反復処理」

ある処理(しょり)()(かえ)実行(じっこう)することを「反復処理(はんぷくしょり)」といいます。 “ループ”と()んだりもします。

何回(なんかい)()(かえ)すかは条件(じょうけん)設定(せってい)することができます。 よくあるのは“10(かい)()(かえ)す”など、回数(かいすう)指定(してい)する方法(ほうほう)です。

また、条件(じょうけん)()たすことができずに「反復処理(はんぷくしょり)」が永遠(えいえん)()わらないことを無限(むげん)ループといいます。 無限(むげん)ループ、()いたことありませんか?

もう一度(いちど)時間割表(じかんわりひょう)をイメージしてみてください。 時間割表(じかんわりひょう)()(かえ)すものといったら、(なん)でしょうか?

そう、“月火水木金(げつかすいもくきん)”ですね。 金曜日(きんようび)()わったら、また月曜日(げつようび)(もど)ります。

これが「反復処理(はんぷくしょり)」です。イメージは(つか)めましたでしょうか?

【順次・分岐・反復】のフローチャートを用いた表現方法

プログラムの処理内容(しょりないよう)図形(ずけい)表現(ひょうげん)する手段(しゅだん)の1つに「フローチャート」というものがあります。

なぜプログラムを図形(ずけい)表現(ひょうげん)するのかというと、

  • 図形(ずけい)表現(ひょうげん)することで、プログラムの構造(こうぞう)理解(りかい)しやすくなる
  • プログラムの構造(こうぞう)理解(りかい)しやすくなることで、間違(まちが)いを()つけやすくなる
  • プログラムを()めない(ひと)にも、処理内容(しょりないよう)共有(きょうゆう)がしやすい

といった理由(りゆう)()げられます。

「フローチャート」では様々(さまざま)なプログラムを表現(ひょうげん)することができますが、 まずは「順次処理(じゅんじしょり)」「分岐処理(ぶんきしょり)」「反復処理(はんぷくしょり)」について(おぼ)えましょう。

「順次処理」のフローチャートを用いた表現方法

フローチャートでは、図形(ずけい)矢印(やじるし)(つな)いでプログラムを表現(ひょうげん)します。

基本的(きほんてき)(うえ)から(した)へと()いていく(かたち)になります。

以下(いか)に「順次処理(じゅんじしょり)」の(れい)(しめ)します。

順次処理のフローチャート

処理(しょり)四角(しかく)(あらわ)し、処理(しょり)(つな)がりを矢印(やじるし)(あらわ)しています。

非常(ひじょう)にシンプルで理解(りかい)しやすいのではないでしょうか。

「分岐処理」のフローチャートを用いた表現方法

(つづ)いて、「分岐処理(ぶんきしょり)」の(れい)(しめ)します。

分岐処理のフローチャート

分岐処理(ぶんきしょり)」はひし(がた)(あらわ)し、“条件(じょうけん)”を記載(きさい)します。 ひし(がた)(した)(みぎ)処理(しょり)分岐(ぶんき)していることがわかるかと(おも)います。 ひし(がた)から()ている矢印(やじるし)には、条件(じょうけん)()たしているかどうか(はい/いいえ、Yes/No(いえす/のー))も記載(きさい)します。

3つ以上(いじょう)分岐(ぶんき)する場合(ばあい)((たと)えば、switch-case文(スイッチケースぶん))は、以下(いか)のような(かたち)にすると綺麗(きれい)()けると(おも)います。

switch-case文のフローチャート

「反復処理」のフローチャートを用いた表現方法

(つづ)いて、「反復処理(はんぷくしょり)」の(れい)(しめ)します。

反復処理のフローチャート

反復処理(はんぷくしょり)」は、四角(しかく)台形(だいけい)をくっつけたような特殊(とくしゅ)図形(ずけい)使用(しよう)します。 (うえ)がへこんでいるところが(はじ)まりで、(した)がへこんでいるところが()わりとなります。 (はじ)まりの図形(ずけい)に“終了条件(しゅうりょうじょうけん)”を記載(きさい)します。

反復処理(はんぷくしょり)」の(なか)に「反復処理(はんぷくしょり)」を()れることもできるので、 “ループ1”のような名前(なまえ)をつけておくと間違(まちが)いにくくなります。

【順次・分岐・反復】を楽しく学ぶ方法

ここまで「順次処理(じゅんじしょり)」「分岐処理(ぶんきしょり)」「反復処理(はんぷくしょり)」の説明(せつめい)をしてきましたが、 だいたいのイメージは(つか)めましたでしょうか?

この3つの基本(きほん)となる処理(しょり)(おぼ)えることができれば、 あとは()()わせでプログラムを作成(さくせい)することができます。

では、実際(じっさい)に「順次処理(じゅんじしょり)」「分岐処理(ぶんきしょり)」「反復処理(はんぷくしょり)」を使(つか)ってプログラムを作成(さくせい)してみましょう。

Scratch(スクラッチ)を使(つか)えば、プログラミング初心者(しょしんしゃ)でも(たの)しく(まな)ぶことができます。是非挑戦(ぜひちょうせん)してみてください。
Scratch(すくらっち)(はじ)(かた)について()りたいという(かた)下記(かき)記事(きじ)をご(らん)ください。

Scratchの始め方。アカウントの作り方や基本操作など。
「Scratch(スクラッチ)を始めてみたいけど、どうすればいいの?」という人向けの記事です。 チュートリアル動画をベースに基本操作の説明や、アカウントの作り方も説明。 専用ツール不要、Webブラウザから気軽に利用可能。
プログラミングが上達する人・しない人 【現役エンジニアの実体験】
この記事は、「どうやったらプログラムがうまく書けるようになるのかなぁ?」と思っている方へ向けての記事です。 「筆者がプログラムをうまく書けなかった時代」の体験談を載せていますので、同じような状態に陥っている方には効果があると思います。
プログラミングの始め方
「プログラミングの始め方(学習ロードマップ)からITエンジニアに必要な知識や仕事術」について、初心者や独学の方向けに何から始めたら良いのかわかりやすく説明することを目的としたブログです。Twitterや問い合わせフォームにて、質問・相談も受け付けています。

コメント

タイトルとURLをコピーしました