タグ付けされた質問 「fractal」

フラクタルは自己相似形であり、通常は非常に詳細です。よく知られているフラクタルセットには、マンデルブロセット、ジュリアセット、フェニックスセットがあります。木のようなフラクタル描画も一般的です。

4
Hツリーディレクトリ
プログラマーは、多くの場合、フラクタルを描くことに夢中です。新しいコンピューターベースのメディアが必要だと思います。 Hツリーは、水平線と垂直線からなるフラクタルのかなり単純なタイプです。これは、10回目の繰り返しです(ウィキペディア提供): ここで、イメージの各行が標準的なコンピューターファイルシステムのディレクトリ(フォルダー)であると想像してください。最も小さい線を除くすべての線は、それよりも小さい2本の線と交差します。これら2つの小さな行は、大きな行のサブディレクトリです。したがって、中央の大きな水平線は、画像内の残りの行の親、祖父母などである2つの最大の垂直線の親ディレクトリです。 チャレンジ stdinまたはコマンドライン(または最も近い代替)を介して正の整数Nを取り込み、HツリーフラクタルのN番目の反復をミラーリングするディレクトリツリーを作成するプログラムを作成します。 最初の反復(N = 1)は単一の水平線です。後続の各反復で、垂直線または水平線の新しいセットが現在の行の最後に追加されます。したがって、N = 2の場合、2本の垂直線が追加され(H形状を作成)、N = 3の場合、4本の水平線が追加されます。 ルートディレクトリの名前は常にtree。サブディレクトリの名前は、使用して、彼らは彼らの親線に対してである方向に一致している必要がありright、left、upとdown。 ルートディレクトリは常に水平線であるので、それは常に持っていますrightし、leftサブディレクトリ。しかし、これら二つは持っているだろうupし、downサブディレクトリ、およびそれらを持つことになりますrightし、leftそうで再び、と。 反復制限の終わりのディレクトリは空でなければなりません。 例 N = 3の場合、ディレクトリツリーは次のようになります。 tree right up down left up down 追加情報 理想的には、treeディレクトリはソースコードと同じフォルダにポップアップしますが、作業ディレクトリに移動しても問題ありません。 あなたがtree作成される場所に既存のディレクトリは存在しないと仮定するかもしれません。 プログラムは常に同じ一般的な最新のオペレーティングシステム(Mac / Windows / Linux)で実行されると仮定できます。基本的に、すべてのOSで機能しないファイル区切り文字の使用について心配する必要はありません。 得点 これはコードゴルフなので、バイト単位の最短コードが優先されます。

1
再帰スタイナーチェーン
スタイナーチェーンは、次の画像に示すように、各サークルがチェーンの前および次のサークルだけでなく、2つの他の交差しないサークルに接するN個のサークルのセットです。 この課題では、シュタイナーチェーンを再帰的に描画するプログラム/関数を作成します。つまり、特定のチェーンの円は、チェーンの別の反復の基本円になります。 チャレンジ 画像の寸法と、チェーンの各連続反復における円のレベルを示す整数のリストを受け入れるプログラム/関数を作成し、再帰シュタイナーチェーンが描画された画像を出力します。 入力 プログラム/関数は2つの引数を受け入れます。 s -画像の幅と高さ ls -チェーンの連続する各反復に存在する円の数を示す正の整数のリスト。最上位のチェーンから最下位のチェーンの順序 出力 プログラム/関数は、次元sxのイメージを出力しs、Resteinive Steinerチェーンを表示します。 最上位の基本円はs、画像の中心にある直径の画像と同じ大きさになります 物事を簡単にするために、シュタイナーチェーンの2つのベースサークルは同心になります。つまり、2つのベースラインサークルの中心点は同じになります。 外側の半径、Rおよびチェーン内の円の数が与えられると、内側の半径Nの式R'はR' = (R-R*sin(pi/N))/(sin(pi/N)+1) チェーンの円と内側の基本円は、チェーンの次の反復の外側の基本円になります チェーンサークルを再帰的に処理する間、次のチェーンの順序は次の値に対応する必要があります ls チェーンの内側の円を再帰的に処理するとき、順序はその親の順序と同じである必要があります(例[5,2]): すべてのチェーンは、再帰の長さの深さで終了する必要があります ls チェーンの回転は重要ではありません: ただし、親の中心点に対する再帰チェーンの回転は同じである必要があります。 すべての円は、アウトラインまたは塗りつぶしで描画する必要があります 色の選択は実装に任され、抜け穴を保存します(たとえば、すべてを同じ色で塗りつぶします) 実行例 次の例では、色はによって決定され(depth of the recursion)^4ます。 ここでソースを見つけることができます。 chain(600,[5,4,3]) chain(600,[11,1,1,1,1,1,1]) chain(600,[5,6,7,8,9])

