Questions tagged «fractal»

分形是自相似的形状,通常非常详细。著名的分形集包括Mandelbrot集,Julia集和Phoenix集。树状的分形图也很常见。

30
每种语言的Mandelbrot图片
在我接触过的任何图形应用程序中,我总是使用Mandelbrot图像作为Hello World的“图形”版本。现在轮到你们了。 语言必须能够图形输出或绘制图表(不允许保存文件) 渲染正方形图像或图形。大小至少为128,最大为640 * 分形坐标范围从大约-2-2i到2 + 2i Mandelbrot集外的像素应根据大小超过2之前的迭代次数进行着色(不包括*黑色和白色) 每个迭代计数必须具有唯一的颜色*,并且相邻的颜色最好应易于用眼睛区分 其他像素(大概在Mandelbrot集内)必须为黑色或白色 至少99次迭代 不允许使用ASCII艺术 *除非受平台限制,例如图形计算器 允许: 禁止:( 缩小的图像) 获奖条件: 每种语言的最短版本(以字节为单位)将在此帖子中提及,并按大小排序。 该按钮将永远不会被“接受”。 排行榜: 显示代码段 /* Configuration */ var QUESTION_ID = 23423; // Obtain this from the url // It will be like https://XYZ.stackexchange.com/questions/QUESTION_ID/... on any question page var ANSWER_FILTER = "!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe"; var …

30
从较小的“ H”创建一个“ H”
挑战 创建一个函数或程序,当给定整数时size,该函数或程序将执行以下操作: 如果size等于1,则输出 H H HHH H H 如果size大于1,则输出 X X XXX X X X程序/功能的输出在哪里size - 1 (只要您愿意,0只要您在答案中指定,就可以使基本情况与相对应) 可以使用以下任何一种输出格式,以您更方便的方式: 所需结构的字符串,其中任意两个不同的字符分别对应于H和space 具有所需结构的二维数组,其中任意两个不同的值分别对应于H和space 字符串的数组/列表,每个字符串中有一行输出,并且与H和对应的任意两个不同的值space 只要每行上有恒定数量的前导空格,就可以使用前导空格。两个不同的输出字符可以取决于您选择的任何内容,只要它们不同即可。 指定代码返回的输出格式。 测试用例 1 H H HHH H H 2 H H H H HHH HHH H H H H H HH HH H HHHHHHHHH H HH HH …
73 code-golf  ascii-art  fractal  code-golf  code-golf  string  code-golf  string  matrix  code-golf  graph-theory  maze  binary-matrix  code-golf  kolmogorov-complexity  random  code-challenge  metagolf  test-battery  brain-flak  text-processing  code-golf  matrix  code-golf  number-theory  primes  code-golf  string  matrix  code-golf  binary  bitwise  code-golf  number  factorial  floating-point  code-golf  number  sequence  code-golf  sequence  cops-and-robbers  code-golf  sequence  cops-and-robbers  code-golf  string  code-golf  math  decision-problem  number-theory  integer  code-golf  number  decision-problem  functional-programming  code-golf  array-manipulation  matrix  code-golf  string  classification  string  code-challenge  binary  compression  decode  code-golf  string  string  code-challenge  balanced-string  encode  code-golf  number-theory  integer  base-conversion  code-golf  math  number-theory  geometry  abstract-algebra  code-golf  array-manipulation  sorting  optimization  code-golf  math  geometry  image-processing  generation  code-golf  string  cops-and-robbers  repeated-transformation  grammars  cops-and-robbers  repeated-transformation  grammars  code-challenge  restricted-source  tips  source-layout  javascript  code-challenge  kolmogorov-complexity  restricted-source  code-golf  combinatorics  counting  math  fastest-code  linear-algebra  code-golf  math  permutations  matrix  linear-algebra  code-golf  string  decision-problem  restricted-source  code-golf  number  array-manipulation  subsequence  code-golf  number  array-manipulation  matrix  code-golf  brainfuck  code-golf  color  code-golf  quine  source-layout  code-golf  subsequence  code-golf  string  ascii-art  code-golf  string  ascii-art  alphabet  code-golf  decision-problem  interpreter  hexagonal-grid  halting-problem  code-golf  string  polynomials  calculus  code-golf  math  decision-problem  matrix  complex-numbers  code-golf  random  code-golf  number  arithmetic 

