Questions tagged «trigonometry»

对于三角学起着重要作用的挑战。

8
上升还是下降?
给定山羊的图像,您的程序应该最好尝试识别山羊是否倒置。 例子 这些是输入可能是什么的示例。不是实际的投入 输入: 输出: Downgoat 规格 您的程序最多应为30,000个字节 输入将包含完整的山羊 图片将始终包含山羊 如果山羊倒立,输出Downgoat,否则Upgoat 输入将是您可以将图像作为输入(文件名,图像的base64等)。 要点文件名仅供参考,不要依赖于包含“ Upgoat”或“ Downgoat”的图像名称或其他元数据。 请不要硬编码。这很无聊,我无法完全执行它,但是我可以很好地询问。 测试用例 要点与图像。开头的图像downgoat具有Downgoat输出和图像开始与upgoat有Upgoat输出。 第二批测试用例 确保在所有测试用例上测试图像。这些图像是jpgs。图像大小确实有所不同,但没有说太多。 注意:在接受答案之前,可以添加一些测试用例,以避免使用硬编码的答案并检查程序的总体性能。 正确获得我的头像的奖励积分:P 计分 分数是可以通过以下方式计算的百分比: (number_correct / total) * 100

30
单个像素沿圆形路径移动
这是一个图形输出挑战,任务是提供每种语言最短的代码。 任务 您的代码应绘制一个紫色像素(十六进制值#800080或rgb(128,0,128)),顺时针旋转一个圆圈。绕一圈完整的旅程大约需要60秒,并且应无限期地继续。除像素外,其他任何内容都不应显示在屏幕或窗口上。圆的宽度应为屏幕或窗口的宽度的0.75(适当舍入),背景应为白色。为了防止出现笨拙的溶液,屏幕或窗口的宽度至少应为100像素。 您的代码应为完整程序。 语言和图书馆 您可以使用任何喜欢的语言或库。但是,我希望能够在可能的情况下对您的代码进行测试,因此,如果您可以提供有关如何在Ubuntu中运行代码的明确说明,将不胜感激。 缺少前二十种语言。需要帮助。 以下前二十种编程语言目前根本没有任何解决方案。 C,C ++,C#,Python,PHP,Visual Basic .NET,Perl,Delphi / Object Pascal,Assembly,Objective-C,Swift,Pascal,Matlab / Octave,PL / SQL,OpenEdge ABL,R 目录 这篇文章底部的Stack Snippet会根据答案a)生成目录,a)作为每种语言最短解决方案的列表,b)作为整体排行榜。 为确保您的答案显示出来,请使用以下Markdown模板以标题开头。 ## Language Name, N bytes N您提交的文件大小在哪里。如果您提高了分数,则可以将旧分数保留在标题中,方法是将它们打掉。例如: ## Ruby, <s>104</s> <s>101</s> 96 bytes 如果要在标头中包含多个数字(例如,因为您的分数是两个文件的总和,或者您想单独列出解释器标志罚分),请确保实际分数是标头中的最后一个数字: ## Perl, 43 + 2 (-p flag) = 45 bytes 您还可以将语言名称设置为链接,然后该链接将显示在代码段中: ## [><>](http://esolangs.org/wiki/Fish), …

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)。 获奖 以字节为单位的最短代码获胜。

15
黑匣子三角法
写一个程序或功能,可以区分以下12个三角函数: sin, cos, tan, asin, acos, atan, sinh, cosh, tanh, asinh, acosh, atanh。 您的程序将上面的功能之一称为黑匣子,并且应按照上面给出的名称或以您的语言命名的方式输出该函数的名称。 这是代码高尔夫球,因此每种语言中最短的答案将获胜。您应该通过包含所有12种可能的输入的测试用例来证明您的代码可以正常工作。如果您选择的语言不包含上述所有功能的内建函数,则您必须为缺失的函数提供自己的明智实现。 进一步说明 如果基础内建程序可以处理复数,则允许使用复数查询黑盒。 由于仅使用实数时,对黑盒函数的查询可能会给出域错误。在这种情况下,您应该假设黑匣子仅传达错误的存在,而不传达错误的来源。dÔ 米一个ç ö 小号ħ ∩ d Ô 中号一吨一个Ñ ħ = ∅ dØ米 一种CØsH∩dØ米 一种Ť一种ñH=∅ dom\ acosh \cap dom\ atanh = \emptyset 如果返回的不是其他错误(例如NaN或null),则您的提交应该能够处理它们。 感谢您提供有用的沙盒反馈!

