HYPER MIKAN BOX
検索
最近の変更
メディアマネージャー
サイトマップ
文書の表示
以前のリビジョン
バックリンク
ログイン
トレース:
この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。
====== 数当てゲーム (CLI) ====== ===== game.cr ===== <file crystal> MAX_GUESSES = 10 def play_game the_number = rand(1..100) guesses = 0 success = false last_guess = 0 while !success && guesses < MAX_GUESSES guess = read_number guesses += 1 if guess == the_number success = true else large_or_small = guess > the_number ? "too large" : "too small" print "#{large_or_small} (#{guesses}/#{MAX_GUESSES}). " if last_guess > 1 puts "last guess: #{last_guess}" else puts end last_guess = guess end end if success puts "Conguratulations!" else puts "I'm sorry, but you are not an esper." end end def read_number print "guess? " while true r = read_line if r.to_i? break end puts "#{r} is not a number, try again." print "guess? " end r.to_i end def ask_play_again print "play again [y/N]? " read_line.upcase.starts_with? "Y" end play_game while ask_play_again play_game end </file> ===== Makefile ===== <file makefile> .PHONY: all all: game game: game.cr crystal build $< -o $@ </file>
文書の先頭へ