Questions tagged «complex-numbers»

这项挑战涉及对复数的操作,包括解析和打印它们以及执行复杂的算术。该标签还包含四元数之类的广义复数。

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 

9
以-1 + i为基数的加法
高斯整数是形式的复数,a+bi其中a和b都是整数。在基数-1 + i中,可以使用数字0和唯一地表示所有高斯整数1,而无需使用符号来表示符号。 例如,1100以-1 + i为基数代表十进制数字2,因为 1*(-1+i)^3 + 1*(-1+i)^2 + 0*(-1+i)^1 + 0*(-1+i)^0 = (2+2i) + (-2i) + 0 + 0 = 2 输入将是使用数字表示的以-1 + i为基数的两个高斯整数01。可以采用以下形式之一: 两个独立的数字字符串, 两个十进制整数,其中包括01代表基数-1 + i的数字(例如1100,基数-1 + i中的2表示), 代表基数-1 + i的两个二进制整数(例如,十进制12或0b1100基数-1 + i中的2) 单个字符串由单个非字母数字分隔符分隔两个数字字符串/二进制整数(例如1100 1100或12,122 + 2) 输出两个高斯整数的和,也以-1 + i为基数,并用数字表示01(以允许输入的一种格式,不一定是相同的选择)。输出允许包含有限数量的前导零。 输入最多30位数字的函数或程序必须在2秒内终止。 其他说明 您可以假定输入不包含无关的前导零。对于0的特殊情况,可以选择一个0或空字符串作为表示形式。 测试用例 0, 0 …

14
太快,太傅立叶:FFT代码高尔夫
以尽可能少的字符实现快速傅立叶变换。 规则: 最短的解决方案获胜 可以假定输入是一维数组,其长度是2的幂。 您可以使用您选择的算法,但是解决方案实际上必须是快速傅立叶变换,而不仅仅是天真的离散傅立叶变换(也就是说,它的渐近计算成本为)O(NlogN)O(Nlog⁡N)O(N \log N) 编辑: 该代码应实现标准的前向快速傅立叶变换,其形式可以在Wolfram文章的公式(3)中看到, 不允许使用现有标准库或统计信息包中的FFT函数。这里的挑战是简洁地实现 FFT算法本身。

30
有已知的
美国前国防部长唐纳德·拉姆斯菲尔德(Donald Rumsfeld)著名地推广了“已知的已知物”。在这里,我们将把他的言论提炼成四行节。 具体来说,输出以下文本: known knowns known unknowns unknown knowns unknown unknowns 大小写无关紧要(例如,Known unKnowns可以),可以使用单行尾的换行符,但不允许其他格式更改。这意味着单词之间有一个空格,行之间有LF(59字节)或CR/LF(62字节)。 规则 完整的程序或功能都是可以接受的。如果是函数,则可以返回输出而不是打印输出。 禁止出现标准漏洞。 这是代码高尔夫球,因此所有常用的高尔夫规则都适用,并且最短的代码(以字节为单位)获胜。

24
复数二进制数
让我们创建一个从正整数到高斯整数的简单的射影映射,高斯整数是复数,其中实部和虚部都是整数。 例如4538,给定一个正整数,以二进制形式表示,且不带前导号0: 4538 base 10 = 1000110111010 base 2 删除任何尾随0的: 100011011101 用一个替换任意一个或多个0的运行+: 1+11+111+1 更换所有1的用i的: i+ii+iii+i 计算结果复杂表达式并输出简化的高斯整数: i+ii+iii+i = i+i*i+i*i*i+i = 2i+i^2+i^3 = 2i+(-1)+(-i) = -1+i 输出可以用传统的数学方式表示,也可以用两个单独的整数表示实部和复杂部分。对于4538例如,任何这些就可以了: -1+i i-1 -1+1i (-1, 1) -1 1 -1\n1 对于像输入29,mathy格式化输出,诸如0,0i或0+0i都是细。 如果您的语言更自然,则使用j(或其他方式)代替i可以。 以字节为单位的最短代码获胜。

