*ブログに戻る →ここ です。
Rubyの学習 free173
範囲を指定から条件をつけて抜ける
範囲を指定して条件以外をスキップする
↓Rubyのプログラムを実行すると以下のように表示される。 C:\RubyTest>ruby test_sada9-8.rb スタートしました 変数_sadaStr = a1 変数_sadaStr = a2 変数_sadaStr = a3 変数_sadaStr = a4 変数_sadaStr = a5 変数_sadaStr = a6 変数_sadaStr = a7 変数_sadaStr = a8 変数_sadaStr = a9 変数_sadaStr = a0 変数_sadaStr = b1 変数_sadaStr = b2 変数_sadaStr = b3 変数_sadaStr = b4 変数_sadaStr = b5 終わりました スタートしました 変数_sadaStr = a1 変数_sadaStr = a2 変数_sadaStr = a3 変数_sadaStr = a4 変数_sadaStr = a5 変数_sadaStr = a6 変数_sadaStr = a7 変数_sadaStr = a8 変数_sadaStr = a9 変数_sadaStr = a0 変数_sadaStr = b1 変数_sadaStr = b2 変数_sadaStr = b3 変数_sadaStr = b4 変数_sadaStr = b5 変数_sadaStr = b6 終わりました 時間があるとき総おさらいしよう while文(free167.html) until文(free167.html) for文(free168.html) イテレータ each (free169.html) イテレータ times (free170.html) イテレータ upto (free170.html) イテレータ downto (free170.html) イテレータ step (free171.html) イテレータ loop (free172.html) 数学が出来るともっと楽しめそうですねメモ スタートします 3で割り切れる値だけを出力します 変数_sadaStr = 3 変数_sadaStr = 6 変数_sadaStr = 9 変数_sadaStr = 12 変数_sadaStr = 15 変数_sadaStr = 18 変数_sadaStr = 21 変数_sadaStr = 24 変数_sadaStr = 27 変数_sadaStr = 30 変数_sadaStr = 33 変数_sadaStr = 36 変数_sadaStr = 39 変数_sadaStr = 42 変数_sadaStr = 45 変数_sadaStr = 48 変数_sadaStr = 51 変数_sadaStr = 54 変数_sadaStr = 57 変数_sadaStr = 60 変数_sadaStr = 63 変数_sadaStr = 66 変数_sadaStr = 69 変数_sadaStr = 72 変数_sadaStr = 75 変数_sadaStr = 78 変数_sadaStr = 81 変数_sadaStr = 84 変数_sadaStr = 87 変数_sadaStr = 90 変数_sadaStr = 93 変数_sadaStr = 96 変数_sadaStr = 99 変数_sadaStr = 102 変数_sadaStr = 105 変数_sadaStr = 108 変数_sadaStr = 111 変数_sadaStr = 114 変数_sadaStr = 117 終わりました C:\RubyTest>
Sunday,September,22,2013プログラムの表示
=begin Sunday,September,22,2013 ○値から謎の多いクラス名を調べてみる。 ルビーの値(オブジェクト)が所属するクラス Numeric (説明はfree171.html)[step]メソッドはNumericクラスである。 [step]メソッドは、任意に決めた浮動小数点の値を繰り返し足していく事ができるメソット。 Float (浮動小数点数) Integer (説明はfree170.html)[times][upto][downto]メソッドはIntegerクラス Numericのサブクラスでもある。 このメソッドは要素などの値の範囲を指定し、for句(演算子)と連動させる事で変数へ繰り返し値を名札 付けしながらブロック内のプログラムを実行させる。 Bignum (大きな整数) Fixnum (整数) Kernel [loop]メソッドはKernelクラスである。無限に繰り返しを行なう。(今回学習した) 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_sada9-8.rb そして保存したファイル名を打ち込む。 =end #コメントテスト、ファイル名test_sada9-8テキスト #--------------------------------------------------- =begin while文(free167.html) until文(free167.html) for文(free168.html) イテレータ each (free169.html) イテレータ times (free170.html) イテレータ upto (free170.html) イテレータ downto (free170.html) イテレータ step (free171.html) イテレータ loop (free172.html) 総おさらいしたほうがいいね =end #! ruby -Ku require "kconv" #浮動小数点が可能なようです。 #ブロック[{}]ではなく[do][end]を使うとブレイクのエンドと被るね #ブロックの方を使っていこう。 _sadaCount = 0.7 print(Kconv.tosjis("スタートしました\n")) ("a1".."z9").each{|_sadaStr| print(Kconv.tosjis("変数_sadaStr = "), _sadaStr, "\n"); _sadaCount += 0.7 if _sadaCount > 10.5 then break end } print(Kconv.tosjis("終わりました\n")) print("\n") _sadaCount = 0 print(Kconv.tosjis("スタートしました\n")) ("a1".."z9").each do |_sadaStr| print(Kconv.tosjis("変数_sadaStr = "), _sadaStr, "\n"); _sadaCount += 0.7 if _sadaCount > 10.5 then break end end print(Kconv.tosjis("終わりました\n")) print("\n") print(Kconv.tosjis(" 時間があるとき総おさらいしよう while文(free167.html) until文(free167.html) for文(free168.html) イテレータ each (free169.html) イテレータ times (free170.html) イテレータ upto (free170.html) イテレータ downto (free170.html) イテレータ step (free171.html) イテレータ loop (free172.html) \n")) #1から117までの値を演算子[..]で変数に名札付けしていきます。そしてプリントします。 #繰り返し処理を実行する[each]を部分的にスキップします #この例では、繰り返されるたびに1が加算されますが #合計を3で割って余りが0でない限りスキップして、最初の[each]へ戻ります。 #したがって3の倍数しか表示されません。 print(Kconv.tosjis("数学が出来るともっと楽しめそうですねメモ スタートします 3で割り切れる値だけを出力します\n")) _sadaCount = 0 (1..117).each{|_sadaStr| _sadaCount += 1 if _sadaCount % 3 != 0 then next end print(Kconv.tosjis("変数_sadaStr = "), _sadaStr, "\n"); } print(Kconv.tosjis("終わりました\n")) print("\n")
* 参考にしたサイトは→ こちら です。
これは赤色の文字例です。
これは青色の文字例です。