3
つまようじシーケンスを生成
つまようじシーケンスとは何ですか? ウィキペディアによると ジオメトリでは、つまようじのシーケンスは2次元パターンのシーケンスであり、シーケンスの前のパターンに線分(つまようじ)を繰り返し追加することで形成できます。 設計の最初の段階は、単一の「つまようじ」、つまりラインセグメントです。最初のステージの後の各ステージは、前のデザインを採用して形成され、露出した爪楊枝の端ごとに、その端の直角に中心を置く別の爪楊枝を配置します。 このプロセスにより、n段階のセグメント数が0.45n2から0.67n2の間のフラクタルパターンで振動する成長パターンが生じます。T(n)がステージnのセグメント数を表す場合、nが2の累乗に近いときにT(n)/ n2が最大に近いnの値が発生し、最小に近い値は2の累乗の約1.43倍の数の近くで発生します。つまようじのシーケンスの段階の構造は、T平方フラクタル、またはUlam–Warburtonセルオートマトンのセルの配置によく似ています。 パターン内のつまようじで囲まれているが、つまようじで交差していない境界付き領域はすべて、正方形または長方形である必要があります。つまようじパターンのすべての開いた四角形(つまようじで完全に囲まれているが、つまようじが内部を横切っていない四角形)の辺の長さと面積は2の累乗で、辺の長さの1つであると推測されています最大2つです。 仕事 STDIN、関数引数、またはコマンドライン引数から入力を受け取るプログラムまたは関数を作成し、その段階で余計なフラクタルを作成する必要があります。避けられない場合を除き、改行の先頭と末尾は禁止されています。境界ボックスは、先頭と末尾のスペースを含め、最低限必要です。初期ラインの場合\、空間内で2つの対角線を作ります。入力は2000未満であることが保証されています。少なくとも1行にスペース以外の文字が含まれています。後続スペースは許可されます。 テストケース 1 \ \ 5 \ /\ /\ / /\ \/\/\ \ \ \ \ \/\/\ \/ / \/ \/ \

4
アスキーアートH木
Hツリーはフラクタルツリー構造であるラインで始まっていること。各反復で、Tブランチがすべてのエンドポイントに追加されます。この課題では、毎秒の HツリーレベルのASCII表現を作成する必要があります。 最初のレベルは、単純に3ハイフンマイナス文字が含まれています。 --- 次のレベルは再帰的に構築されます: 3つのスペースまたは行で区切られた、前のレベルからのコピーの2x2マトリックスを作成します。 コピーの中心をHの形のASCIIアート線で接続します。-水平線、|垂直線、および+線が互いに接触する場合に使用します。 セカンドレベル -+- -+- | | +-----+ | | -+- -+- 第3レベル -+- -+- -+- -+- | | | | +--+--+ +--+--+ | | | | | | -+- | -+- -+- | -+- | | +-----------+ | | -+- | -+- -+- | …

1
有理座標が正しいシェルピンスキー三角形にあるかどうかを判別
シェルピンスキーの三角形は、単一の三角形で始まる繰り返し4つの合同な三角形にすべての三角形を分割し、中央の三角形を除去することによって構築される平面上の点の集合です。右のシェルピンスキー三角形には(0,0)、(0,1)と(1,0)に角があり、次のようになります。 このセットの同等の定義は次のとおりです。 nすべてのについて、上記のプロセスのth番目の反復のポイントn。 点(x,y)と0 <= x <= 1し、0 <= y <= 1すべての正の整数のようにn、nxのバイナリ膨張番目のビットとYの両方ではありません1。 しましょう T = {(0,0),(1,0),(0,1)} をf次のように定義された2Dポイントのセットの関数とします。 f(X) = {(0,0)} ∪ {(x+t)/2 | x∈X, t∈T} 右シェルピンスキーの三角形は、トポロジカルクロージャの最小不動点の(セット封じ込めによって)f。 S正方形にしよう{(x,y) | 0<=x<=1 and 0<=y<=1} Let g(X) = S ∩ {(x+t)/2 | x∈(X), t∈T}(T上記は上で定義したとおり) 次に、右のシェルピンスキー三角形がの最大の不動点ですg。 チャレンジ 4つの整数を受け入れa,b,c,d、正しいシェル(a/b,c/d)ピンスキー三角形に属している場合は真の値を与え、そうでない場合は偽の値を与えるプログラムまたは関数を記述します。 得点 これはコードゴルフです。バイト単位の最短コードが優先されます。 テストケース 以下は、シェルピンスキー三角形の右側にあります。 0 1 0 …

2
アスキーアートスクエアアフィンフラクタル
アフィンフラクタルを作成するための最小のプログラムを記述します。以下のルールと同じ結果が得られると思われる任意の方法を使用できます。提案された方法からアイデアを使用する必要はありません! プログラムは、形式でパターンを定義する最初の2つの入力をとる074第2の入力のサイズを定義する7 0〜3桁からなる3、8×8なり4、16×16など(2 ^ n)の上になります。プログラムは、0(1x1)から少なくとも5(32x32)までのすべてのサイズについて正しい結果を出力する必要があります。それ以上の数の出力を生成する場合、それは正しい必要があります。つまり、特定のサイズまでは正しい出力を生成する必要がありますが、間違っている場合はそのサイズを超える出力は生成しません。最大サイズは15(32768x32768)と想定できます。これは、すでにASCIIアート(1GB)の非常識なサイズだからです。 8x8パターンは以下のようになります(ルール160)。左端の桁はblock A、中央の桁(失礼な考えはありません!)はblock B、右端の桁はblock Cです。フラクタルを作成するには、両方の次元で半分に縮小し、ブロックに回転/ミラーリングルールを適用します。パターンを縮小するには、2x2の領域に均等に分割します。各エリアに3つの表示文字があるか、何も表示されません。目に見える文字がある場合は、小さいブロックの適切な場所に文字を配置し、そうでない場合はスペースを配置します。ルール0- 3ミラーリングされません、ルール4- 7ミラーリングされます。ルール0と4回転されていない、1と5時計回りに90度回転され、2そして6回転180度であり、3そして7時計回りに270度回転されます。3つのブロックをA左上隅、B左下、C右下の順序で縫い合わせます。 AAA AA A AA A BBB CC B BBC BBCCC B CCC 縮小、回転、ルール番号でミラーリング: 0 1 2 3 4 5 6 7 ---- ---- ---- ---- ---- ---- ---- ---- AA BAA CCB C C BCC AAB AA A BB …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.