Home > Java > Javaで考えるアルゴリズム

KENスクールはITエンジニア・Web/DTP・オフィスPCの専門パソコンスクール

Javaで考えるアルゴリズム

  • Posted by: kenschool
  • 2010年3月 2日 19:05
  • Java

アルゴリズムとは、コンピューターに対して明確な動作をさせるための
処理の手順や考え方です。


コンピューターは与えられたプログラム(手順書)を
その記述通り忠実に実行します。
 

そのためプログラムは、順序立てられ、
正確に処理を進められるよう作成しなければなりません。


例えば、駅で160円切符を買うときに
お金を入れずに切符が出てきたらラッキーですが、
システム的にはいけませんよね。
 

また、160円に達していないのに切符を購入できてもいけません。


では発券機にはどのようなアルゴリズム(手順)
処理をさせなければいけないのか考えてみましょう。

(使用できる硬貨や紙幣の種類、取り消し等はここでは考慮しません)


単純に考えると、入金が160円に達していれば発券し、
入金が160円以上であれば発券と、必要であればおつりを出す、
ということになります。


ここでは、考えられるアルゴリズムを図で表現することから始めます。
 

図でプログラムの構造を作成することにより視覚的に処理が把握できますし、
他者とのプログラムの確認の際にも図を用いた方が相互の理解が進みます。
 

一般的によく利用されているフローチャート(流れ図)
今回のアルゴリズムを表現してみます。

(細かい処理は省略しています)

160円切符を販売するフローチャート


全体のイメージを付けられたら、
作成したフローチャートを基にプログラムを作成していきます。


今回作成したクラスは2つです。

・Kenbaikiクラス(Kenbaiki.java
 チケットと入金データを管理し、購入情報を表示する、発券機。

・Clientクラス(Client.java
 発券機で実際に操作する人。


このプログラムを実行すると、
途中にデータ(入金額)の入力があるまで待機しますが、
入力されるデータが数字の場合、実際の券売機を想定して
マイナスの値を考慮しない、絶対値で処理をさせています。


また、数値以外が入力されることを考えて、例外処理を設けています。


いかがでしょうか。


一つ一つの手順は掴められましたか?


ある目的を達成するためには、
どのような手順を踏んでいくのかを考えることがアルゴリズムであり、
またそれを理解することが、結果としてシステム全体を理解することにもなります。


プログラムを始めたばかりの方、プログラム作成にまだ自信がない方は
是非アルゴリズムを、しっかりと身に付けていただきたいです。


今後ともさまざまなアルゴリズムを紹介していきたいと思います。

 --------------------------------------------------------------------------------

パソコンスクール KENスクール北千住校 Programインストラクター
http://www.kenschool.jp/school/kitasenju/index.html

KENスクールでJavaを学びたい方は、Program講座へ!
http://www.kenschool.jp/Program/index.html
 

トラックバック:0

TrackBack URL for this entry
http://it.kenblog.net/mt-tb.cgi/832
Listed below are links to weblogs that reference
Javaで考えるアルゴリズム from KEN IT BLOG - ITエンジニア/SEを育成するパソコンスクールKENのインストラクターがつづるブログ

Home > Java > Javaで考えるアルゴリズム

Search
Feeds

ページトップへ