実生活とプログラムのアルゴリズム
アルゴリズムは、一連のステップを使用して結果を決定します。ステップには、一連の指示、比較、あるいは数式が含まれます。
あなたの日常生活には、何気なく使っているアルゴリズムがたくさんあります。これらのアルゴリズムは、意思決定、物事の創造、問題の解決に役立っています。
実際の例
- スナックを買うのに十分なお金があるかどうかを確認する
- 朝、着替える
- 棒人間を描く
コーディング例
- スキルレベルがアイテムを使用するのに十分に高いかどうかを確認します。
- アイテムのリストをアルファベット順に並べ替えます。
- 溶岩の上に立っているプレイヤーは、毎秒 5 体力を失います。0 になるとリスポーンします。
プログラムでアルゴリズムを作成する
実生活では、私たちが日常的に使っているアルゴリズムについて考えることはあまりありません。しかしコンピュータの場合、アルゴリズムは段階的にコード化され、少なくとも3つの方法のうち1つを使って問題を解決したり結果を出したりする必要があります。
選択
if/then などの条件文を使用して出力を決定します。
if time == 0 then
stopLightColor = red
end
順序
正確なステップの集合体。
local function createBridge()
create new block
size block
set color
rotate
set location
parent to workplace
end
反復
for ループや乗算など、必要に応じてコードの一部を繰り返します。
for countDown=10,1,1 do
time = time - 1
wait(1)
end
アルゴリズムの組み合わせ
大きな問題を小さな問題に分割できるように、一部のアルゴリズムは一連の小さなアルゴリズムに分割できます。
現実の朝の時間の着替えのアルゴリズムを思い浮かべてください。それがメインのアルゴリズムなら、服を選ぶのに1つのアルゴリズムを使い、服を着るのに2つ目のアルゴリズムを使うかもしれません。
着替えの疑似コード
-- 服を選ぶための最初のアルゴリズム
local function pickClothes()
pick top clothing
pick bottom clothing
pick Socks
pick Shoes
end
-- 服を着るための2つ目のアルゴリズム
local function putOnClothes()
put on top clothing
put on bottom clothing
put on socks
put on shoes
end
-- メインアルゴリズム、pickClothes() と putOnClothes() を呼ぶ
local function getDressed()
pickClothes()
putOnClothes()
end
概要
アルゴリズムとは、ある結果を得るためのあらかじめ定義された手順です。日常生活では、アルゴリズムは服を着る、仕事に行く、ケーキを作るなどの問題を解決します。プログラムでのアルゴリズムは、ウェブサイトの管理、交通渋滞の処理、ゲームの仕組みの実行などの問題を解決します。目的を達成するために、アルゴリズムはしばしば他のアルゴリズムを呼び出します。
アルゴリズムは、選択、反復、順序の3つの異なる方法で結論を出します。選択では、if/then文のような条件文が使われます。反復は、必要に応じてコードの一部を繰り返す。シーケンスでは、結果を得るために一連のステップを使用します。