補足)PCのディレクトリ(フォルダ)構成について:
最近のWindowsでのトレンドに追随していない記述があってみなさんを混乱させました。
「ドキュメント」フォルダは、今はユーザプロファイルフォルダの直下の
Documents ではなく、OneDrive 配下で扱う形態が最近は多いようです。
本科目に取り組むにあたって、次回以降、以下の2つの技術はマスターしておく必要があるので、 各自自分に対するチェック項目だと受け止めておいてください。
プログラムの実行の方法(ファイルをコマンドプロンプトで呼び出すことができるか)
(板書を使って解説した記録も参照されたい)
辞書の引き方(、に相当する、プログラムを構成する各要素について リファレンスマニュアルのページで項目を探し出すことができるか)
エディタでプログラムを入力し(実際には 前回のページから切り貼りしたもの)
コマンドプロンプトで実行してみる。
今日動作させるプログラムは前回紹介したものと同じ(後に解説あり)。
100.times {
puts "hello"
}
標準入力から読み込んだ文字列を標準出力に書く出す動作、を、 標準入力が「終了」するまで繰り返し続けるプログラム(前回の2.3節に提示した)について、
実行してみて動作を確認した上で、
プログラムを構成する各要素をマニュアルなどで調べ、
なぜこのプログラムが繰り返しのプログラムとして動作するのか、
またそこを実現できているプログラミング言語の工夫など、
考察してメールで報告ください。
メール本文に文章などを直接書いて大丈夫です(その方が受け取る方は楽です)。
100.times
の 100は FixNum クラスのインスタンス 上記の話は、その後、変更され、最近のRubyでは Fixnum、BigNum が Integerに統合されている。
times
は Integer
クラスに作られている。(Integer#times と表記する)
__ . __ の形は、メソッド呼び出しを意味している
Integer#timesは2つの呼び方が提示されている(ドキュメントを確認されたし)
が、
ここではその1つめ(緑矢印)の、
ブロック( {…} または do…end に囲まれたもの)を後置する書き方で、
ブロックの中に書かれたコード(文や関数)を指定の回数だけ繰り返す。
puts
は、リファレンスの中では Kernel.#puts
に置かれている(gets
も同様)。
Kernel.puts "hello"
と書いてもいいが、
Kernelモジュールのメソッドに限って、レシーバ( .
の左側)が省略でき、
これらのメソッドは関数呼び出しのような書き方ができる
なお、puts は、英語の動詞putsの三人称単数現在形ではなく、 put
string の略なので、
「プッツ」とは読まず「プット
エス」 と読む人が多い。
=> 別ページ(ここは次回あらためて)