30
行人余弦
我的老板只是告诉我写一个余弦函数。作为一名数学高手,我立即想到了合适的泰勒级数。 cos(x) = 1 / 0! - x^2 / 2! + x^4 / 4! - x^6 / 6! + ... + (-1)^k x^(2k) / (2k)! + ... 但是,我的老板很挑剔。他希望能够精确指定要计算的泰勒级数的项。你能帮我写这个功能吗? 你的任务 给定x从0到的浮点值2 pi且n小于的正整数100,计算n上给出的泰勒级数的第一项的和cos(x)。 这是代码高尔夫球,因此最短的代码获胜。输入和输出可以采用任何标准方式进行。禁止出现标准漏洞。 笔记 输入可以采取任何形式合理的,只要有明确分开x和n。 输入和输出应为浮点值,至少与使用具有某些标准舍入规则的单精度IEEE浮点数计算公式的精度一样。 如果对所使用的语言有意义,则可以使用精确的有理量进行计算,但是输入和输出仍应为十进制形式。 例子 x | n | Output ----+----+-------------- 0.0 | 1 | 1.0 0.5 | …

12
伟大的正弦
介绍 每个人都听说过正弦(sin),余弦(cos),正切(tan),余切(cot),割线(sec)和割线(csc)。几乎每个角度都有它们。 远不如已知的,或记住的,是exsecant(exsec) ,excosecant(excsc) ,正矢(正矢量),和coversine(CVS) 。几乎每个角度都具有这些角度。有些甚至鲜为人知,但我们会坚持下去。 我为这些角度为45°的角度创建了可视化效果。 挑战 创建一个程序,该程序接受一个angle n(以度为单位)的输入,并将输出: 角度正弦 n 角度的余弦 n 角正切 n 角度的割线 n 以下至少之一。此列表中的所有其他项目都将获得-5%的奖励,最多-25%。 角度角度 n 角度余割 n 角形剂 n 角度的 n 角度的正弦 n 角余切 n 如果应用奖金后分数为小数,则四舍五入至最接近的整数。 输入项 您可以通过STDIN或函数调用接受输入。n将传递一个参数。 n 将始终是一个大于0但小于或等于90的整数。 输出量 这是一个正弦为45°的输出示例。所有输出项目必须采用这种格式。项目的顺序无关紧要。 sine: 0.70710678118 所有项目的小数点后必须精确到4个数字(精确到千分之一)。以下是一些四舍五入的示例。 0 -&gt; 0.0000 1 -&gt; 1.0000 0.2588190451 -&gt; 0.2588 …

7
极坐标图上行进的两点之间的距离
问题简要说明 编写一个程序,查找仅在从原点发出的光线和以原点为中心的圆上传播的两点之间的最小距离。 前提说明 现在,让我们想象一下我们在飞机上,并且只允许以特殊方式旅行。我们被允许乘坐任何从原点发出的射线旅行。 我们也可以在以圆为中心的任何圆上旅行 现在我们的目标是从飞机上的一个点移动到另一点。但是,我们不能只沿一条简单的欧几里得路径行进,只有当点恰好落在从中心发出的光线上时,我们才能这样做。 我们可以沿着这条路旅行,因为它落在我们的光线之一上。 我们还可以在以原点为中心的圆上旅行。 例子 现在是挑战: 我们必须以最短的路径从一个点到达另一个点。通常,这是绕圈和射线旅行的组合。 但是,这也可能在两条光线上传播。 有时,存在两条经过最小距离的路径。 问题 您的挑战是编写一个程序,如果我们遵循这些规则,当给定两个点时,它们将为我们提供它们之间的最小距离。输入可以是矩形或极坐标形式,并且输出应为一个数字,即两者之间的距离。 测试用例 (带矩形输入) (1,1) (1,-1) -&gt; ~ 2.22144 (0,0) (1, 1) -&gt; ~ 1.41421 (1,0) (-0.4161 , 0.90929) -&gt; ~ 2 (1,1) (1, 0) -&gt; ~ 1.19961 (1,2) (3, 4) -&gt; ~ 3.16609

