inohilog

/var/log/inohiro.log

第3回Ruby勉強会に参加

第3回Ruby勉強会に参加。今回は第3章の内容。3章はコマンドライン引数などの使い方。

私が作った問題

コマンドライン引数から言う回数という文字列を取得して言う

回答例

roop = ARGV[0].to_i
roop.times { print "Hello, " + ARGV[1] + "\n" }


使用例

$ ruby kadai1.rb 3 World!
Hello, World!
Hello, World!
Hello, World!

コマンドライン引数で渡したファイルを読んで、引数で渡した文字列から始まる行をとってくる

回答例

pattern = Regexp.new( "\^" + ARGV[1] )
filename = ARGV[0]

file = open( filename )
while atari = file.gets do
    if pattern =~ atari
        print atari
    end
end

file.close


使用例

$ ruby kadai2.rb kadai2.rb file
file = open( filename )
file.close

他の人が出題した問題

渡されたファイルを読んで、行数を数える
filename = ARGV[0]
counter = 0

file = opne( filename )
while file.gets do
    counter += 1
end
print counter.to_s + "\n"
file.close


実行例

$ ruby line_counter.rb line_counter.rb
10

randで文字列を吐いて、その中に知ってる単語はあるかな?

randから文字列作るのは出来ないので、擬似的にランダムな文字列作るのにくろう。

randで数字を作って、小数点1桁を引っ張ってくる。引数で渡した数字と同じのが何個あるか言う

上の問題やってて出来なかった。


こんな感じでしょうか。。。

勉強になった事