30
生成曼德尔布罗特分形[关闭]
您的任务是绘制ascii中设置的mandelbrot。它看起来应该像 复数c在于Mandelbrot集,当序列z(n+1) = z(n)^2 + c,z(0) = 0仍然有限。为了这个挑战,您可以考虑cif的有界序列|z(32)| < 2。 使用您喜欢的语言中的ascii字符并使用尽可能少的字符,在(-2-i)到(1 + i)的复平面上绘制mandelbrot集,最低分辨率为40x30。

3
计算机生成的纹理墙面涂料
我房间墙壁上的油漆具有随机的,几乎像分形的3维纹理: 在这个挑战中,您将编写一个程序,该程序生成看起来像是我墙壁的一部分的随机图像。 下面,我收集了墙壁上10个不同点的图像。全部具有大致相同的照明,并且全部是在相机距离墙壁一英尺的地方拍摄的。均匀地裁剪边界以使其为2048 x 2048像素,然后将它们缩放为512 x512。上面的图像是图像A。 这些只是缩略图,单击图像可查看完整尺寸! A: B:C:D:E: F: G:H:I:J: 您的任务是编写一个程序,该程序以1到2 16的正整数作为随机种子,并且为每个值生成一个独特的图像,看起来像是我墙的“第十一张图像”。如果有人看着我的10张图片,而您的几张却不知道是计算机生成的,那您做得很好! 请展示一些您生成的图像,以便观众无需运行代码即可查看它们。 我意识到图像中的光照强度或颜色并不完全均匀。对此我感到抱歉,但是如果没有更好的照明设备,这是我能做的最好的事情。您的图像不需要具有可变的光照(尽管可以)。纹理是更重要的重点。 细节 您可以使用图像处理工具和库。 以所需的任何常用方式(命令行,stdin,明显变量等)进行输入。 输出图像可以是任何常见的无损图像文件格式,也可以仅在窗口/浏览器中显示。 您可以以编程方式分析我的10张图像,但不要假定运行您的代码的每个人都可以访问它们。 您必须以编程方式生成图像。您可能没有对我的一张图片或其他一些图片的略微变体进行硬编码。(无论如何,人们会为此拒绝您。) 您可以使用内置的伪随机数生成器,并假定周期为2 16或更大。 计分 这是一次人气竞赛,因此赢得最高投票的答案会赢得胜利。

16
Sierpinskified代码
编写一个矩形的文本块,当该文本块布置在Sierpinski地毯中时,使用相同大小的空白区域作为空白部分,以创建一个输出地毯迭代次数的程序。 例如,如果您的文本块是 TXT BLK 然后运行程序 TXTTXTTXT BLKBLKBLK TXT TXT BLK BLK TXTTXTTXT BLKBLKBLK 应该输出,1因为程序的形状代表了Sierpinski地毯的第一次迭代。 同样,正在运行 TXTTXTTXTTXTTXTTXTTXTTXTTXT BLKBLKBLKBLKBLKBLKBLKBLKBLK TXT TXTTXT TXTTXT TXT BLK BLKBLK BLKBLK BLK TXTTXTTXTTXTTXTTXTTXTTXTTXT BLKBLKBLKBLKBLKBLKBLKBLKBLK TXTTXTTXT TXTTXTTXT BLKBLKBLK BLKBLKBLK TXT TXT TXT TXT BLK BLK BLK BLK TXTTXTTXT TXTTXTTXT BLKBLKBLK BLKBLKBLK TXTTXTTXTTXTTXTTXTTXTTXTTXT BLKBLKBLKBLKBLKBLKBLKBLKBLK TXT TXTTXT TXTTXT TXT BLK …

21
画出魔鬼的楼梯
在恶魔的楼梯是一个分形样相关Cantor集功能。 您的任务是复制这个时髦的功能-以ASCII艺术形式! 输入项 一个整数n >= 0,指示输出的大小。输入可以通过STDIN,函数参数或命令行参数给出。 输出量 魔鬼楼梯的ASCII艺术形式,大小为n,可作为字符串返回或打印到STDOUT。每行末尾的尾随空格都可以,但前导空格不行。您可以选择打印单个尾随换行符。 对于size 0,输出仅为: x (如果愿意,可以使用空格以外的任何其他可打印ASCII字符代替x。) 对于大小n > 0,我们: 取大小的输出n-1并将每行拉伸三倍 单行x的行之间的波纹 向右移动各行,以便x每列正好有一行,并且第一x行的位置最小,而随行减少 例如,输出为n = 1: x xxx x 为了获得的输出n = 2,我们将每行拉伸三倍: xxx xxxxxxxxx xxx 单身行之间的波纹x: x xxx x xxxxxxxxx x xxx x 向右移动: x xxx x xxxxxxxxx x xxx x 再举一个例子,这里是n = 3。 计分 …

