[過去ログ] プログラミングのお題スレ Part13 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
681
(4): 2019/03/14(木)20:16 ID:0tbf1s3D(1)調 AAS
お題:“木”という漢字を使って以下のようなフラクタル図形を描け

n=0


n=1
-木
木木

n=2
---木
--木木
-木--木
木木木木

n=3
-------木
------木木
-----木--木
----木木木木
---木------木
--木木----木木
-木--木--木--木
木木木木木木木木

※ハイフンはスペースだと思ってください
695: 2019/03/15(金)01:34 ID:4EriVrie(1)調 AAS
>>681 Squeak Smalltalk

| sp fn |
sp := $-. "sp := Character space."
fn := [:n |
| tree |
tree := [:lines :count |
(lines collectWithIndex: [:line :idx |
line, (String new: idx - 1 * 2 withAll: sp), line
]), lines
].
(((1 to: n) inject: #('木') into: tree) collectWithIndex: [:line :idx |
(String new: idx - 1 withAll: sp), line
]) reversed asStringWithCr
].

fn value: 0. "=>
'木' "

fn value: 1. "=>
'-木
木木' "

fn value: 2. "=>
'---木
--木木
-木--木
木木木木' "
713: 2019/03/16(土)14:50 ID:0dLFyPZP(1/3)調 AAS
>>681 Perl5

use feature say;
$n = 0;
@t = ('木');
say "n=$n\n$t[0]";
for $n (1..2) {
 $l = '-' x 2**($n-1);
 @u = map{$l . $_ . $l} @t;
 @w = map{$t[$_].$t[$_]} 0..$#t;
 @t = (@u, @w);
 say "n=$n";
 say for @t;
}

実行例
~ $ perl 13_681.pl
n=0

n=1
-木-
木木
n=2
---木---
--木木--
-木--木-
木木木木

注) 正直者には、-はスペースに見えます。
724: 2019/03/17(日)06:20 ID:5dC2feuc(3/3)調 AAS
>>681
Kotlin
https://paiza.io/projects/wzAUkDgm-BUe9ENI4NFDYw
734: 2019/03/17(日)13:39 ID:yIqzgq0g(1)調 AAS
>>681 Common Lisp
https://ideone.com/Mutq4v
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.036s