プログラミング初心者が身に付けておくべき基本アルゴリズム4つ

SPONSORED LINK

プログラミングの勉強ははかどってますか?

僕もマイペースながら少しづつC#を身に付けていってますよ。僕もできるだけ分かりやすい説明を心がけていきたいと思います。プログラミング、一緒に頑張りましょう。

今日はその中でもプログラミングの基本となるアルゴリズムについて説明していきます。絶対に身に付けておきたい構文の4つを紹介しますよ。

プログラミングの基本

programming4

基本的にプログラミングの言語の種類を大きく分けると実はその種類は少ないです。

  1. ループ
  2. 制御(分岐)

基本的にはこの2つを用いながらプログラミングを組んでいきます。初心者はまず、この2つの大きな種類のうちから、とても重要な4つの構文を身に付けてもらいたいと思います。その4つは以下になります。

  1. if文
  2. switch文
  3. for文
  4. while文

それでは一つずつ、ざっくりと説明していきます。

 

身につけるべきプログラミング

programming2

if構文

プログラミングを組んでいると結構な数で見かけるif構文です。WordPressのソースを見たことある人なら、っ見覚えがあるかもしれませんね。それくらいプログラミングの中ではメジャーな構文といえます。

ifには英語で習っているとおり「もし〜であったら」という意味が存在していますが、プログラミングでも同様です。

「もし〜であったら、ーの処理をせよ」といった条件を提示して、プログラミングの流れを分岐させていくのがこの構文の大きな特徴です。if構文のざっくりとした公式はこうです。

if ( 条件式 )

{

条件がみたされた時の処理

}

例にある通り、ifの後のカッコ部分に選別したい条件を入れ、その条件を満たしたときに行いたい処理を記入します。

上の例では条件式にa > bを代入しました。

この構文でaとbの値をプログラミングで比較した時にaがbよりも大きかった場合は、「aの方が大きいよ」と表示されます。

では、もしbのほうが大きかったり、aとbが同値だったらどうなると思いますか?

そういった場合はelse側の処理が流れることになります。elseとは「それ以外」という意味があります。文字通りifの条件を満たない場合は、すべてelse側が処理を受け止めてくれます。

もう一つ簡単な例を挙げておきます。これはifの分岐を複数に分けたいときに使われるものです。if / else if / elseの三段階に分けることもできますし、真ん中のelse if (〜)を増やして処理の個数を更に増やすことも可能です。

一応こうした方法もあることを記述しておきます。

 

Switch構文

いくつか存在する分岐の中で、もう一つメジャーな分岐の構文を紹介しておきます。それはswitch文と呼ばれる構文で、その名の通りプログラミングの処理をスイッチさせる役割があります。

switch (条件式)

{

case A:

break;

 

case B:

break;

 

case C:

break;

}

こんな感じで処理を分岐させることが可能です。カッコ内の条件式でより分けたい変数を指定し、その条件をcaseの後に記述します。

こんな感じにしておきましょうか。

このソースでは、flagというbool型(論値)を取る変数を用意し、もしflagがtrueの値を取る場合は「正解」と記述して次の処理に移りますよ、ということが書いてあって、もしfalseだった場合は「残念」と記述して次の処理に移りますよ、ということが記述されています。

各caseの中に「break;」というソースがありますが、この意味は「カッコの中から抜けるよ」という意味です。この先で説明する「while」の構文にも使用されるので、意味合いだけでも覚えておいてください。

switchを使用することで、ある変数における条件で処理を分けたい時に使えるので重宝しますよ。

programming2

 

for構文

ここからの2つはループという構文について説明します。ループとはその名と通り「ループ」するのです。つまり繰り返すってことです。

先に紹介するのはfor構文と呼ばれるものですが、プログラミングの初期段階では非常にお世話になるソースなので覚えておきましょう。

for (初期化式: 条件式: 更新式)

{

繰り返したい処理内容
}