3
救命,我陷入了Sierpinski三角!
绘制谢尔宾斯基三角形已经被 做 死。我们还有其他有趣的事情可以做。如果我们在三角形处斜视的程度足够大,则可以将上下颠倒的三角形视为分形图的节点。让我们找到解决该图的方法! 首先,让我们为每个节点分配一个数字。最大的倒置三角形将是节点零,然后我们逐层向下移动(宽度优先),并按从上到下的顺序分配连续的数字: 单击以获取较大的版本,其中较小的数字不太模糊。 (当然,在该模式的蓝色三角形内部循环往复。)来定义的编号的另一种方式是,该中心节点具有索引0,并且节点的子节点i(下一个较小规模的相邻三角形)具有指数3i+1,3i+2和3i+3。 我们如何围绕该图移动?任何给定的三角形最多可以采取六个自然步骤: 一个人总是可以通过边之一的中点移动到当前节点的三个子节点之一。我们会指定这些举措为N,SW和SE。例如,如果我们现在走的节点2,这将导致节点7,8,9分别。不允许通过边缘进行其他移动(到达间接后代)。 只要不碰到三角形的边缘,也可以通过三个角之一移至直接父级或两个间接祖先之一。我们会指定这些举措为S,NE和NW。例如,如果我们当前在node上31,S将导致10,NE无效并NW导致0。 挑战 给定两个非负整数xand y,仅使用上述六个动作找到从x到的最短路径y。如果有几个最短的路径,请输出其中任何一条。 请注意,您的代码不仅仅可以在上图中描述的5个级别中工作。您可能会认为x, y < 1743392200。这样可以确保它们适合32位带符号整数。请注意,这对应于树的20个级别。 您的代码必须在5秒钟内处理任何有效输入。尽管这排除了蛮力广度优先搜索,但它应该是一个相当宽松的约束-我的参考实现在半秒内处理了深度1000的任意输入(对于节点来说约为480位数字)。 您可以编写程序或函数,通过STDIN(或最接近的替代方案),命令行参数或函数自变量获取输入,并通过STDOUT(或最接近的替代方案),函数返回值或函数(out)参数输出结果。 输出应该是字符串的平面,明确的清单N,S,NE,NW,SE,SW,使用任何合理的分隔符(空格,换行,逗号,","...)。 适用标准代码高尔夫球规则。 测试用例 可以使用上图手动计算出前几个测试用例。其他人确保答案足够有效。对于那些,可能没有列出其他相同长度的解决方案。 0 40 => N N N N 66 67 => S SW N N N 30 2 => NW NW -or- NE SW 93 2 => NE SW …

4
计算机生成的破裂土壤
编写一个程序,该程序使用0到65535之间的整数(2 16 -1),并生成一个独特的 500×500像素的图像,该图像看起来与以下6个破裂土壤的真实生活图像尽可能相似: 这些是缩略图,单击它们可查看完整的500×500图像。 目的是使您的计算机生成的图像尽可能逼真。因此,理想情况下,如果程序输出的任何图像都与上面的6张图像混合在一起,那么第一次看到这些图像的人将无法分辨出计算机生成的图像与真实图像。 完美的写实主义是棘手的,因此请尽力而为。这是一场人气竞赛,因此,具有更切合实际的输出结果的答案将被更多地投票,并且更有可能获胜。 规则 您可以使用图像处理功能或库。 您可以基于从6个样本图像中收集的信息来建立算法,但是65535(2 16)可能的输出图像在视觉上应与样本图像彼此不同,尤其是在裂缝排列方面。您必须真正生成图像,而不仅仅是旋转并转换现有照片中的选择。 您不应该以其他方式对输出进行硬编码。应该使用通用算法,并且大于65535的数字理论上应该产生有效的输出。(我已将其限制为仅容纳最小最大整数类型。) 输入整数可以认为是产生随机裂化的土壤输出图像的种子。但是,它应该是确定性的,因此相同的输入应始终导致相同的输出。 输出图像必须恰好是500×500像素。 输出图像可以以任何常见的图像文件格式保存或简单显示。 确保在答案中包含一些示例输出图像及其相应的输入数字。 得票最多的答案将获胜。投票者当然应该对试图产生类似于6个样本的图像的答案进行投票,并对破坏规则或给出不一致结果的答案进行投票。 这6个样本图像取自texturelib.com。从两个较大的破裂土壤图像中选取了1000×1000像素区域,然后将其调整为500×500。您可以在程序中使用这些较大图像的分析结果,但输出应专门模仿6个选定的样本图像。

