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


Rubyの学習 free161
偽の時の実行式(式が簡潔)

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

偽なので表示されない _sadaPref = Hioshima 広島
偽なので表示されない _sadaNum = 20130911

真の時に実行1/6 変数はアンダーバー by 定近 Hioshima 広島
真の時に実行2/6 変数はアンダーバー by 定近 Hioshima 広島
真の時に実行3/6 変数はアンダーバー by 定近 20130911

真の時に実行4/6 変数はアンダーバー by 定近 0
真の時に実行5/6 変数はアンダーバー by 定近 ON
真の時に実行6/6 変数はアンダーバー by 定近 出力をオン


Wednesday,September,11,2013

プログラムの表示

=begin Friday,September,6,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-9.rb そして保存したファイル名を打ち込む。 =end =begin 真の時に実行する式 if 条件式 偽の時に実行する式 unless 条件式 if 条件式 then 真の時に実行する式 end =end #コメントテスト、ファイル名test_sada8-9テキスト #--------------------------------------------------- #! ruby -Ku require "kconv" #変数にアンダーバーを付けた。 #論理値のテストだから変数(名札)に「nil」以外のオブジェクトを格納すればTRUEを返し、それ以外はFALSEを返す #「nil」は、オブジェクトに値が何もない場合である。(オブジェクトはクラス内のメソットで処理された値が入出力されている) #したがって条件式の変数に「nil」を入れてしまうと偽になりプログラムは実行されない。 #エラーが表示されてしまい、おかしいおかしいと思ってたらif文のようにエンドを後ろに付けてしまっていたよ #プリントとカッコの間に半角スペースを空けるとエラーがでる、いがいだな #ルビーではゼロは偽FALSEではなく真TRUEである。 _sadaNum = 20130911 _sadaPref = "Hioshima 広島" _sadaDebug = nil print(Kconv.tosjis("偽なので表示されない _sadaPref = "), _sadaPref, Kconv.tosjis("\n")) if _sadaDebug #注意ゼロだとTRUEを返すようである _sadaDebug = nil print(Kconv.tosjis("偽なので表示されない _sadaNum = "), _sadaNum, Kconv.tosjis("\n")) if _sadaDebug #同じ文をシングル、ダブルクオーテーションで囲み文字列に変更してみる _sadaDebug = 'nil' print(Kconv.tosjis("偽なので表示されない _sadaPref = "), _sadaPref, Kconv.tosjis("\n")) if _sadaDebug #注意ゼロだとTRUEを返すようである _sadaDebug = "nil" print(Kconv.tosjis("偽なので表示されない _sadaNum = "), _sadaNum, Kconv.tosjis("\n")) if _sadaDebug print("\n") #偽FALSEの時に真TRUEにするために「if」を「unless」に変更した _sadaDebug = nil print(Kconv.tosjis("真の時に実行1/6 変数はアンダーバー by 定近 _sadaPref = "), _sadaPref, Kconv.tosjis("\n")) unless _sadaDebug #注意ゼロだとTRUEを返すので、「unless」がFALSEを返してきてしまいプリントできない。 _sadaDebug = 0 print(Kconv.tosjis("偽なので表示されない _sadaNum = "), _sadaNum, Kconv.tosjis("\n")) unless _sadaDebug _sadaDebug = "ON" print(Kconv.tosjis("真の時に実行2/6 変数はアンダーバー by 定近 _sadaPref = "), _sadaPref, Kconv.tosjis("\n")) if _sadaDebug _sadaDebug = "出力をオン" print(Kconv.tosjis("真の時に実行3/6 変数はアンダーバー by 定近 _sadaNum = "), _sadaNum, Kconv.tosjis("\n")) if _sadaDebug #----------------------------- print("\n") _sadaDebug = nil if _sadaDebug then print(Kconv.tosjis("偽なので表示されない _sadaDebug = "), _sadaDebug, Kconv.tosjis("\n")) end #注意ゼロだとTRUEを返すのでプリントが実行されるため表示してしまう _sadaDebug = 0 if _sadaDebug then print(Kconv.tosjis("真の時に実行4/6 変数はアンダーバー by 定近 _sadaDebug = "), _sadaDebug, Kconv.tosjis("\n")) end _sadaDebug = "ON" if _sadaDebug then print(Kconv.tosjis("真の時に実行5/6 変数はアンダーバー by 定近 _sadaDebug = "), _sadaDebug, Kconv.tosjis("\n")) end _sadaDebug = "出力をオン" if _sadaDebug then print(Kconv.tosjis("真の時に実行6/6 変数はアンダーバー by 定近 _sadaDebug = "), _sadaDebug, Kconv.tosjis("\n")) end


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

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

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