2013年2月23日土曜日

開発環境

『初めてのPerl 第6版』(Randal L. Schwartz, Tom Phoenix, brian d foy 共著、近藤 嘉雪 訳、オライリー・ジャパン、2012年、ISBN978-4-87311-567-2)の3章(リストと配列)、3.11(練習問題)2を解いてみる。

その他参考書籍

2.

コード(BBEdit)

sample.pl

#!/usr/bin/env perl
use strict;
use warnings;
use utf8;
use 5.016;
binmode STDOUT, ':utf8';
binmode STDIN, ':utf8';

my @names = qw(fred betty barney dino wilma pebbles bamm-bamm);
chomp(my @indexes = <STDIN>);
for (@indexes) {
    print "$names[$_ - 1]\n";
}

入出力結果(Terminal)

$ ./sample.pl
1
2
4
2
fred
betty
dino
betty
$

ちなみにJavaScriptの場合。

コード(BBEdit)

var names = ["fred", "betty", "barney", "dino", "wilma", "pebbles", "bamm-bamm"],
    indexes = [],
    result = "",
    i, max;
while( true ) {
    i = prompt("番号を入力(空白で終了)", "");
    if ( /^\s*$/.test(i) ) {
        break;
    }
    indexes.push(parseInt( i, 10 ));
}
for (i = 0, max = indexes.length; i < max; i += 1) {
    result += names[ indexes[i] - 1 ] + "\n";
}
$('#pre0').text(result);


pythonの場合。

コード(BBEdit)

sample.py

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

import re

names = ["fred", "betty", "barney", "dino", "wilma", "pebbles", "bamm-bamm"]
indexes = []
while True:
    i = input("晩業を入力: ")
    if re.search(r"^\s*$", i):
        break
    indexes.append(int(i))
for i in indexes:
    print(names[i - 1])

入出力結果(Terminal)

$ ./sample.py
晩業を入力: 1
晩業を入力: 2
晩業を入力: 4
晩業を入力: 2
晩業を入力: 
fred
betty
dino
betty
$

0 コメント:

コメントを投稿