25
画一个规则的多边形
该代码高尔夫球的目标是在边数和半径(从中心到顶点的距离)下绘制一个规则的多边形(边长相等)。 边数和半径可以通过文件STDIN或仅是一个普通的旧变量输入。使用您语言中较短的内容。 如果实际绘制的是图像而不是ASCII图,则占字符/字节总数的-25%。

11
最大化平方差
考虑从1到的整数值的置换N。例如此示例N = 4: [1, 3, 4, 2] 我们将认为此列表是循环的,因此1和2被视为相邻列表。我们可以为这样的列表计算的一个量是相邻值的总平方差: (1-3)² + (3-4)² + (4-2)² + (2-1)² = 10 给定正整数,您的任务是找到一个最大化此数量的排列N。在N = 4上面的例子中不是最佳的(实际上,这是最小的)。18通过以下排列(以及其他几个排列),我们可以实现的总平方差: [1, 4, 2, 3] 您的算法必须在(的N)多项式时间内运行。特别是,您不能简单地计算所有排列的总平方差。 您可以编写程序或函数,通过STDIN(或最接近的替代方案),命令行自变量或函数自变量获取输入,并通过STDOUT(或最接近的替代方案),函数返回值或函数(out)参数输出结果。 输出可以采用任何方便,明确,平坦的列表或字符串格式。您可以选择从与返回值的列表0,以N-1代替1向N。 适用标准代码高尔夫球规则。 测试数据 这个问题有一个很好的分析解决方案。例如,所有有效的解决方案N = 10均等效于以下列表(直至循环移位和反转): [7, 5, 6, 4, 8, 2, 10, 1, 9, 3] 我不想透露过多的信息(尽管足以找出模式),因此无需给出更多示例,您可以检查您的结果是否具有给定的总平方差N: N Total squared difference 1 0 2 …
19 code-golf  array-manipulation  permutations  restricted-complexity  code-golf  geometry  grid  code-golf  string  sorting  code-golf  simulation  code-golf  string  code-golf  arithmetic  code-golf  sorting  code-golf  string  code-golf  sorting  code-golf  interpreter  code-golf  number  kolmogorov-complexity  natural-language  conversion  code-golf  random  internet  code-golf  board-game  code-golf  number  sequence  code-golf  math  number  code-challenge  image-processing  classification  test-battery  code-golf  ascii-art  code-golf  tips  code-golf  arithmetic  code-golf  tips  code-golf  tips  javascript  code-golf  array-manipulation  code-golf  ascii-art  code-golf  string  binary  code-golf  arithmetic  linear-algebra  matrix  code-golf  sequence  code-golf  math  number  arithmetic  code-golf  primes  code-golf  math  code-golf  array-manipulation  counting  code-golf  arithmetic  code-golf  quine  code-generation  polyglot  code-golf  math  kolmogorov-complexity  trigonometry  code-golf  string  encryption 

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 

