*ブログに戻る →ここ です。


Rubyの学習 free165
値であるオブジェクトと同じオブジェクト(値)を探し、該当すればプログラムを実行する。
該当しない場合も、それようのプログラムを実行する。

↓Rubyのプログラムを実行すると以下のように表示される。

C:\RubyTest>ruby test_sada8-7.rb
ジンベイザメ\10,000,000円
Banana\500円
イケメン男子\0円,お探しのものは売っていないようです。
ピラニア\8,000円
料金は\10008500円です。

C:\RubyTest>




Saturday,September,14,2013

プログラムの表示

=begin Saturday,September,14,2013 ○値から謎の多いクラス名を調べてみる。 ルビーの値(オブジェクト)が所属するクラス Numeric (わからない) Float (浮動小数点数) Integer (わからない) Bignum (大きな整数) Fixnum (整数) PHPでの値の型 string (文字句) integer (数字) double (小数点) free147.php ←ここで試した。 謎の多いクラスを調べる方法は下記、またの機会に別のページで試してみます。 #! ruby -Ku print("定近です。".class())←クラスを調べるには、これを使って調べます。 print("\n") #! ruby -Ku ← の「u」とは、UTF-8 のこと(文字化けを回避します)。 s or S Shift_JIS e or E EUC-JP u or U UTF-8 n or N NONE(ASCII) 「require」メソッドで「kconv」ライブラリを読みんで、モジュール関数「Kconv.tosjis()」 を使用することにより表示の時に Shift_JIS に変換している。(メソットというからにはクラスがあるんでしょうね) まだきちんと理解できていません。 保存するときは、文字コードセットを UTF-8 にすること。 サクラエディタを使用しています。 コマンドプロンプトを開きます。 C:Documents and Settings\User> C:Documents and Settings\User>cd C:\rubytest と入力する。「cd」カレントディレクトリの略。現在のフォルダという意味(フォルダは任意の名前で自作した) C:\RubyTest>ruby test_sada8-7.rb そして保存したファイル名を打ち込む。 =end #コメントテスト、ファイル名test_sada8-7テキスト.txt(メモ帳の下書き名) #--------------------------------------------------- =begin 変数(名札)の先頭には変数とわかるようにアンダーバーを付けた 文字列はクラスから飛び出したオブジェクトである。(数字は別らしい) クラス内にはメソットと呼ばれる実行式がある(文字列オブジェクトを出力するための)。 「case」 「when」 これらは関数かな?呼び方がよくわからない。 お手本は下記 case 対象オブジェクト when 値1 then 値1と一致する場合に行う処理 when 値2 then 値2と一致する場合に行う処理 when 値3 then 値3と一致する場合に行う処理 else どの値にも一致しない場合に行う処理 end ○if文でも同じように出来る 以下お手本 free162.html 条件式が真(TRUE)か偽(FALSE)で実行式を分けた。剰余において値が割り切れるかどうかの条件式に使用した。 free163.html 駅の説明に利用した。 if 対象オブジェクト === 値1 then 値1と一致する場合に行う処理 elsif 対象オブジェクト === 値2 then 値2と一致する場合に行う処理 elsif 対象オブジェクト === 値3 then 値3と一致する場合に行う処理 else どの値にも一致しない場合に行う処理 end =end #! ruby -Ku require "kconv" _sum = 0 _product = "ジンベイザメ" print(_product) case _product when "Melon","Banana" then _sum = _sum + 500 print(Kconv.tosjis("\\500円\n")) #特殊文字を使用した when "Apple","Lemon","Orange" then _sum = _sum + 150 print(Kconv.tosjis("\\150円\n")) when "ジンベイザメ" then _sum = _sum + 10_000_000 #桁にアンダースペースを入れてみた、表示の時は出力されないね print(Kconv.tosjis("\\10,000,000円\n")) when "イルカ" then _sum = _sum + 3_000_000 print(Kconv.tosjis("\\3,000,000円\n")) when "ピラニア" then _sum = _sum + 8_000 print(Kconv.tosjis("\\8,000円\n")) else print(Kconv.tosjis("\\0円,お探しのものは売っていないようです。\n")) end _product = "Banana" print(_product) case _product when "Melon","Banana" then _sum = _sum + 500 print(Kconv.tosjis("\\500円\n")) #特殊文字を使用した when "Apple","Lemon","Orange" then _sum = _sum + 150 print(Kconv.tosjis("\\150円\n")) when "ジンベイザメ" then _sum = _sum + 10_000_000 #桁にアンダースペースを入れてみた、表示の時は出力されないね print(Kconv.tosjis("\\10,000,000円\n")) when "イルカ" then _sum = _sum + 3_000_000 print(Kconv.tosjis("\\3,000,000円\n")) when "ピラニア" then _sum = _sum + 8_000 print(Kconv.tosjis("\\8,000円\n")) else print(Kconv.tosjis("\\0円,お探しのものは売っていないようです。\n")) end _product = "イケメン男子" #該当しないものをテストする print(_product) case _product when "Melon","Banana" then _sum = _sum + 500 print(Kconv.tosjis("\\500円\n")) #特殊文字を使用した when "Apple","Lemon","Orange" then _sum = _sum + 150 print(Kconv.tosjis("\\150円\n")) when "くじら" then _sum = _sum + 10_000_000 print(Kconv.tosjis("\\10,000,000円\n")) when "イルカ" then _sum = _sum + 3_000_000 print(Kconv.tosjis("\\3,000,000円\n")) when "ピラニア" then _sum = _sum + 8_000 print(Kconv.tosjis("\\8,000円\n")) else print(Kconv.tosjis("\\0円,お探しのものは売っていないようです。\n")) end _product = "ピラニア" print(_product) case _product when "Melon","Banana" then _sum = _sum + 500 print(Kconv.tosjis("\\500円\n")) #特殊文字を使用した when "Apple","Lemon","Orange" then _sum = _sum + 150 print(Kconv.tosjis("\\150円\n")) when "くじら" then _sum = _sum + 10_000_000 print(Kconv.tosjis("\\10,000,000円\n")) when "イルカ" then _sum = _sum + 3_000_000 print(Kconv.tosjis("\\3,000,000円\n")) when "ピラニア" then _sum = _sum + 8_000 print(Kconv.tosjis("\\8,000円\n")) else print(Kconv.tosjis("\\0円,お探しのものは売っていないようです。\n")) end print(Kconv.tosjis("料金は\\"), _sum, Kconv.tosjis("円です。\n"))


* 参考にしたサイトは→ こちら です。

これは赤色の文字例です。

これは青色の文字例です。