2012年11月20日火曜日

開発環境

『初めてのJavaScript 第2版』(シェリー・パワーズ著(Shelley Powers著)、武舎 広幸+武舎 るみ訳、オライリー・ジャパン、2009年、ISBN978-4-84312-225-5) の5章(JavaScriptの関数)練習問第5-2を解いてみる。

その他参考書籍

5-2.

コード(TextWrangler)

function convert_number_to_wago(a){
  for(var i = 0; i < a.length; i++){
    if(/^([1-9]|10)$/.test(a[i].trim())) a[i] = parseInt(a[i]);
    switch(a[i]){
      case 1: a[i] = "ひとつ"; break;
      case 2: a[i] = "ふたつ"; break;
      case 3: a[i] = "みっつ"; break;
      case 4: a[i] = "よっつ"; break;
      case 5: a[i] = "いつつ"; break;
      case 6: a[i] = "むっつ"; break;
      case 7: a[i] = "ななつ"; break;
      case 8: a[i] = "やっつ"; break;
      case 9: a[i] = "ここのつ"; break;
      case 10: a[i] = "とお"; break;
      default: a[i] = "1から10までの整数ではない";
    }
  }
  return a;
}
var a = $('#t0').val().split(/,|, /);
convert_number_to_wago(a);
$('#pre0').text(a);




ちなみにPython3kの場合。

コード(TextWrangler)

sample.py

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

d = {1:"ひとつ", 2:"ふたつ", 3:"みっつ", 4:"よっつ", 5:"いつつ", 
  6:"むっつ", 7:"ななつ", 8:"やっつ", 9:"ここのつ", 10:"とお"}

def convert_number_to_wago(a):
    keys = d.keys()
    result = []
    for x in a:
        if x in keys:
            result.append(d[x])
        else:
            result.append("1から10までの整数ではない")
    return result

a1 = [3, 5, 1]
a2 = [x for x in range(12)] + ["python"]
for a in [a1, a2]:
    print("リスト: {0}\n和語に変換: {1}".
      format(a, convert_number_to_wago(a)))

入出力結果(Terminal)

$ ./sample.py
リスト: [3, 5, 1]
和語に変換: ['みっつ', 'いつつ', 'ひとつ']
リスト: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 'python']
和語に変換: ['1から10までの整数ではない', 'ひとつ', 'ふたつ', 'みっつ', 'よっつ', 'いつつ', 'むっつ', 'ななつ', 'やっつ', 'ここのつ', 'とお', '1から10までの整数ではない', '1から10までの整数ではない']
$

0 コメント:

コメントを投稿