開発環境
- OS X Lion - Apple(OS)
- Emacs、BBEdit - Bare Bones Software, Inc. (Text Editor)
- Ruby (プログラミング言語)
『初めてのプログラミング 第2版』(Chris Pine 著、長尾 高弘 訳、オライリー・ジャパン、2010年、ISBN978-4-87311-469-9)の 9章(自作メソッドの書き方), 9.5(練習問題)、askメソッドの改良、を解いてみる。
その他参考書籍
- 『プログラミング言語 Ruby』David Flanagan, まつもと ゆきひろ 著 、卜部 昌平 監訳、長尾 高弘 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-394-4)
- Rubyクックブック ―エキスパートのための応用レシピ集
askメソッドの改良
コード(BBEdit)
sample.rb
#!/usr/bin/env ruby2.0 #-*- coding: utf-8 -*- def ask question while true puts question reply = gets.chomp.downcase return true if reply == 'はい' return false if reply == 'いいえ' puts '「はい」または「いいえ」でお答え下さい。' end end puts 'こんにちは。お忙しいところ……' puts ask 'タコスはお好きですか?' ask 'ブリトーはお好きですか?' wets_bed = ask 'お漏らししますか?' ask 'チミチャンガはお好きですか?' ask 'ソパピアはお好きですか?' puts 'あと少しです・・・・・・' ask 'オルチャータは好きですか?' ask 'フラウタスは好きですか?' puts puts 'デブリーフィング:' puts 'この実験のために……' puts puts wets_bed
入出力結果(Terminal)
$ ./sample.rb こんにちは。お忙しいところ…… タコスはお好きですか? はい ブリトーはお好きですか? はい お漏らししますか? まさか 「はい」または「いいえ」でお答え下さい。 お漏らししますか? いいえ チミチャンガはお好きですか? はい ソパピアはお好きですか? はい あと少しです・・・・・・ オルチャータは好きですか? はい フラウタスは好きですか? はい デブリーフィング: この実験のために…… false $
ちなみにpython3.3の場合。
コード(BBEdit)
sample.py
#!/usr/bin/env python3.3 #-*- coding: utf-8 -*- def ask(question): while True: print(question) reply = input().strip() if reply == 'はい': return True if reply == 'いいえ': return False print('「はい」または「いいえ」でお答え下さい。') print('こんにちは。お忙しいところ……') print() ask('タコスはお好きですか?') ask('ブリトーはお好きですか?') wets_bed = ask('お漏らししますか?') ask('チミチャンガはお好きですか?') ask('ソパピアはお好きですか?') print('あと少しです・・・・・・') ask('オルチャータは好きですか?') ask('フラウタスは好きですか?') print() print('デブリーフィング:') print('この実験のために……') print() print(wets_bed)
入出力結果(Terminal)
$ ./sample.py こんにちは。お忙しいところ…… タコスはお好きですか? はい ブリトーはお好きですか? はい お漏らししますか? まさか 「はい」または「いいえ」でお答え下さい。 お漏らししますか? いいえ チミチャンガはお好きですか? はい ソパピアはお好きですか? はい あと少しです・・・・・・ オルチャータは好きですか? はい フラウタスは好きですか? はい デブリーフィング: この実験のために…… False $
0 コメント:
コメントを投稿