4
一周中压缩的天数
输入星期几列表,则输出列表中最短的排序表示形式。 输入的格式是由一个或多个双字符子串的字符串Su(星期日), Mo(星期一), Tu(等), ,We,Th, Fr和Sa。输入不一定必须以排序的顺序给出。 要将输入转换为输出格式, 从星期天开始按星期几对输入进行排序(例如ThMoSaSuFrTuWe-&gt; SuMoTuWeThFrSa)。 如果不引起歧义,请将缩写词减少到一个字母。例如,之所以SuMoTuWe成为,SMTW是因为第一个S不可能在星期六,因为这样会使输出未排序(与T相同)。但是,ThFrSa应该成为ThFS,因为星期二和星期四都在星期五之前,并将其减小以TFS产生歧义。 如果输出为now MTWTF,则D改为输出(代表“ 工作日 s”)。同样,SS应该成为E一周结束。最后, SMTWTFS应该成为A对所有天。 输入和输出都必须是单个字符串。 由于这是code-golf,因此以字节为单位的最短代码为准。 测试用例: In Out | In Out -----------------------|-------------------- SuTu STu | SuTuWe STW SuTuSa STuS | SuWeTh SWT TuThSa TTS | TuThSu STT Su Su | Sa Sa WeTh WT | FrTh ThF WeTu …

1
在圆形交叉点中查找专用区域
这是给您一个看似具有挑战性的几何难题! 给定一个圆A和n其他圆B[n],找出包含在A其中的总面积不在的任何圆之内B。 您的代码应尽可能短。 输入项 您的输入应包含以下信息: 一个浮点数,表示圆的半径A。 浮点数列表,用于表示中的圆半径B。 中的圆心列表B。您的程序可能期望中心在极坐标或笛卡尔坐标中。 (可选)您可能会收到nB中的圆圈数。此输入不是必需的。 假定圆心A是原点,即点(0, 0)。 这是保证没有两个圈子里B是相同的,但不保证:1,各界B相交A,各中心B在外面A,或没有两个圆B相交。确保您的解决方案可以处理各种边缘情况。 您可以以任何顺序接收输入,包括文本输入(通过stdin或您的语言的等效语言),函数参数或命令行参数的形式。 如果选择接收文本输入,则输入之间应有一个或两个字符的可打印ASCII分隔符。 输出量 您的程序或函数应输出一个浮点数,该数字代表A不在的任何圆圈内的总面积B。对于所有测试用例,您的答案应至少精确到三个有效数字。 通用代码高尔夫球规则适用。 您的解决方案不应依赖圆内的采样点来确定面积。 不允许使用自动定位圆的交点,在圆的交点内查找区域或立即解决此问题的内置函数。 测试用例 在每个图像中,圆圈A以蓝色勾勒出轮廓,圆圈B以绿色勾勒出黑色轮廓。应返回的区域以红色填充。 (特别感谢Rainer P.检查我的解决方案) 测试用例1: A = {x: 0, y: 0, rad: 50} B[0] = {x: 0, y: 0, rad: 100} Result: 0.00 测试案例2: A = {x: 0, y: 0, rad: …

19
近似点数
该赏金过期5天。这个问题的答案有资格获得+100声望奖励。 Adám希望奖励现有答案: 这个解释清楚的答案是APL中的第一个答案,因此有资格获得此赏金。 的蒂数是余弦函数的固定点,或溶液等式COS(X)= X。1个 您的任务是制作近似于该常数的代码。您的代码应代表一个接受整数作为输入并输出实数的函数。随着输入的增加,功能的极限应为Dottie数。 您可以输出数字的分数,小数或代数形式。您的输出应该能够任意精确,浮点和双精度不足以应对这一挑战。如果您的语言不支持任意精度数字,则必须实现它们或选择一种新的语言。 这是一个代码问题,因此答案将以字节计分,而字节越少越好。 提示 一种计算常数的方法是取任意数字并对其重复应用余弦。随着应用次数趋于无穷大,结果趋向于余弦的固定点。 这是一个相当准确的数字近似值。 0.739085133215161 1:在这里我们将以弧度表示余弦

3
正则字形
给定顶点数量n ≥ 3和“步长” 1 ≤ m &lt; n/2 (指示两个连接的顶点之间的距离),输出相应规则多边形的图形表示。如果该多边形包含多个闭合回路,则每个回路必须以不同的线条颜色呈现。(如果这听起来令人困惑,那么下面的示例将有望清除这些问题。) 规则 任何合理的问题解决方案都可能会自动满足这些规则-它们只是在此处对输出的参数施加一些约束,以防止出现诸如“此黑色块完全是一个多义字,但您看不到它的原因”之类的答案。我将线宽设置为9000以上。” 您可以将多边形图呈现到文件(可以将其写入光盘或标准输出流)中,也可以将其显示在屏幕上。 您可以使用矢量或栅格图形。如果对输出进行光栅化,则图像的尺寸必须为400x400像素或更大,并且多边形的半径(从中心到每个顶点的距离)必须在边长的35%和50%之间。 多边形的纵横比必须为1(以使其顶点位于适当的圆上)-图像的画布可能为矩形。 测线图的线的粗细不得超过半径的5%(当然,粗线的粗细必须为非零)。 除了多边形图,您还可以渲染轴或框架,但只能渲染其他东西。 您可以选择任何(纯色)背景色。 对于由多个闭环组成的组合词,您必须支持至少6种视觉上不同的颜色,所有这些颜色都必须与背景不同。(只要阴影在整个光谱中充分散布,灰度就可以了。)您的代码仍必须可以运行6个以上的循环,但是对于任何其他循环,颜色都不必是可区分的(即,您也可以重用)之前循环中的颜色)。 这是代码高尔夫球,因此最短的答案(以字节为单位)获胜。 例子 以下是所有输出n = 16(直到列对应,n行对应m): 点击查看大图。 作为更大的示例n,这里(n, m) = (29, 11)和(30, 12):