というのが構文になります。forの後のカッコ内に色々条件を記述しておきます。条件を満たす間は、ぐるぐるとカッコの中の処理を繰り返しましょう、という指令を出すのがこのforによるループなのです。

簡単に例を出しておきましょう。

forの後のカッコの中には3つの条件が並んでいますね。これが先程書いた初期化式、条件式、更新式になります。カッコの中を簡単に説明します。

  1. i = 0:  int型の変数iは1からスタートさせましょう
  2. i < 0:  iが10より下の場合にカッコの中の処理を行いましょう
  3. i = i + 1:  iは一つずつ値を増やしていきます

という事ですね。このプログラミングを回すとこんな結果が出るようになります。

iを1から始めると過去の中の処理が9回行われます。それはiが10より下だからです。なので9回「iはまだ10ではありません」という処理が行われます。その後、iが10に到達すると条件から外れてカッコの外の処理が走るようになります。

そこでやっと「iはやっと10になりました」という文が記述されるのです。

for構文はこうしたように、とある条件を満たすまで過去の中の処理をぐるぐると繰り返すことを指令する構文です。最後に判定を行う順番を示しておきます。

  1. 初期化式
  2. 条件式
  3. 繰り返したい処理内容
  4. 更新式
  5. 条件式
  6. 繰り返したい処理内容
  7. 更新式
  8. 条件式

最初の初期化式で初期化を行い、条件式にて判定し、条件を満たすとカッコの中に処理が入り込みます。その処理が行われた後、更新式(さっきのi = i + 1の部分)が走り、もう一度、条件式で判定をして・・・というのを繰り返します。

この順番をしっかり把握しておかないと、for構文を書いたときに条件式の設定で頭を悩ませる事になる(経験済み)ので覚えておきましょう。

 

while構文

この構文は指定した条件を満たしている間、カッコ内の処理を繰り返して行う構文になります。

while ( 条件式 )

{

繰り返す処理

}

こちらは条件式が前になるので「前判定」と呼ばれています。また、違った形の構文もあるので紹介しておきます。

do

{

繰り返す処理

}

while ( 条件式 ):

こちらの場合はカッコの後に判定があるので「後判定」と呼ばれています。それ以外にもwhile構文にif構文を織り交ぜて、ある条件のもとでループから抜けるように設定もできます。

while ( 条件式 )

{

if ( 条件式 )

{

break;

}

}

この「break;」を含む文を「途中判定」と呼んでいます。簡単なプログラミングを書いてみました。

コンソール画面上で負の数まで入力してもらい、その時までの合計値を出力するというプログラミングコードです。

whileの条件式をtrueで流すことで、過去の中を強制的に繰り返させる構文になります。上のとおり、負の数が入力された時点でif構文のカッコの中に入り、breakからループの外に飛ばされます。

こういったように、whileとifの構文を組み合わせることで「〜された時に☓☓の処理をする」とう処理を作ることができるので覚えておきましょう。

 

まとめ

以上、初心者プログラマーが覚えておくべきアルゴリズムの基本について書いておきました。こうした構文は基本中の基本なので、これから先プログラマーとして進んでいくために覚えておく必要があります。

これから先も覚えたプログラミングや必要なことは書いていきたいと思っています。

駆け出しのプログラマーですが、これから先に進んでいけるように努力していきます。みなさんも僕と一緒にプログラミングを勉強していきましょう。

これからの時代、プログラミングは必須の能力になります。今のうちに概要を掴んでおくことは超重要事項です。これからも有益な情報を出せるように頑張っていきますよ。

SPONSORED LINK

更新情報はSNSでお届け

コメントを残す

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

ABOUTこの記事をかいた人

HIRO

旅・音楽・プログラミング・ブログを愛するコンテンツ・クリエーター、ミニマリスト。ガジェット、海外ドラマ、旅行が好きで、趣味は読書。都内のIT企業でSEとして働いています。※このブログでの発言はすべて個人に帰属し、企業や団体とは一切関連がありません(PRを除く)。