hrkt0115311の、迷えるプログラミング教室  RSSを登録する

プログラミングに興味はありますか? 素人が入門書片手にソースコード書いたりcgi作ったり、迷子になったりするメルマガです。広大なプログラミングの森で、一緒に迷子を楽しんでみませんか?

最新号をメルマガでお届けします    
登録 解除

規約に同意して

登録した方には、まぐまぐの公式メルマガ(無料)をお届けします。
2008/08/20

「hrkt0115311の、教えて習うRuby教室。」Vol.63 ~やたらQEDを連呼したがるジェネレーターの巻~

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

              〜 Ruby始めました 〜
                                             
                 「hrkt0115311の、教えて習うRuby教室。」Vol.63

━━━━━━━━━━━やたらQEDを連呼したがるジェネレーターの巻

おはようございます。hrkt0115311です。毎回メルマガを読んでいただきありがとう
ございます! LDRでRSSを登録して下さっている方もありがとうございます。
バックナンバーをご覧下さっている方にも感謝します。励みになります!
http://reader.livedoor.com/about/http://archive.mag2.com/0000267290/rss10.xml
新たにご登録下さった方、はじめまして。どうぞよろしくお願いします。

暑い日が続きますねー。皆さん、夏ばてされていませんか? 先日、関東には雨が
降りました。雨が降っている間は湿度があって蒸し暑いのですが、雨上がりの町は
ひんやりして秋の気配がしました。もうしばらくすると、秋がやってきますね。
そういえば、とんぼも目にするようになりました。

それでは本日のメルマガ始めます。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

○目次
・ やたらQEDを連呼したがるジェネレーター(出力結果)
・ やたらQEDを連呼したがるジェネレーター(解説)
・ やたらQEDを連呼したがるジェネレーター(スクリプト)
・ 編集後記

━━━━━━━━━━━━━━━━━━━━━━━━━━━免責事項

 ソースコードは、発行者が実際に動かし、構文チェックなどもしていますが
 ご利用になられて万一損害が生じた場合、保証することができません。
 ご利用になられる際は、ご自身でご確認になられた上で、お試し下さい。

━━━━━━━━━━━━━━━━━━━━Rubyの導入方法について

 OSは何をお使いですか? LinuxでもMacOSでもWindowsでも、Rubyの
 公式ページでインストール方法が説明されています。

 ○Ruby Install Guide
 http://preview.tinyurl.com/4ghc3o

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

○やたらQEDを連呼したがるジェネレーター(出力結果)

$ ruby color_x_color.rb

 問題を整理しよう。すべて ターコイズブルー であるとする。

 ならば、 三 は 三 でなければなるまい。
 見よ、ヌコもうなずいている。

 ゆえに 三 は ターコイズブルー である。 QED


 問題を整理しよう。すべて バーントシェンナ であるとする。

 ならば、 びゃくろく は 六 でなければなるまい。
 見よ、羊もうなずいている。

 ゆえに びゃくろく は バーントシェンナ である。 QED


 問題を整理しよう。すべて 一 であるとする。

 ならば、 ビリヤードグリーン は こだいむらさき でなければなるまい。
 見よ、蛇もうなずいている。

 ゆえに ビリヤードグリーン は 一 である。 QED


$ ruby color_x_color.rb

 問題を整理しよう。すべて 二 であるとする。

 ならば、 オリーブ は 六 でなければなるまい。
 見よ、蛇もうなずいている。

 ゆえに オリーブ は 二 である。 QED


 問題を整理しよう。すべて 八 であるとする。

 ならば、 みるいろ は ちとせみどり でなければなるまい。
 見よ、ヌコもうなずいている。

 ゆえに みるいろ は 八 である。 QED


 問題を整理しよう。すべて 五 であるとする。

 ならば、 ベビーピンク は 一 でなければなるまい。
 見よ、羊もうなずいている。

 ゆえに ベビーピンク は 五 である。 QED

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

○やたらQEDを連呼したがるジェネレーター(解説)

テンプレートとか改変ネタっておもしろいなと思いまして、理屈っぽい
ひな形に、ランダムに言葉を流し込んで、奇妙な文章を出力してみようと
書いたスクリプトです。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

○やたらQEDを連呼したがるジェネレーター(スクリプト)

=begin
1.三段論法風テンプレで不思議な文章を出力するジェネレータ
2.具は色名と漢数字で挑戦

○色の名前一覧(名前順) - IROMSOFT
 http://www.hm.h555.net/~irom/g_about/color_02b.htm
 色リストは上記サイトのデータを利用させていただきました。
 お礼申し上げます。