5
快速触发计算
快速三角计算 您的任务是创建一个程序,该程序可以以度为单位计算角度的正弦,余弦和正切。 规则 没有内置的三角函数(如果您的语言有,则甚至不包括割线,割线和切线)。 您可以使用查找表,但它们的总大小不能超过3000个成员(对于所有三个操作的总和)。请使其从文件(例如trig.lookup)中读取表,以免它们混淆代码。 没有网络访问。 您必须按照以下说明正确舍入输出。不要使用地板或天花板。 您可以使用任何方法来计算值,例如连续分数,只要它对7个有效数字是正确的即可。 您的代码必须能够自行计时。从您的时间中排除文件I / O操作-因此只需对执行触发和任何舍入的函数计时。 我必须能够运行您的代码。请发布指向免费提供的编译器/解释器的链接,并提供编译/运行代码所需的说明(例如,传递给GCC的选项)。 有标准漏洞。 输入格式 从名为的文件中读取,trig.in除非您的语言不支持文件I / O。 角度在0到360之间(包括0和360)。 输入将包括与十位有效数字的角度(十进制数字),并用新行分隔。例如: 90.00000000 74.54390000 175.5000000 输出格式 对于提供的每个角度,必须在一行上将其正弦,余弦和切线输出为7个有效数字,并用空格隔开。使用“科学符号”,例如1.745329E-5用于tan 0.001或1.000000E+0用于sin 90。 用表示无穷或NaN n,例如的输出90.00000000应为1.000000 0.000000 n。 如果输入是由换行符分隔的三个角度,则您的输出应包括三条线,每条线包含正弦,余弦和切线。 您可能不会输出其他任何内容。 trig.out除非您的语言不支持文件I / O,否则输出到名为的文件。 计分 最快的代码。面临的挑战是编写一个程序,以尽快计算这三个值。最快的时间获胜。 每个人都会收到许多角度的相同测试输入。 时间将记录在我的机器上。 您的得分是在同一输入上进行三轮测试的平均值(您显然无法在两次测试之间保存任何内容)。 不包括编译时间。这个挑战更多地是关于所使用的方法,而不是语言。(如果有人能指出我如何排除诸如Java之类的语言的编译时间,我将不胜感激) 我的机器是Ubuntu 14.04安装。处理器的统计信息位于Pastebin上(通过运行获取cat /proc/cpuinfo)。 测试完毕后,我会在您的答案中编辑您的时间。

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.