30
画一个Sierpinski三角形
Sierpinsky三角形是通过截取三角形,将高度和宽度减小1/2,创建3个所得三角形副本并将每个三角形与其他两个三角形接触的方式创建的分形。如下图所示,对生成的三角形反复进行此过程,以生成Sierpinski三角形。 编写程序以生成Sierpinski三角形。您可以通过绘制实际三角形或使用随机算法生成图片来使用想要生成图案的任何方法。您可以绘制像素,ascii艺术作品或任何您想要的东西,只要输出看起来与上面显示的最后一张图片相似即可。最少的角色获胜。

22
引爆一根弦
给定任何字符串,以三角形的形式打印它,其中文本沿每个对角线上下移动。例如,输入的"Hello World"应输出: d l r d o l W r d o l o W r d l o l l o W r d e l o l H l o W r d e l o l l o W r d l o l o W r …

6
产生一个Padovan螺旋
介绍 与斐波那契数列相似,Padovan 数列(OEIS A000931)是一个数字序列,是通过在序列中添加前项产生的。初始值定义为: P(0) = P(1) = P(2) = 1 第0,第1和第2项均为1。递归关系如下所示: P(n) = P(n - 2) + P(n - 3) 因此,它产生以下序列: 1, 1, 1, 2, 2, 3, 4, 5, 7, 9, 12, 16, 21, 28, 37, 49, 65, 86, 114, 151, 200, 265, 351, ... 将这些数字放在一起时,将它们用作等边三角形的边长会产生一个不错的螺旋,就像斐波那契螺旋: 图片由维基百科提供 任务 您的任务是编写一个程序,该程序通过图形化输出来重新创建此螺旋,其输入对应于哪个术语。 …

24
IHIH金字塔
我发现字母“ H”和“ I”非常相似很着迷。“ H”是由两个垂直笔划包围的水平笔划;“ I”是一个垂直笔画,周围有两个水平笔画(取决于您的字体)。我敢打赌,这可能是嵌套的...你知道让我想起什么吗?分形!!! 让我们定义“ IHIH”金字塔如下:第一个迭代是字母“ I”的ASCII表示形式: --- | --- 下一次迭代的任一侧都有一个垂直笔触。 | | |---| | | | |---| | | 如果将中间的“ I”视为单个水平笔划,则第二个迭代基本上就是“ H”。第三次迭代在顶部和底部添加了水平笔划 ------- | | |---| | | | |---| | | ------- 同样,如果将中间的“ H”视为单个垂直笔划,则此迭代基本上就是“ I”。这种模式继续,在每次迭代中在“ H”和“ I”之间交替。供参考,这里是前6个迭代: 1: --- | --- 2: | | |---| | | …

10
从ASCII的位模式生成分形
总览 编写一个程序,在给出编码分形的位模式后,再打印出简单的分形模式,再加上分代的每代比例因子和世代数。 说明 这是Sierpinski地毯的ASCII表示形式: 第0代: # 第1代: # # # # # # # # 第2代: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # …

