10/11 配列による画像の表示, 条件分岐と繰り返し(1)


前回の補足


前回の感想,質問より

Q.
画像を読み込んで回転させたり色を調整するような、具体的なモノに対するプログラムを扱ってみたい。
A.
講義では「画像をプログラムで作成して表示する」のはやりますが,「画像を読み込んで加工する」「画像をファイルに出力する」部分は教科書にも含まれていません.RMagickというライブラリを使うとできると思いますが,ECCS環境では標準でインストールされていないようです.
Q.
solution1とsolution2 はPASSしたもののPASSの文字列のあとにドットが入っていたのが気になった。
A.
良いところに気がつきましたね.check.rb は 同じ関数について2つ以上の入力でテストを実行した時は,「入力数-1」個のドットを表示するようになっています. solution1, solution2 は ex01.rb の中で,以下のように2つの入力でテストするように記述されています.
     ["Ex1.9 g-b", "solution1", "float", 1, 1.0, 1.0, -2.0],
     ["Ex1.9 g-b", "solution1", "float", (-5+Math.sqrt(13))/6, 3.0, 5.0, 1.0],
     ["Ex1.9 g-c", "solution2", "float", (1-Math.sqrt(5))/2.0, 1.0, -1.0, -1.0],
     ["Ex1.9 g-c", "solution2", "float", (-5-Math.sqrt(13))/6, 3.0, 5.0, 1.0],

Q.
質問なのですが、来年以降プログラミングの授業がPythonに統一されるという噂を耳に挟んだのですが、それは本当でしょうか。また、もしそうなった場合、アルゴリズム入門のような授業は来年度Sセメスターにか開講されますでしょうか。
A.
講義中でお知らせしたとおり,今年度のアルゴリズム入門では,いくつかのクラスでRubyの代わりにpython を使う講義を試験的におこなっています.その結果しだいでは,来年度のアルゴリズム入門の講義が Python のみでおこなわれる可能性はあります. 「アルゴリズム入門」という講義は「Ruby言語を学ぶ」,「Python言語を学ぶ」ものではなく,「Ruby言語を使ってアルゴリズムについて学ぶ」,「Python言語を使ってアルゴリズムについて学ぶ」ものなので,「Ruby言語を使ったアルゴリズム入門」受講者のために,Python言語を使っただけで同じ範囲を扱うコースを開講することはないと思いますが,(Python言語を使った)発展的な内容を扱うような講義は開講される可能性はあります. そのような講義を受講する場合も,「Ruby言語を使ったアルゴリズム入門」を習得するのは意味があると思います.

前回の課題について

今日の練習,投票

授業の登録方法


講義資料


講義フォルダの作成



配付プログラムのダウンロード


投票システム

vote.rbをダウンロードして(「リンク先のファイルを別名で保存」で,ホームフォルダの下のalgo17を選択(なければ作る).".txt"を「追加しない」を選ぶ),ホームディレクトリに保存します.ドックからターミナルを起動して,
cd algo17
を済ませてから,
ruby vote.rb 選択肢番号
のように使います.

irbを使いながら(一旦終了せずに),投票システムも使うには,ターミナルのメニューバーの「シェル」->「新規タブ」を選ぶか,[Command]+[T]で別のタブを開いて(あるいは[Command]+[N]で別のウィンドウを開いて),投票システムを使うことをお勧めします.このあたりのことは,「はいぱーワークブック」15.4 ターミナルの便利な使い方に書いてあるので参考にしてください.


テキストの補足


今日の課題


自宅で自習をする人のために

アルゴリズム入門共通資料の中に講義で使うRuby言語の処理系のインストール法があります.