=end

require "jcode"
$KCODE = "UTF-8"

class Color_x_color
  def initialize
    @a1 = 0
    @a2 = 0
    @a3 = 0
  end
  def c
a = ["アイアンブルー","あいいろ","あいねず","アイビーグリーン","アイボリー",
"あお","あおたけいろ","あおみどり","あおむらさき","あか","あかさびいろ",
"あかだいだい","あかねいろ","あかむらさき","あさぎいろ","あずきいろ",
"アッシュグレイ","アップルグリーン","アプリコット","あやめいろ",
"あんずいろ","アンバー","イエロー","イエローオーカー","ウイスタリア",
"うぐいすいろ","うぐいすちゃ","うこんいろ","うすくれない","うるみしゅ",
"エクルベイジュ","えどむらさき","えびちゃ","エメラルドグリーン","えんじ",
"えんたんいろ","おうどいろ","おうに","オーキッド","オールドローズ",
"オリーブ","オリーブグリーン","オリーブドラブ","オリエンタルブルー",
"オレンジ","カーキー","カーマイン","かきいろ","かきつばたいろ",
"かちいろ","かっしょく","カナリヤ","かばいろ","かめのぞき",
"からくれない","からしいろ","かりやすいろ","きあか","きいろ",
"ききょういろ","きちゃ","きなりいろ","きはだいろ","きみどり",
"キャロットオレンジ","きんあか","ぎんしゅ","きんちゃ","ぎんねず",
"くさいろ","くちばいろ","グラスグリーン","クリームイエロー",
"くりいろ","グリーン","グレイ","くろ","くろちゃ","クロムイエロー",
"ぐんじょういろ","こいあい","こうじいろ","こうばいいろ",
"コーラルレッド","ゴールデンイエロー","こけいろ","こげちゃいろ",
"ココアブラウン","こだいむらさき","コチニールレッド","こはくいろ",
"コバルトグリーン","コバルトブルー","ごふんいろ","こむぎいろ","コルク",
"こんあい","こんいろ","こんじょう","サーモンピンク","さくらいろ",
"サックスブルー","さびあさぎ","さびいろ","さんごいろ","シアン",
"シーグリーン","シェルピンク","シグナルレッド","しこん",
"シャトルーズグリーン","しゅいろ","しょうじょうひ","しょうぶいろ",
"ジョンブリアン","シルバーグレイ","しろ","しんく","しんばしいろ",
"すおう","スカーレット","スカイグレイ","スカイブルー","すすたけいろ",
"スチールグレイ","ストロベリー","すないろ","スノーホワイト","すみ",
"すみれいろ","スレートグレイ","せいじいろ","セピア","セルリアンブルー",
"ぞうげいろ","そらいろ","ターコイズブルー","たいしゃ","だいだいいろ",
"たまごいろ","タン","たんぽぽいろ","チェリーピンク","ちとせみどり",
"チャイニーズレッド","ちゃいろ","チャコールグレイ","ちゃねずみ",
"ちゅうき","チョコレート","つちいろ","つつじいろ","つゆくさいろ",
"てついろ","てつぐろ","てつこん","テラコッタ","ときいろ","ときわいろ",
"とびいろ","トマトレッド","ナイルブルー","なすこん","なまりいろ",
"なんどいろ","にっけいいろ","ネービーブルー","ネープルスイエロー",
"ネールピンク","ねずみいろ","バーガンディー","パープル","バーミリオン",
"パールグレイ","バーントアンバー","バーントシェンナ","はいいろ",
"バイオレット","はいちゃ","はだいろ","はとばいろ","はなだいろ","バフ",
"ばらいろ","パンジー","ピーコックグリーン","ピーコックブルー",
"ピーチ","ひまわりいろ","びゃくぐん","びゃくろく","ヒヤシンス",
"ビリジアン","ビリヤードグリーン","ひわいろ","ひわだいろ","ピンク",
"フォレストグリーン","ふかみどり","ふじいろ","ふじなんど","ふじむらさき",
"ブラウン","ブラック","ブルー","プルシャンブルー","ブロンズ","ブロンド",
"ベージュ","べにあか","べにいろ","べにえびちゃ","べにかばいろ",
"べにひ","ベビーピンク","ベビーブルー","ヘリオトロープ","べんがらいろ",
"ぼたんいろ","ボトルグリーン","ポピーレッド","ホリゾンブルー","ボルドー",
"ホワイト","マゼンタ","まっちゃいろ","まつばいろ","マラカイトグリーン",
"マリーゴールド","マリンブルー","マルーン","マンダリンオレンジ",
"みかんいろ","みずあさぎ","みずいろ","ミッドナイトブルー","みどり",
"みるいろ","ミントグリーン","むらさき","もえぎ","もえぎいろ","モーブ",
"ももいろ","やまぶきいろ","ライラック","らくだいろ","ラベンダー",
"ランプブラック","リーフグリーン","りきゅうねずみ","ルビーレッド",
"るりいろ","るりこん","レグホーン","レッド","レモンイエロー",
"れんがいろ","ローアンバー","ローシェンナ","ローズ","ローズグレイ",
"ローズピンク","ローズレッド","ろくしょういろ","ワインレッド",
"わかくさいろ","わかたけいろ","わかばいろ","わすれなぐさいろ"]

