➢


    Ruby紹介-3




               5月何日か
                 gohryuh
➢
            コメントについて

    ➢コメントは#~行末で記述。
    実行に影響しない。
    例:print(”文”) #文を出力。
    ➢ 複数行コメントを書く場合は
    =begin
    文1
    文2
    =end
    で。これは埋め込みドキュメントと呼ばれる。
➢
            文字コードについて
    ➢   print(”日本語n”)と打って実行すると、文字
        コードが違うからだせねぇぜ。とエラーがでる。
    ➢   文字コードってのは文字を表示する規格のこと
    ➢   規格によって出せる文字が違う。
    ➢   「日本語」を出せるように文字コードを変換する
        には・・・一回下のを書いてみて。

    #! ruby -Ks
    print(“日本語¥n”)

    実行して「日本語」とでればOK。
➢
          文字コード指定の解説
    ➢  #! ruby -K[kcode]を先頭行に打てば文字コー
       ドが変えられる。
    ➢ #は本来コメントだが、先頭行でかつ、!がつい
       ていたらコマンドと認識する。
    文字コードにはいかのがある。
    $KCODEの値 文字コード
    -Ks          Shift_JIS
    -Ke          EUC-JP
    -Ku          UTF-8
    -Kn          ASCII
    今回は文字コードをShift_JISにしました。
    ちなみにコマプロ上で実行時に
    ruby -K[Kcode] 実行ファイル名.rbでもできる。
➢
        文の中に””とかnを書きたいとき
    ➢  文の中に””を書きたくても
    print(”こんにちは”犬”さん”)だけではエラーにな
       る。
    こんなときは記述したい文字の前にをつければ
       よい。つまりさっきの文では
    print(”こんにちは”犬”さん”)
    とうてばよい。またnを打ちたいときもnでOK。

    さらにprint('文')のときは' '内の文字列を全て出
       力する。
    print('全部出力n')→全部出力n
➢
        文字列を複数行書きたいとき

    ➢  文字列をプログラムに書く時点から複数行に
       渡って書きたいときには
    print <<”変数名”
    文
    変数名
➢
                     型変換

    ➢   だまって下のを書きな

    print("3.14".to_i,"n")
    print("3.14".to_f,"n")
    print("3.14".to_s,"n")
    print(”rrr3.14rrrr”.to_i,”n”)
➢
               解説

    ➢ to_iとかto_fとかは文字列をそれぞれ指定
      した型に変換するやつ。
    to_i・・・整数に変換(int型)
    to_f・・・浮動小数点数に変換(float型)
    to_s・・・文字列に変換(string型)
    (ruby1.7からto_i(数)で2~36進数での表示
      ができるらしい。)
    浮動小数点数は少数入りの数
➢
               値取得(キー入力)

    ➢次は値を入力できるようにする関数。
    以下のを書いてくださいな。

        a=gets()
        print(a)

    実行して文字を入力してエンターを押した後同じ
     文字が出力されればOK。
➢
             解説

    ➢ 変数=gets()
    で変数に入力した文字列を代入する。
    今回はaに入力した文字を代入してそれを出力す
      る。(STRING型)
    ➢ これはよく使う。
➢
                メソッド

    ➢ def メソッド名(引数1,引数2・・・)
        実行文
    end
    でメソッド定義 だったりする。
    使いたいときは
    メソッド名(引数1,引数2・・・)で。
➢
                   配列

    ➢   次は配列をやります。」配列とは、

    a[5] = [2006,2007,2008,2009,2010]#こんなの
    print(a[4])
    これを実行すると2010が出てくる。
    配列とは複数のデータの列挙。エクセルをイメー
       ジすればいいと思う。
    a[添え字]でその数の配列番号に入っている数を
       指定する。
    ➢ 配列の番号は1からではなく0からと言うことに
       注意。(つまりここの場合だとa[1]==2007)
    ➢ 何も入っていない要素を作るならnilで
➢
                        配列演習
       ➢じゃあ配列とついでにgets()の演習をやっても
        らいます。
       以下のを書いて

    c=gets()
    a=Array.new(c.to_i)
    for b in 0..(c.to_i) do
      a[b]=gets()
    end
    print(a[2])
    print(a.size)
➢
               解説

    ➢ 2行目・・・aの配列を新たに作る。1行目で入力
      したcの値がaの配列の要素数になる。配列の
      要素数だけを定義するときは
    配列名=Array.new(要素数) で。
    2,3行目で.to_iにするのはgets()で代入した文字
      はstring型だから数字として認識されない。
    なので数値型に変換する。
    ➢ 最後の行⇒a.sizeでその配列の要素数を出す。
    ➢ nilの要素を省いた数が知りたいならa.nitems
➢
                配列演習2

    ➢   配列の演習。下の書いて。


    a=[2010,2011,2012],[1,2,3]
    print(a[1][1],"n")
➢
                  解説

    ➢   複数の配列をひとつの変数に入れると多次元
        配列となる。配列の個数によって2次元、三次
        元となる。
    ➢   二次元配列のイメージはエクセルでいいと思う
    ➢   添え字(インデックス)はたての列から指定
    ➢


           2010   2011     2012
              1        2      3
➢
                      配列演習3

       ➢   以下のを書いて

    a=[1,2,3,4,5]
    b=[1,3,5,7]
    print(a-b,"n")
    print(a+b,"n")
    print(a&b,"n")
    print(a|b,"n")