9
整数的qvolume
古老的知识是,每个非负整数都可以重写为四个平方整数的总和。例如,数字1可以表示为。或者,通常,对于任何非负整数,存在整数使得02+02+02+1202+02+02+120^2+0^2+0^2+1^2nnna,b,c,da,b,c,da,b,c,d n=a2+b2+c2+d2n=a2+b2+c2+d2n = a^2+b^2+c^2+d^2 Joseph-Louis Lagrange proved this in the 1700s and so it is often called Lagrange's Theorem. This is sometimes discussed in relation to quaternions – a type of number discovered by William Hamilton in the 1800s, represented as w+xi+yj+zkw+xi+yj+zkw+x\textbf{i}+y\textbf{j}+z\textbf{k} where w,x,y,zw,x,y,zw,x,y,z are real numbers, and i,ji,j\textbf{i}, \textbf{j} …

19
画一个
挑战 给定整数的输入(其中),输出从到含)。nñn0&lt;n&lt;500&lt;ñ&lt;500<n<50y=Re((−n)x)ÿ=[RË((-ñ)X)y=\mathrm{Re}((-n)^x)x=−3X=-3x = -3x=3X=3x = 3 其中是复数的实部。Re(p)[RË(p)\mathrm{Re}(p)ppp 注意Re((−n)x)=nxcos(πx)[RË((-ñ)X)=ñXcos⁡(πX)\mathrm{Re}((-n)^x) = n^x \cos{(\pi x)} 输出量 输出可以是您希望的任何形式(例如图像或窗口等)。不允许使用ASCII艺术。 图形不需要轴(以允许没有内置图形功能的语言竞争)。 如果输出图像,则其每侧必须大于500像素。同样,绘图必须尽最大可能填充图像。 地块之间的最小间隔为0.05。 允许使用矢量图形。 例子 输入以下内容2: 输入以下内容1: 您必须将相应的输出放在答案中(n = 1和n = 2)。 获奖 以字节为单位的最短代码获胜。

10
解析四元数
如果您还不知道,则四元数基本上是4位数的数字。出于这一挑战的目的,它具有一个实部和三个虚部。虚数分量是由后缀表示i,j,k。例如,1-2i+3j-4k是用四元数1为实分量和-2,3和-4作为虚数分量。 在此挑战中,您必须将四元数的字符串形式(例如"1+2i-3j-4k")解析为系数(例如[1 2 -3 -4])的列表/数组。但是,四元数字符串可以用多种不同的格式进行格式化... 这可能是正常的: 1+2i-3j-4k 它可能缺少术语:1-3k,2i-4k(如果缺少术语,则输出0这些术语) 它可能已丢失的系数:i+j-k(在此情况下,这相当于1i+1j-1k换句话说,一个。i,j,或k不被假定在前面的数以具有1在由缺省前) 它的顺序可能不正确: 2i-1+3k-4j 系数可以只是整数或小数: 7-2.4i+3.75j-4.0k 解析时有一些注意事项: 条款之间总会有a +或- 您将始终获得有效的输入信息,该输入内容至少包含1个字词,并且没有重复的字母(no j-js) 所有数字都可以视为有效 你可以,如果你想解析后更改号码为另一种形式(例如,3.0 =&gt; 3,0.4 =&gt; .4,7 =&gt; 7.0) 不允许使用解析/四元数内置函数和标准漏洞。这包括eval关键字和功能。输入将是单个字符串,输出将是列表,数组,由空格分隔的值等。 因为这是代码高尔夫,所以以字节为单位的最短代码获胜。 吨测试用例 1+2i+3j+4k =&gt; [1 2 3 4] -1+3i-3j+7k =&gt; [-1 3 -3 7] -1-4i-9j-2k =&gt; [-1 -4 -9 -2] 17-16i-15j-14k =&gt; [17 …

30
给定n,求i ^ n
挑战 在尽可能少的字符中,找到给定n的i ^ n值(大于0的正整数)。应将其输出为String。 对于那些不知道的人,i被定义为i ^ 2 = -1。所以: i ^ 1 = i i ^ 2 = -1 i ^ 3 = -i i ^ 4 = 1 然后重复此步骤。 规则 如果您的语言支持复数,请不要使用任何可以解决此问题的函数或算法。 浮点数不正确的答案可以返回小数,但整数输入应能给出准确的结果 奖励积分 -5如果可以计算出其中n也为负的值 如果您可以计算任何实数的值,则为-15(此奖金包括上述奖金中的-5) 祝好运!

3
产生牛顿分形
你们都知道牛顿法可以近似函数的根,不是吗?我在此任务中的目标是向您介绍该算法的一个有趣方面。 牛顿算法仅针对某些但所有复杂的输入值进行收敛。如果您描绘了复杂平面上所有输入值的方法的收敛性,通常会得到一个漂亮的分形,如下所示: 图片来自维基共享资源 技术指标 此任务的目标是生成此类分形。这意味着,您将获得多项式作为输入,并且必须以您选择的格式将相应的分形作为图像打印输出。 输入项 输入是用空格分隔的复数列表。它们在风格写下来&lt;Real part&gt;&lt;iImaginary part&gt;,这样的数字:5.32i3.05。您可能会假设输入数字的位数不超过4个且小于1000。它们中的第一个不能为零。例如,这可能是您程序的输入: 1 -2i7.5 23.0004i-3.8 i12 0 5.1233i0.1 数字被解释为从最高幂开始的多项式系数。在本说明书中的其余部分,输入多项式称为P。上面的输入等于这个多项式: f(x)= x 5 +(-2 + 7.5 i)x 4 +(23.0004-3.8 i)x 3 + 12 i x 2 + 5.1233 + 0.1 i 输入可能来自标准输入,传递给程序的参数或显示给程序的提示。您可以假定输入不包含任何前导或尾随空格字符。 渲染图 您必须通过以下方式渲染分形: 选择尽可能多的颜色作为P的根,再加上额外的颜色以发散 对于可见平面中的每个数字,确定方法是否收敛,如果是,则收敛到哪个根。根据结果​​为点着色。 不要打印标尺或其他花哨的东西 在这些点上打印一个黑点,这些点是定向的多项式根。每个根周围最多可以打印四个像素。 找到一种方式来选择可见平面,所有根都是可区分的,并且在可能的情况下在整个平面上广泛分布。尽管不需要完美放置输出框架,但我保留拒绝接受以不可接受的方式选择框架的答案的权利。总是在同一坐标上,所有根都在一个点上,依此类推。 输出图像的大小应为1024 * 1024像素。 渲染时间最长为10分钟 使用单精度浮点值就足够了 …

6
分解高斯整数
一个高斯整数是一个复杂的数字,其实虚部是整数。 像普通整数一样,高斯整数可以以独特的方式表示为高斯素数的乘积。这里的挑战是计算给定高斯整数的素数。 输入:高斯整数,不等于0,也不是单位(即1,-1,i和-i不能作为输入)。使用任何明智的格式,例如: 4-5i -5 * j + 4 (4,-5) 输出:高斯整数列表,它们是质数(即,没有一个可以表示为两个非单位高斯整数的乘积),并且其乘积等于输入数。输出列表中的所有数字都必须是平凡的,即不能为1,-1,i或-i。可以使用任何明智的输出格式。它不必与输入格式相同。 如果输出列表中有多个元素,则可能有几个正确的输出。例如,对于输入9,输出可以是[3,3]或[-3​​,-3]或[3i,-3i]或[-3​​i,3i]。 测试用例,(从此表中获取;每个测试用例2行) 2 1+i, 1-i 3i 3i 256 1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i,1+i 7+9i 1+i,2−i,3+2i 27+15i 1+i,3,7−2i 6840+585i -1-2i, 1+4i, 2+i, 3, 3, 6+i, 6+i 不允许使用用于分解高斯整数的内置函数。但是,允许通过内置函数分解普通整数。

13
is_gaussian_prime(z)?
任务 编写一个函数,该函数接受a,b代表高斯整数z = a+ib(复数)的两个整数。程序必须根据a+ib是高斯素数来返回true或false 。 定义: a + bi 当且仅当满足以下条件之一时,它是高斯素数: a且b均为非零且a^2 + b^2为素数 a是零,|b|是素数,|b| = 3 (mod 4) b是零,|a|是素数,|a| = 3 (mod 4) 细节 您应该只编写一个函数。如果您的语言没有函数,则可以假定整数存储在两个变量中,然后打印结果或将结果写入文件。 您不能使用语言的内置功能,例如isprime或prime_list或nthprime或factor。最低字节数获胜。程序必须a,b在a^2+b^232位(带符号)整数的where 处工作,并且结束时间不应超过30秒。 首要清单 点表示高斯平面上的质数(x=实数,y=虚轴): 一些较大的素数: (9940, 43833) (4190, 42741) (9557, 41412) (1437, 44090)

14
这是一个截断的三角形数字吗?
相关OEIS序列:A008867 截断三角数 三角数的一个共同属性是它们可以排列成三角形。例如,取21并排列成os 的三角形: Ø OO oo oo oo oo 让我们定义一个“截断:”从每个角切割相同大小的三角形。截断21的一种方法如下: 。 。。 oo oo 。oo。 。。哦。。 (的三角形.是从原始三角形切出的)。 o剩下12 秒,因此12是一个截断的三角形数字。 任务 您的工作是编写一个程序或函数(或等效函数),该程序或函数采用整数并返回(或使用任何标准输出方法)数字是否为截断的三角形数字。 规则 没有标准漏洞。 输入是非负整数。 切口的边长不能超过原始三角形的一半(即,切口不能重叠) 切口的边长可以为零。 测试用例 真相: 0 1 3 6 7 10 12 15 18 19 虚假: 2 4 5 8 9 11 13 14 16 17 …
20 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 

15
g o l f a t 2
有时将笛卡尔坐标转换(x,y)为极坐标确实很费力(r,phi)。虽然你可以计算r = sqrt(x^2+y^2)很容易,你经常计算时的角度需要的情况下有些区别phi,因为arcsin,arccos以及arctan和所有其他三角函数有一个共同域,每个只有跨越半个圆。 在许多语言中,都有用于将直角坐标转换为极坐标的内置atan2函数,或者至少具有给定的(x,y)计算角度的函数phi。 任务 你的任务是写一个程序/功能采用两个(浮点,但不能同时为零)笛卡尔坐标(x,y),并输出对应的极角phi,其中phi必须处于度,弧度或等级(与等级余平均gradians其是1 /整圆的400),以您较方便的为准。 角度是在正方向上测量的,对于,我们有零角度(1,0)。 细节 您不得使用内置插件是计算角度phi给出两个坐标,其中包括atan2,rect2polar,argOfComplexNumber和类似的功能。但是,您可以使用通常的三角函数及其反函数,它们只需一个参数。任何单位符号都是可选的。 半径r必须为非负数,并且phi必须在范围内[-360°, 360°](无论输出270°还是,都无关紧要-90°)。 例子 Input Output (1,1) 45° (0,3) 90° (-1,1) 135° (-5,0) 180° (-2,-2) 225° (0,-1.5) 270° (4,-5) 308.66°
18 code-golf  math  geometry  trigonometry  code-golf  number-theory  fibonacci  code-golf  math  sequence  fibonacci  code-golf  string  code-golf  math  graphical-output  geometry  code-golf  string  code-golf  math  geometry  code-golf  math  bitwise  number  popularity-contest  graphical-output  image-processing  fractal  code-golf  number-theory  code-golf  date  multi-threading  code-golf  math  code-golf  math  number  sequence  code-golf  math  number  sequence  arithmetic  code-golf  decision-problem  logic-gates  code-golf  decision-problem  balanced-string  code-golf  math  arithmetic  combinatorics  code-golf  expression-building  code-golf  physics  code-golf  abstract-algebra  code-golf  number  arithmetic  integer  code-golf  ascii-art  number  code-golf  number-theory  primes  code-golf  arithmetic  grid  code-golf  code-golf  sequence  code-golf  kolmogorov-complexity  compression  code-golf  math  number  arithmetic  array-manipulation  code-golf  primes  hexagonal-grid  complex-numbers  code-golf  number  counting  code-golf  math  number  arithmetic 

5
每个组件上的电压是多少?
下图显示了RLC电路。RLC电路是由串联或并联连接的电阻器(R),电感器(L)和电容器(C)组成的电路。(1) 为了简化计算,通常在频率(Laplace)域而不是时域中工作。 您的任务是: 就拿值R,L并C作为输入,并返回电压VR,VL并VC 到Laplace域的转换如下: R = R XL = j*w*L // OK, XL = w*L, and ZL = j*XL, but don't mind this here. XC = 1/(j*w*C) // I haven't ruined physics, it's only a minor terminology tweak 其中j = sqrt(-1)和w = 2*pi*50(频率为50 Hz)。 组件串联时的组合阻抗为Z = R + XL …

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.