まつもと ゆきひろです In message "Re: [ruby-list:46538] Re: ARGVの引数のデータタイプ" on Wed, 11 Nov 2009 16:58:45 +0900, askar <askar75 / gmail.com> writes: |温度の値、Celsius を Fahrenheit に変換プログラム | |#! ruby -Ku |# -*- coding: utf-8 -*- | | def cels2fahr (cels) | return Float(cels) * 9 / 5 + 32 | end | | cels = ARGV[0] | print "Enter temperature in Celsius: ", cels, "\n" | fahr = cels2fahr(cels) | print "Celsius = #{cels}; Fahrenheit = #{fahr}\n" | |ここのプゴグラムではcels = ARGV[0]では数値として受け取られていると思って |いました。 尋ねているのは「なぜそう思ったか」という理由です。これ以上繰 り返すといじめのように感じられるかもしれませんが、「なんとな くそう感じた」というような思いこみではなく、「このような事実 が観測された」、「このような理由でこう思った」というような事 実の積み重ねがなければ、正しい知識を身につけることはできない と思います。 この例の場合には、Float(cels)の部分がARGVの値(String)を数値 (Float)に変換しています。