« Project Euler ... 一休み? | トップページ | 自作の手続き for Project Euler »

2009年10月18日 (日)

九九表を作る。

プラプラ〜と Scheme 関連のブログを眺めていたら、"九九表を作る"というのを見つけました。

かなり前の記事なんだけど、"名前付き let" を使ったループを回して頑張っているようです。

私も "名前付き let" は大好きで、良く使うけど、この問題の場合はそんなことしなくても、かなり単純化できることに気づきました。

こんな感じ……。

(define kuku (lambda () (let ([lst '(1 2 3 4 5 6 7 8 9)]) (map (lambda (x) (map (lambda (y) (* x y)) lst)) lst))))
> (kuku) ((1 2 3 4 5 6 7 8 9) (2 4 6 8 10 12 14 16 18) (3 6 9 12 15 18 21 24 27) (4 8 12 16 20 24 28 32 36) (5 10 15 20 25 30 35 40 45) (6 12 18 24 30 36 42 48 54) (7 14 21 28 35 42 49 56 63) (8 16 24 32 40 48 56 64 72) (9 18 27 36 45 54 63 72 81))

« Project Euler ... 一休み? | トップページ | 自作の手続き for Project Euler »

Scheme」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/112020/46519525

この記事へのトラックバック一覧です: 九九表を作る。:

« Project Euler ... 一休み? | トップページ | 自作の手続き for Project Euler »

2016年7月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            
フォト

最近のトラックバック

無料ブログはココログ