b = ["一","二","三","四","五","六","七","八","九","十"]

c =["ネズミ","牛","虎","ウサギ","ドラゴン",
    "蛇","馬","羊","猿","バード","犬","猪",]

  ra = #配列a用乱数
  rb = #配列b用乱数

  r3 =[]
  max_num = 4
  max_num.times do
    r3 << rand(2)
  end

  #if修飾子で、変数に入れる配列の要素を調節する
  @a1 = a[rand(a.size)] if r3[0] == 0
  @a2 = b[rand(b.size)] if r3[1] == 0
  @a3 = a[rand(a.size)] if r3[2] == 0
  @a1 = b[rand(b.size)] if r3[0] == 1
  @a2 = a[rand(a.size)] if r3[1] == 1
  @a3 = b[rand(b.size)] if r3[2] == 1
  @b  = "ヌコ"          if r3[3] == 0 #1/2でヌコ
  @b  = c[rand(c.size)] if r3[3] == 1 #1/2で干支
end
def p
puts <<E

 問題を整理しよう。すべて #{@a1} であるとする。

 ならば、 #{@a2} は #{@a3} でなければなるまい。
 見よ、#{@b}もうなずいている。

 ゆえに #{@a2} は #{@a1} である。 QED

E
end
end

#実行部分//大事なことなので三回出力しました(え

a = Color_x_color.new
a.c
a.p

b = Color_x_color.new
b.c
b.p

c = Color_x_color.new
c.c
c.p

■ 編集後記
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

「hrkt0115311の、教えて習うRuby教室。」を最後までお読みいただき
ありがとうございます。いかがでしたか?

組み合わせで、偶然ネガティブな文章が生成されてもいやなので、
色名と漢数字の組み合わせにしました。

説明不足・分かりにくい点・私の理解の誤りなど、お気づきになられた点があれば、
お気軽にご意見・ご感想をお寄せ下さい。 enjoy.ruby@gmail.com にて、
メルマガ読者の皆さまからのフィードバックをお待ちしています。

それではまた、次号でお会いしましょう。

■ いただいた反響について
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

「こんな仕組み作れないかな」とか「説明不足で分からないよ」といった
ご指摘をお寄せいただけると嬉しいです。みなさまの声で、メルマガを
育てていただければ嬉しいです。また、メルマガで、頂戴したメールの
一部を紹介させていただく可能性があります。差し支えがある場合は
「発行者のhtkt0115311に読んで欲しいだけで、メルマガには掲載しないで」
とお書きいただければ幸いです。

■ 転送や再配布について
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

 blogなどでご紹介いただく際は、 http://www.mag2.com/m/0000267290.html
 などを並記していただき、私の書いた文章であることが分かる形に
 していただけると幸いです。またメルマガの転送については、転送者さんと
 転送したメルマガを受け取られた方が迷惑でない範囲であれば歓迎します。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 メールマガジン「hrkt0115311の、教えて習うRuby教室。」

 ○発行者     htkt0115311
 ○発行システム  『まぐまぐ!』 http://www.mag2.com/
 ○配信中止はこちら http://www.mag2.com/m/0000267290.html
 ○公式サイト    http://enjoy-programming.g.hatena.ne.jp/hrkt0115311/
 ○日記       http://d.hatena.ne.jp/hrkt0115311/
 ○Twitter     https://twitter.com/hrkt0115311
 ○お問い合わせ   enjoy.ruby@gmail.com

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
最新号をメルマガでお届け
登録 解除

規約に同意して

登録した方には、まぐまぐの公式メルマガ(無料)をお届けします。

最近の記事

上へ戻る