2013年1月8日火曜日

開発環境

『初めてのC# 第2版』(Jesse Liberty+Brian MacDonald著、日向俊二訳、オライリー・ジャパン、2006年、ISBN978-487311-294-7)の 第10章(配列)10.9(練習問題)練習10-3を解いてみる。

その他参考書籍

練習10-3.

コード

using System;

class Dog
{
    private int weight;
    private string name;
    public Dog(int weight, string name)
    {
        this.weight = weight;
        this.name = name;
    }
    public int Weight
    {
        get { return weight; }
        set { weight = value; }
    }
    public string Name
    {
        get { return name; }
        set { name = value; }
    }
}
class Tester
{
    public void Run()
    {
        Dog milo = new Dog(26, "Milo");
        Dog frisky = new Dog(10, "Frisky");
        Dog laika = new Dog(50, "Laika");
        Dog[] dogs = { milo, frisky, laika };
        string[][] awards = new string[dogs.Length][];
        awards[0] = new string[3];
        awards[1] = new string[1];
        awards[2] = new string[2];
        awards[0][0] = "award1";
        awards[0][1] = "award2";
        awards[0][2] = "award3";
        awards[1][0] = "award4";
        awards[2][0] = "award5";
        awards[2][1] = "award6";
        for (int i = 0; i < dogs.Length; i++)
        {
            Console.WriteLine("Name:{0}, Weight:{1}", dogs[i].Name, dogs[i].Weight);
            foreach (string award in awards[i])
            {
                Console.Write("{0} ", award);
            }
            Console.WriteLine();
        }
    }
    static void Main()
    {
        Tester t = new Tester();
        t.Run();
    }
}

入出力結果(Console Window)

Name:Milo, Weight:26
award1 award2 award3
Name:Frisky, Weight:10
award4
Name:Laika, Weight:50
award5 award6
続行するには何かキーを押してください . . .

ちなみにJavaScriptの場合。

コード(BBEdit)

var Dog = function(weight, name){
  var weight = weight;
  var name = name;
  this.get_weight = function(){
    return weight;
  };
  this.set_weight = function(value){
    weight = value;
  };
  this.get_name = function(){
    return name;
  };
  this.set_name = function(value){
    name = value;
  };
};
var milo = new Dog(26, "Milo");
var frisky = new Dog(10, "Frisky");
var laika = new Dog(50, "Laika");
var dogs = [milo, frisky, laika];
var result = "";
var awards = [["award1","award2","award3"],
              ["award4"],
              ["award5","award6"]];
for(var i = 0; i < dogs.length; i++){
  result += "Name:" + dogs[i].get_name() + " Weight:" + dogs[i].get_weight() + "\n";
  for(var j = 0; j < awards[i].length; j++){
    result += awards[i][j] + " ";
  }
  result += "\n";
}
$('#pre0').text(result);



pythonの場合。

sample.py

コード(BBEdit)

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

class Dog:
    def __init__(self, weight, name):
        self._weight = weight
        self._name = name
    def get_weight(self):
        return self._weight
    def set_weight(self, value):
        self._weight = value
    def get_name(self):
        return self._name
    def set_name(self, value):
        self._name = value

milo = Dog(26, "Milo")
frisky = Dog(10, "Frisky")
laika = Dog(50, "Laika")
dogs = [milo, frisky, laika]
awards = [["award1", "award2", "award3"],
          ["award4"],
          ["award5", "award6"]]
for dog, a in zip(dogs, awards):
    print("Name:{0} Weight:{1}".format(dog.get_name(), dog.get_weight()))
    print(" ".join(a))
    

入出力結果(Terminal)

$ ./sample.py
Name:Milo Weight:26
award1 award2 award3
Name:Frisky Weight:10
award4
Name:Laika Weight:50
award5 award6
$

0 コメント:

コメントを投稿