1
垫片编织-画一个Sierpiński结
给定一个整数N> = 2,产生一个图像,该图像显示度数为N的Sierpiński结。 例如,以下是2、3、4和5级的结: 单击图像以查看完整尺寸(度数越高,图像越大)。 规格 使用N度的Sierpiński三角形的顶点作为引导点绘制N度的Sierpiński结。N度的Sierpiński三角形是排列成较大三角形的三个N-1度的Sierpiński三角形。0度的Sierpiński三角形是等边三角形。 最小的三角形组成部分的边长为64,这使Sierpiński三角形的结长以 外部三角形的中心位于图像的中心。这在顶部和底部没有相等的空格。 输出是边长为的正方形图像,其中是ceiling(x),大于或等于x的最小整数。当三角形的中心位于图像的中心时,此大小足够大,足以将基础Sierpiński三角形的顶部顶点包含在图像中。 单个曲线必须在其上方和下方通过,并严格交替。解决方案可以在上下限之间选择,也可以在上下限之间选择。 示例图像显示黑色前景和白色背景。您可以选择任何两种容易区分的颜色。允许抗锯齿,但不是必需的。 在两个圆弧相交处或曲线在其自身上方或下方通过的地方一定不能有间隙。 输出可以是任何光栅格式的图像文件,也可以是包含正确的默认显示尺寸的任何矢量格式的图像文件。如果直接在屏幕上显示,则必须采用一种允许滚动的形式,以便在大于屏幕时查看完整图像。 确定圆弧中心,半径和厚度 结由一系列圆弧构成,这些圆弧在切线平行的点相交,从而实现无缝连接。这些弧显示为环形扇形(具有厚度的弧)。 这些弧的中心是最小的倒置三角形的顶点。每个这样的顶点都是一个弧的中心。 每个弧的半径为 唯一的例外是,三个最外面的三角形(在大三角形的拐角处)的弧线的中心是两个相邻内部顶点的中点,因此半径为 每个圆弧的总厚度(内半径和外半径之差)为,并且其黑色边框的厚度均为。曲线必须具有这些边框,而不仅仅是实心条。 计量单位 所有距离均以像素为单位(1是2个相邻像素之间的水平或垂直距离)。 3的平方根必须精确到7个有效数字。也就是说,您的计算必须等同于使用ROOT3,这样1.7320505 <= ROOT3 < 1.7320515 计分 以字节为单位的最短代码获胜。 对于那些想知道的人,不包括N = 0和N = 1,因为它们对应于一个圆和一个三叶形,这与适用于N> = 2的模式不太匹配。我希望应对这种挑战的大多数方法都需要为0和1添加特殊情况代码,因此我决定省略它们。

6
评分Tarzan的奥林匹克葡萄摇摆常规
奥运会的葡萄树摆动者在标准的树上执行常规活动。特别是,“标准树” n具有0向上穿过的顶点n-1以及将每个非零顶点连接a到其n % a下面的顶点的边。因此,例如,标准树5如下所示: 3 | 2 4 \ / 1 | 0 因为5除以3时的余数为2,所以5除以2或4时的余数为1,而5除以1时的余数为0。 今年,泰山将捍卫他的金新套路,每个始于顶点n - 1,秋千到顶点n - 2,继续顶点n - 3,等等,直到最后他卸除到顶点0。 例行程序的分数是每个挥杆(包括拆卸)的分数之和,挥杆的分数是树内起点和终点之间的距离。因此,Tarzan在标准树5上的例程得分为6: 从摇摆4到3得分3分(向下,向上,向上), 从摇摆3到2得分(下降)一分, 从摆动2到1得分1分(向下),并且 从下来1,0得分为1分(下降)。 编写一个程序或函数,给定一个正整数n,该程序或函数将计算Tarzan例程在Standard Tree上的得分n。样本输入和输出: 1 -> 0 2 -> 1 3 -> 2 4 -> 6 5 -> 6 6 -> 12 7 -> 12 8 …
32 code-golf  math  number  number-theory  code-golf  code-golf  restricted-source  programming-puzzle  css  code-golf  parsing  code-golf  random  encryption  code-golf  ascii-art  fractal  code-golf  math  code-golf  sorting  graph-theory  path-finding  permutations  code-golf  tetris  code-golf  card-games  code-golf  math  sequence  rational-numbers  code-golf  chess  code-golf  string  geometry  grid  code-golf  ascii-art  grid  code-golf  sequence  integer  code-golf  math  number-theory  packing  polyomino  code-golf  math  code-golf  string  quine  permutations  code-golf  math  code-golf  image-processing  optical-char-recognition  code-golf  string  kolmogorov-complexity  sequence  integer  code-golf  number  permutations  palindrome  code-golf  kolmogorov-complexity  code-golf  number  sequence  string  fewest-operations  code-golf  string  kolmogorov-complexity  sequence  primes  code-golf  string  ascii-art  code-golf  string  number  alphabet  code-golf  counting  code-golf  number  sequence  number-theory  primes  code-golf  subsequence  word-search 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.