開発環境
- OS X Lion - Apple(OS)
- BBEdit - Bare Bones Software, Inc., Emacs(Text Editor)
- プログラミング言語: Perl
『初めてのPerl 第6版』(Randal L. Schwartz, Tom Phoenix, brian d foy 共著、近藤 嘉雪 訳、オライリー・ジャパン、2012年、ISBN978-4-87311-567-2)の10章(さまざまな制御構造)の10.11(練習問題)2を解いてみる。
その他参考書籍
2.
コード(BBEdit)
sample.pl
#!/usr/bin/env perl use strict; use warnings; use 5.016; use utf8; binmode STDOUT, ':utf8'; binmode STDIN, ':utf8'; my $DEBUG = $ENV{DEBUG} // 1; my $secret_num = int(1 + rand 100); print "秘密の数: $secret_num\n" if $DEBUG; print "1から100までの秘密の数当てゲーム\n"; while (1) { chomp(my $num = <STDIN>); last if $num =~ /^(quit|exit)$/; if ($num =~/\D/) { print "数値を入力してください\n"; } elsif ($num > $secret_num) { print "Too high\n"; } elsif ($num < $secret_num) { print "Too low\n"; } else { print "正解!\n"; last } }
入出力結果(Terminal)
$ ./sample.pl 秘密の数: 4 1から100までの秘密の数当てゲーム 4 正解! $
sample.pl
#!/usr/bin/env perl use strict; use warnings; use 5.016; use utf8; binmode STDOUT, ':utf8'; binmode STDIN, ':utf8'; $ENV{DEBUG} = 0; my $DEBUG = $ENV{DEBUG} // 1; my $secret_num = int(1 + rand 100); print "秘密の数: $secret_num\n" if $DEBUG; print "1から100までの秘密の数当てゲーム\n"; while (1) { chomp(my $num = <STDIN>); last if $num =~ /^(quit|exit)$/; if ($num =~/\D/) { print "数値を入力してください\n"; } elsif ($num > $secret_num) { print "Too high\n"; } elsif ($num < $secret_num) { print "Too low\n"; } else { print "正解!\n"; last } }
入出力結果(Terminal)
$ ./sample.pl 1から100までの秘密の数当てゲーム 50 Too high 24 Too low 37 Too high 30 Too low 33 Too high 31 正解! $
ちなみにpython3.3の場合。
コード(BBEdit)
sample.py
#!/usr/bin/env python3.3 ## Copyright (C) 2013 by kamimura #-*- coding: utf-8 -*- import random, re, os env = dict(os.environ) if not "DEBUG" in env: env["DEBUG"] = 1 secret_n = random.randint(1, 100) if env['DEBUG']: print("秘密の数: {0}".format(secret_n)) print("秘密の数当てゲーム") while True: num = input("数値を入力: ") if re.match(r"(quit|exit)", num): break if re.search(r"\D", num): print("数値を入力してください") continue num = int(num) if num > secret_n: print("Too high") elif num < secret_n: print("Too low") else: print("正解!") break
入出力結果(Terminal)
$ ./sample.py 秘密の数: 16 秘密の数当てゲーム 数値を入力: 16 正解! $
sample.py
#!/usr/bin/env python3.3 ## Copyright (C) 2013 by kamimura #-*- coding: utf-8 -*- import random, re, os env = dict(os.environ) env['DEBUG'] = 0 if not "DEBUG" in env: env["DEBUG"] = 1 secret_n = random.randint(1, 100) if env['DEBUG']: print("秘密の数: {0}".format(secret_n)) print("秘密の数当てゲーム") while True: num = input("数値を入力: ") if re.match(r"(quit|exit)", num): break if re.search(r"\D", num): print("数値を入力してください") continue num = int(num) if num > secret_n: print("Too high") elif num < secret_n: print("Too low") else: print("正解!") break
入出力結果(Terminal)
$ ./sample.py 秘密の数当てゲーム 数値を入力: 50 Too low 数値を入力: 75 Too high 数値を入力: 62 Too high 数値を入力: 56 Too low 数値を入力: 59 正解! $
0 コメント:
コメントを投稿