➢
                解説

    ➢   実行結果からそれぞれどんな性質を持ってい
        るか予測しといて。和集合とかの概念だから数
        Aの集合のところを読んでおいたら集合の勉強
        にもなるし一石二鳥カモシレナイ。

Ruby紹介3(pdf)

  • 1.
    Ruby紹介-3 5月何日か gohryuh
  • 2.
    コメントについて ➢コメントは#~行末で記述。 実行に影響しない。 例:print(”文”) #文を出力。 ➢ 複数行コメントを書く場合は =begin 文1 文2 =end で。これは埋め込みドキュメントと呼ばれる。
  • 3.
    文字コードについて ➢ print(”日本語n”)と打って実行すると、文字 コードが違うからだせねぇぜ。とエラーがでる。 ➢ 文字コードってのは文字を表示する規格のこと ➢ 規格によって出せる文字が違う。 ➢ 「日本語」を出せるように文字コードを変換する には・・・一回下のを書いてみて。 #! ruby -Ks print(“日本語¥n”) 実行して「日本語」とでればOK。
  • 4.
    文字コード指定の解説 ➢ #! ruby -K[kcode]を先頭行に打てば文字コー ドが変えられる。 ➢ #は本来コメントだが、先頭行でかつ、!がつい ていたらコマンドと認識する。 文字コードにはいかのがある。 $KCODEの値 文字コード -Ks Shift_JIS -Ke EUC-JP -Ku UTF-8 -Kn ASCII 今回は文字コードをShift_JISにしました。 ちなみにコマプロ上で実行時に ruby -K[Kcode] 実行ファイル名.rbでもできる。
  • 5.
    文の中に””とかnを書きたいとき ➢ 文の中に””を書きたくても print(”こんにちは”犬”さん”)だけではエラーにな る。 こんなときは記述したい文字の前にをつければ よい。つまりさっきの文では print(”こんにちは”犬”さん”) とうてばよい。またnを打ちたいときもnでOK。 さらにprint('文')のときは' '内の文字列を全て出 力する。 print('全部出力n')→全部出力n
  • 6.
    文字列を複数行書きたいとき ➢ 文字列をプログラムに書く時点から複数行に 渡って書きたいときには print <<”変数名” 文 変数名
  • 7.
    型変換 ➢ だまって下のを書きな print("3.14".to_i,"n") print("3.14".to_f,"n") print("3.14".to_s,"n") print(”rrr3.14rrrr”.to_i,”n”)
  • 8.
    解説 ➢ to_iとかto_fとかは文字列をそれぞれ指定 した型に変換するやつ。 to_i・・・整数に変換(int型) to_f・・・浮動小数点数に変換(float型) to_s・・・文字列に変換(string型) (ruby1.7からto_i(数)で2~36進数での表示 ができるらしい。) 浮動小数点数は少数入りの数
  • 9.
    値取得(キー入力) ➢次は値を入力できるようにする関数。 以下のを書いてくださいな。 a=gets() print(a) 実行して文字を入力してエンターを押した後同じ 文字が出力されればOK。
  • 10.
    解説 ➢ 変数=gets() で変数に入力した文字列を代入する。 今回はaに入力した文字を代入してそれを出力す る。(STRING型) ➢ これはよく使う。
  • 11.
    メソッド ➢ def メソッド名(引数1,引数2・・・)     実行文 end でメソッド定義 だったりする。 使いたいときは メソッド名(引数1,引数2・・・)で。
  • 12.
    配列 ➢ 次は配列をやります。」配列とは、 a[5] = [2006,2007,2008,2009,2010]#こんなの print(a[4]) これを実行すると2010が出てくる。 配列とは複数のデータの列挙。エクセルをイメー ジすればいいと思う。 a[添え字]でその数の配列番号に入っている数を 指定する。 ➢ 配列の番号は1からではなく0からと言うことに 注意。(つまりここの場合だとa[1]==2007) ➢ 何も入っていない要素を作るならnilで
  • 13.
    配列演習 ➢じゃあ配列とついでにgets()の演習をやっても らいます。 以下のを書いて c=gets() a=Array.new(c.to_i) for b in 0..(c.to_i) do a[b]=gets() end print(a[2]) print(a.size)
  • 14.
    解説 ➢ 2行目・・・aの配列を新たに作る。1行目で入力 したcの値がaの配列の要素数になる。配列の 要素数だけを定義するときは 配列名=Array.new(要素数) で。 2,3行目で.to_iにするのはgets()で代入した文字 はstring型だから数字として認識されない。 なので数値型に変換する。 ➢ 最後の行⇒a.sizeでその配列の要素数を出す。 ➢ nilの要素を省いた数が知りたいならa.nitems
  • 15.
    配列演習2 ➢ 配列の演習。下の書いて。 a=[2010,2011,2012],[1,2,3] print(a[1][1],"n")
  • 16.
    解説 ➢ 複数の配列をひとつの変数に入れると多次元 配列となる。配列の個数によって2次元、三次 元となる。 ➢ 二次元配列のイメージはエクセルでいいと思う ➢ 添え字(インデックス)はたての列から指定 ➢ 2010 2011 2012 1 2 3
  • 17.
    配列演習3 ➢ 以下のを書いて a=[1,2,3,4,5] b=[1,3,5,7] print(a-b,"n") print(a+b,"n") print(a&b,"n") print(a|b,"n")
  • 18.
    解説 ➢ 実行結果からそれぞれどんな性質を持ってい るか予測しといて。和集合とかの概念だから数 Aの集合のところを読んでおいたら集合の勉強 にもなるし一石二鳥カモシレナイ。