プログラミングってなんだろう

超簡単なプログラム

ここではグラフィックスからちょっと離れて, 超簡単なプログラムでその仕組を理解しておこう.

繰り返しを実現する for ループ

次のプログラムをMeadowに貼り付けてから実行してみよう.

# hello.rb
for i in 0 .. 9
   print  "Hello! "
end

さて,どうなったかな?このソースをよく見ると仕掛けがわかるはずだ. こんなふうに何かを繰り返させる仕組みをループという. ここでは for を使って実現しているので for ループという. 本当は Ruby はもっともっとおもしろいループの仕掛けを用意しているの だけど,ここでは触れない.

ともかく,ループを使えば,ものすごい回数の処理をコンピュータにやらせることができる.試しに,上の 9 を 100000 とかやってみるとどうなるだろうか? (試した後はもどしておくこと)

次に,この print というところを次のように puts に書き換えてみよう.

# hello.rb
for i in 0 .. 9
   puts  "Hello! "
end

なにか変わったかな?すぐにわかるね. プログラムをちょっと書き換えると,プログラムの動きが変わる. こんなふうにして,プログラムの仕組みを少しずつ理解することができる.

こんどは,次のように改造してみよう. for で始まる行が2つになっている.何が起こるだろうか?

# hello.rb
for i in 1 .. 9
  for j in 1 .. 9
    print i * j, " "
  end
  puts
end

こんどは掛け算九九のようなものができた.

if で条件分けをする

さらに書き換えを進めてみよう.次のようにするとどうなるだろうか?

# hello.rb
for i in 1 .. 9
  for j in 1 .. 9
    if i < j
     print "*  "
    else
      print i * j, " "
    end
  end
  puts
end

こんどは九九の表がちょっと簡単になった.* が付いたところは 覚えなくてもいいということを,小学校の時に発見したかも知れない.

このソースでは, if というキーワードが大事だ. 日本語では「もしも」ということだ.

もうひとつ,elseというキーワードもある.これは,「そうでなかったら」 という意味だ.つまり if else を合わせれば, 条件判断して手続きを場合分けして仕事をするという,賢い処理が実現できるわけだ.

ここで学んだループと条件判断は,プログラミングの中でもっとも 基本的な道具になっている.それだけでもいろいろなことができるといってもいい. それでは先に進もう.

もどる