matumatuのなでしこ学習帳

2008-02-18本日は、なでしこ本 P.73の学習です

学習レベルを判定した結果 LV = 3: HP = 128 : MP = 300

01:20

  • 完了予想日数 = 479 → 476 改善
    • 完了予想年月日 = 2009/06/11 → 2009/06/09 改善
      • はてなカウンター値 = 15149

  キリ番の定義を5000単位に変更したが、

  それでも、いつのにかキリ番をえていた。 (^_^;)

        • 学習開始日から本日までの日数 =96日

  仕事は忙しいが、休憩時にがんばって学習したので、数値が改善した。


下記のプログラム「要素数.nako」は、

01:20

なでしこ本CDROM → sample → 03-02

に入っているプログラムです。


友達【0】は「よっしー」
友達【1】は「としくん」
友達【2】は「ぐっしー」

友達人数は、友達の要素数。
「友達は{友達人数}人です」と言う。

  • 動作結果 : 「要素数」さすが、

         サンプルプログラムなので、

        「友達は3人です」と正常に表示された。


下記のプログラム「ソート.nako」は、

01:20

なでしこ本CDROM → sample → 03-02

に入っているプログラムです。


名簿【0】は「うりした」
名簿【1】は「えがしら」
名簿【2】は「あいかわ」
名簿【3】は「おいかわ」
名簿【4】は「いのうえ」

名簿を配列ソート。
名簿リストとはリスト。
名簿リストのアイテムは名簿

  • 動作結果 : 「ソート」さすが、

         サンプルプログラムなので、

        「あいかわ」

        「いのうえ」

        「うりした」

        「えがしら」

        「おいかわ」

         と文字コード順に並べかえられた。


プログラム名「要素数A.nako」

01:20

# 要素数 (改造版)
# わざと、友達【2】を欠番にした場合の表示をテストしています。

友達【0】は「よっしー」
友達【1】は「としくん」
友達【3】は「ぐっさん」


友達人数は、友達の要素数。
「友達は{友達人数}人です」と言う。

  • 動作結果 :  の改造プログラムを動作させると

         下記のようになった。

        「友達は4人です」と表示された。

         上記より、友達【2】を欠番にしても、

         要素数的には、4と見なされる事を学習した。 (^_^;)


次に、数値順に並べ替えるように改造した。

01:21


改造版A 「全角数字で、桁数不揃いの場合」


プログラム名「ソートA.nako」

01:21

# ソート (改造版A)
# 数値順に並べ替えるように改造しています。
# 全角数字で、桁数不揃いの場合

名簿【0】は「4」
名簿【1】は「33」
名簿【2】は「222」
名簿【3】は「1111」
名簿【4】は「55555」

名簿を配列数値ソート。
名簿リストとはリスト。
名簿リストのアイテムは名簿

  • 動作結果 :  の改造プログラムを動作させると

         下記のようになった。

        「1111」

        「55555」

        「222」

        「4」

        「33」と表示され、数字順にソートされなかった。


改造版B 「全角数字で、桁数を揃えた場合」


プログラム名「ソートB.nako」

01:21

# ソート (改造版B)
# 数値順に並べ替えるように改造しています。
# 全角数字で、桁数を揃えた場合

名簿【0】は「44444」
名簿【1】は「33333」
名簿【2】は「22222」
名簿【3】は「11111」
名簿【4】は「55555」

名簿を配列数値ソート。
名簿リストとはリスト。
名簿リストのアイテムは名簿

  • 動作結果 :  の改造プログラムを動作させると

         下記のようになった。

        「11111」

        「55555」

        「22222」

        「44444」

        「33333」

         と表示され、数字順にソートされなかった。


改造版C 「半角数字で、桁数不揃いの場合」


プログラム名「ソートC.nako」

01:21

# ソート (改造版C)
# 数値順に並べ替えるように改造しています。
# 半角数字で、桁数不揃いの場合

名簿【0】は「4」
名簿【1】は「33」
名簿【2】は「222」
名簿【3】は「1111」
名簿【4】は「55555」

名簿を配列数値ソート。
名簿リストとはリスト。
名簿リストのアイテムは名簿

  • 動作結果 :  の改造プログラムを動作させると

         下記のようになった。

        「4」

        「33」

        「222」

        「1111」

        「55555」

         と表示され、数字順にソートされた。

         数字が左詰めに表示されたので、

         一番左の数字だけを比較すると、

         数字順にソートされていないように

         見えるが、よく見ると、数字順に

         ソートされていた。


改造版D 「半角数字で、桁数を揃えた場合」


プログラム名「ソートD.nako」

01:21

# ソート (改造版D)
# 数値順に並べ替えるように改造しています。
# 半角数字で、桁数を揃えた場合

名簿【0】は「44444」
名簿【1】は「33333」
名簿【2】は「22222」
名簿【3】は「11111」
名簿【4】は「55555」

名簿を配列数値ソート。
名簿リストとはリスト。
名簿リストのアイテムは名簿

  • 動作結果 :  の改造プログラムを動作させると

         下記のようになった。

        「11111」

        「22222」

        「33333」

        「44444」

        「55555」

         と表示され、数字順にソートされた。

         数字の桁数を揃えておくと、

         左詰めに表示されても、

         数字順にソートされたと、確認しやすくなることを学習した。


明日の予定

01:21

なでしこ本 P.74に進む予定です。