情報科学概論
2005.10.03
この授業では,コンピュータというものを知る上で,その動作の仕組や処理を全
般的に学習することに重点をおいて,プログラミングを行います.プログラミン
グを通して,コンピュータの中で行われている処理を経験して行きましょう.
扱って行く処理としては,コンピュータの中で数値はどのようになっているのか,
整数 (Integer) や浮動小数点数 (Floating Point Number) の違い,内部処理で
利用される二進数 (Binary number) や便宜上人間が二進数
を扱いやすくした16進数 (Hexdecimal Number) などについて学習します.また,文字がどのように処理
されるのか,文字列 (String) についても学習します.そして,「制御構造
(Control Structure)」とよばれる処
理の流れを自由に制御する方法について学習すると,プログラミングの入門とし
ては終わりです.そこまでがこの授業の範囲です.
http://www.mag.shimane-u.ac.jp/ruby/sapphire.html
ここから最新版をダウンロードできますが,もともとが実行するために機械語に
翻訳する必要の無い「スクリプト言語」ですので,ダウンロードしたらすぐに使
えます.ただし,現在利用可能なプラットフォームはUNIXを前提として,Ruby本
体とRuby/GTKがインストールされている必要があります.
ターミナルで次の操作を実行して下さい.これにより,自分のホームディレクト
リに sapphire というディレクトリが作成されます.
$ mkdir ~/sapphire
このディレクトリが今後この授業で作成するプログラムの保存に関するベースに
なります.
プログラム本体とアイコンの二つをダウンロードします.先ほど紹介した
ダウンロードページ
にある「最新版ダウンロード(本体)」の部分をマウスで「
右クリックして,「リンク先を名前をつけて保存」を選択します.すると,例えばMozillaでは図1に示すダイアローグ
が現れます.
図1 ダウンロードダイアローグ
/virtual/home/b05**/sapphire
となっているはずです.ここで,** の部分には自分のログイン名が表
示されているはずです.
次にアイコンもダウンロードします.ダウンロードページに戻って,アイコンの
絵をクリックすると,図2のようなダイアローグが出てき
ます.
図2 アイコンダウンロードダイアローグ
起動が簡単になるように,パネルへ登録することを行います.他にもGNOMEメニュー
への登録なども可能ですが,そちらは必要に応じて自分で作業してください.
画面下部にあるパネル(いわゆる「タスクバー」)のすき間の部分で右クリックす
るとメニューがその場所に現れます.このようなメニューを「ポップアップメ
ニュー」といいます.その中から「パネル」→「パネルに追加」→「ランチャー」
図3のように選択していきます.
図3 パネルにアプリケーション起動メニューを追加する手順
図4 ランチャー登録ダイアローグ
最後に「OK」をクリックするとパネルに登録されます.次回からは,
パネル (タスクバー) にあるアイコンをクリックす
ると起動して,図5のようなウィンドウが開きます.
図5 S@pphireのメイン画面
ウィンドウの上部に図6に示すメニューバーが用意されています.左の二つの項
目,「ファイル」と「編集」は良く見られる形式のものと同じですので,お分か
りになると思いますが,このS@pphireに特有のものは,「実行」「デバッグ」
「オプション」です.
図6 メニューバー
図7 ボタンバー
大変申し訳ないのですが,このS@pphireは現状でバージョンが0.1.6というまだ
まだ開発が始まったばかりのツールでして,たくさんの問題や不十分な点を残し
ています.特に支障となるような問題点について以下に列挙しておきますので,
これらをご理解いただいた上でご使用ください.
何も入力していなかったり,変更していない状態であるにも関わらず,ファイル
が更新されているので保存するか,を聞くダイアローグウィンドウが開きます.
必要に応じてボタンをクリックして先に進んでください.
保存して終了するよう操作すると,名前の付いていないファイルを保存するダイ
アローグウィンドウが表示されますが,その上に終了するかどうかを聞くダイア
ローグが表示されます.一度戻って保存作業を行った上で最終的な終了の操作を
お願いします.
次のようなプログラム(これを以後「スクリプト」と呼びます.)をS@pphireの
プログラム入力ウィンドウに入力し,動作を確認してみましょう.正しく動作し
なかった場合には,原因を考えないといけませんので,連絡して下さい.
この授業ではテストや宿題の提出をすべて電子メールで行います.そのため,電
子メールの操作になれておくことが大変重要になってきます.これまで何度か使っ
てきてはいると思いますが,今一度環境の確認を行いましょう.
この授業では,テストや宿題の提出はすべて電子メールを利用して行います.そ
の際に,こちらで形式を指定する「解答用紙」を利用します.解答用紙は物理的
な紙媒体ではなく,テキストデータですので自分で復元したり作成したりするこ
ともできますが,基本的にはダウンロードして利用する形式です.次にある解答
用紙のリンクを右クリックして,出てくるポップアップメニューから「リンク先
をファイルに保存」を選択して自分の「ホームディレクトリ」内の適当な場所に
保存し,メールに添付する練習をします.
解答用紙に問題が記載されていますので,それに必要な事項を記入してくださ
い.記入の際には,テキストエディタを使用します.S@pphireを使うことも可能
ですし,GNOME標準のテキストエディタであるgEditを使うこともできます.毎回
小テストや宿題を課しますが,それらはいずれもこのような解答用紙を使用しま
す.解答用紙そのものがRubyのスクリプトとなることを前提としていますので,
記入欄の指定以外の部分に記入したり,ヘッダ部分を改編することはしないで下
さい.また,解答用紙自信がスクリプトですので,S@pphireで記入作業を行って,
「実行」ボタンで即座に実行できます.
いず
れかの手段で記入したらファイル名を自分の正しい学生番号を含むように修正し
て保存してください.即ち,現在のファイル名に s0540 が含まれてい
ますが,その後に学生番号の下二桁を追加して保存してください.
授業中に指定する方法で,出席申告のメールを提出しますので,指示に従って作
業してください.
プログラムを作成するには,いくつかのパターンがあります.そのもっとも素朴
な形式は,「テキストエディタ」を利用して,自分でプロ
グラム(ソースともいいます)を入力して行き,あるファイル名で保存したものを
実行環境で実行するというものです.2003年度までの情報科学概論ではこの手法で
プログラミング実習を行ってきました.一方,これに対して,Microsoftの提供する
Visual Basic や Visual C++,また,BorlandのDelphiのように,プログラムを
作成するために専用のツール(アプリケーション)があり,その中で実行ができた
り,エラー検出と修正(デバッグ)の機能があったりするものもあります.後者を
統合開発環境 (IDE, Integrated Development Environment) ということもあり
ます.また,RDA (Rapid Development Application) とも呼ばれることがありま
す.ここで,紹介するS@pphireは前者のようなエディタでソースを記述してUNIX
のターミナル(仮想端末)でコマンドラインから実行するようなプログラミング形
式をIDEにちょっとだけ近づける支援環境です.
私の研究室のWWWページからダウンロード可能です.
WindowsでRubyを学習する場合には,これを開発するきっかけとなった
RubyWinという霊験あらたかな統合開発環境があります.また,もっと凄い,
RDE
というのもあります.UNIX環境では
FreeRIDEというやはり完成度の高いものがあるようですが,自分の学習のた
めもあって作ってみました.
このS@pphireを使うための準備をこれから行います.準備は,ディレクトリ作成,
ダウンロード,パネルへの登録,という順で行います.コマンド操作が入ります
ので,必要に応じてこのテキストからコピー&ペーストで作業して下さい.
設定項目 設定内容
名前 S@pphire
説明 Ruby developing environment
命令 cd ~/sapphire;ruby sapphire.rb
種類 Application
何も入力していない状態でこのダイアローグが出てきたときに,「保存」を選択
してしまうと,S@pphire実行ファイル自体が空のファイルで上書きされてしまい
ます.そうなると,次回以降S@pphireが起動できなくなります.S@pphireが起動
できなくなったときは,上記の ii) の作業を再び行って下さい.
for i in 1..20
printf "Iteration time: %d\n", i
printf "Number: %d\n\n", i+100
end
自分宛にメールを出して下さい.そして,受信した後,それに対して返信してく
ださい.これらの作業がきちんと行えていれば,電子メール環境の設定は大丈夫
です.もし,送受信においてトラブルが発生した場合には,Sylpheedであれば
「ツール」メニューの「ログウィンドウ」を開いて原因を解明してください.
Sylpheed以外のメールツールであれば,自己責任で解決してください.
目次ページに戻る