2013年10月5日土曜日

開発環境

『初めてのプログラミング 第2版』(Chris Pine 著、長尾 高弘 訳、オライリー・ジャパン、2010年、ISBN978-4-87311-469-9)の 7章(フロー制御), 7.5(練習問題)、続・耳の遠いおばあちゃん、を解いてみる。

その他参考書籍

続・耳の遠いおばあちゃん

コード(BBEdit)

sample.rb

#!/usr/bin/env ruby2.0
#-*- coding: utf-8 -*-

counter = 0

while true
    said = gets.chomp
    if said == said.upcase
        if said == 'BYE'
            counter += 1
            if counter == 3
                break
            end
        else
            counter = 0
        end
        puts "NO, NOT SINCE #{1930 + rand(21)}!"
    else
        counter = 0
        puts 'HUH?! SPEAK UP, SONNY!'
    end
end
puts "BYE"

入出力結果(Terminal)

$ ./sample.rb
hi
HUH?! SPEAK UP, SONNY!
HI
NO, NOT SINCE 1945!
BYE
NO, NOT SINCE 1950!
BYE
NO, NOT SINCE 1936!
bye
HUH?! SPEAK UP, SONNY!
BYE
NO, NOT SINCE 1947!
BYE
NO, NOT SINCE 1938!
BYE
BYE
$

ちなみにpython3.3の場合。

コード(BBEdit)

sample.py

#!/usr/bin/env python3.3
#-*- coding: utf-8 -*-

import random

counter = 0
while True:
    said = input()
    if said == said.upper():
        if said == 'BYE':
            counter += 1
            if counter == 3:
                break
        else:
            counter = 0
        print('NO, NOT SINCE {}!'.format(random.randint(1930, 1950)))
    else:
        counter = 0
        print('HUH?! SPEAK UP, SONNY!')
print('BYE')

入出力結果(Terminal)

$ ./sample.py
hi
HUH?! SPEAK UP, SONNY!
HI
NO, NOT SINCE 1936!
BYE
NO, NOT SINCE 1943!
BYE
NO, NOT SINCE 1945!
bye
HUH?! SPEAK UP, SONNY!
BYE
NO, NOT SINCE 1938!
BYE
NO, NOT SINCE 1938!
BYE
BYE
$

0 コメント:

コメントを投稿