Questions tagged «arithmetic»

与基本算术有关的挑战。

26
奇数偶数,正负数
给定N,输出此无限序列的第N个项: -1 2 -2 1 -3 4 -4 3 -5 6 -6 5 -7 8 -8 7 -9 10 -10 9 -11 12 -12 11 ... etc. 您可以根据需要将N索引为0或1。 例如,如果0索引然后输入0,1,2,3,4应该产生相应的输出-1,2,-2,1,-3。 如果1索引然后输入1,2,3,4,5应该产生相应的输出-1,2,-2,1,-3。 需要明确的是,该序列是通过将两次重复的正整数序列生成的 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 …

30
除法和余数
尽管在大多数“标准”语言中可能是微不足道的,但这一挑战是针对那些在本网站上很少见到的深奥,低级和/或难以使用的语言。它应该提供一个有趣的问题来解决,因此这是您尝试阅读的奇怪语言的机会! 任务 取两个自然数a和b作为输入,和其它输出两个数字:整数除法的结果a/b,并且这种除法的余数(a%b)。 这是代码高尔夫:每种语言的最短答案(以字节为单位)获胜! 输入输出 0 <= a<= 255,1 <= b<= 255。您的每个输入(以及输出)也都适合一个字节。 您可以为输入和输出选择任何喜欢的格式,只要可以清楚地区分两个数字即可(例如,没有定界符就不能同时打印两个结果) 例子 a,b->division,remainder 5,7->0,5 5,1->5,0 18,4->4,2 255,25->10,5 注意:禁止同时返回除法结果和余数的内建函数。至少向我们展示您的语言如何将两个函数应用于相同的参数。 注意2:与往常一样,非常欢迎您对代码的工作方式进行解释,即使您认为它易于阅读,其他人也可能不这么认为! 排行榜 这是一个堆栈片段,用于按语言生成获奖者概览。 为确保您的答案显示出来,请使用以下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), …

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

30
斐波那契
定义 F(n)正整数上的斐波那契数列定义如下: 1. F(1) = 1 2. F(2) = 1 3. F(n) = F(n-1) + F(n-2), where n is an integer and n > 2 正整数的斐波那契数是的乘积[F(1), F(2), ..., F(n)]。 任务 给定正整数n,找到的斐波那契n。 眼镜 100合理的计算机必须在5秒钟内计算出fibonacciorial 。 测试用例 n Fibonacci-orial of n 1 1 2 1 3 2 4 6 5 30 6 …

14
总和为15
编写一个程序或函数,该程序或函数将非负整数数组作为输入,并按顺序输出带有输入数组元素的一组向量/数组,并进行拆分,以使每个向量的总和为15。 N个元素不会“命中15个”,那么必须使通过15个元素的数字被截断,其余元素将成为下一个向量的第一个元素。直到您到达输入数组的末尾为止。如果最终向量的总和小于15,则必须在末尾添加一个数字以使总和增加。 通过查看示例,我认为规则更容易理解: Input: 3 7 5 10 Output: 3 7 5 <- Sum is 15 10 5 <- 5 is added to make the sum 15 Input: 2 4 5 9 2 3 5 0 2 4 5 0 3 Output: 2 4 5 4 <- Sum 15. 9 …

20
总结一下
一个简单但希望不是很琐碎的挑战: 编写一个程序或函数k求和数的乘积n。进一步来说: 输入:两个正整数n和k(或有序整数对等) 输出:所有的正除数的总和n是k整数次方 例如11!= 39916800有六个因数为立方的除数,即1、8、27、64、216和1728。因此,给定输入39916800和3,程序应返回它们的总和2044。 其他测试用例: {40320, 1} -> 159120 {40320, 2} -> 850 {40320, 3} -> 73 {40320, 4} -> 17 {40320, 5} -> 33 {40320, 6} -> 65 {40320, 7} -> 129 {40320, 8} -> 1 {46656, 1} -> 138811 {46656, 2} -> 69700 {46656, 3} -> …

30
评估三角形的长宽比
给定三角形的三个边长,请使用以下公式评估其长宽比AR: 哪里 三角形越接近等边,则1其纵横比越接近。长宽比大于或等于1有效三角形。 输入项 输入的是三个实数正数,可以将其封装在列表中,也可以根据需要封装任何类似的数字。 无论输入三个边长的顺序如何,程序都必须输出相同的值。 这三个数字将始终是一个三角形的有效sidelengths(退化三角形像一个与sidelengths 1,1并且2将不给出作为输入)。当值变得非常接近简并三角形时,您不必担心浮点数不准确(例如,您的程序会division by 0因输入错误而接受[1, 1, 1.9999999999999999])。 输入可以通过STDIN,作为函数参数或任何类似参数给出。 产出 输出是大于或等于1您的语言可接受的标准精度的实数。 输出可以打印到STDOUT,从函数返回或类似的东西。 测试用例 Inputs Output 1 1 1 1 3 4 5 1.25 42 42 3.14 ≈ 6.9476 14 6 12 1.575 6 12 14 1.575 0.5 0.6 0.7 ≈ 1.09375 计分 这是代码高尔夫球,因此最短的答案以字节为单位。

9
蛇化字符串
修饰后的字符串如下所示: T AnE eOf ifi ing h s x l A k e r isI amp Sna dSt 你的任务 取一个字符串s和一个size n,然后输出连串的字符串。输入ThisIsAnExampleOfaSnakifiedString和3将产生上面的示例。 技术指标 s 只会在代码点33和126之间(含端点)包含ASCII字符(不包含空格或换行符)。 s 长度在1到100个字符之间。 n是一个整数,代表每个输出字符串段的大小。组成“蛇”中曲线的每一行字符(上/下或左/右)都是n字符长。有关示例,请参见测试用例。 n 介于3到10之间(含3和10)。 输出字符串始终开始指向下方。 每行上都可以使用尾随空格。 在输出末尾也可以尾随换行符。 不允许前导空格。 code-golf表示以字节为单位的最短代码获胜。 测试用例 a 3 a ---------- Hello,World! 3 H Wor e , l llo d! ---------- ProgrammingPuzzlesAndCodeGolf …
35 code-golf  string  ascii-art  code-golf  code-golf  string  balanced-string  decision-problem  code-golf  string  geometry  grid  code-golf  tips  lisp  code-golf  quine  tips  king-of-the-hill  code-challenge  math  code-golf  string  palindrome  math  fastest-code  code-golf  string  counting  code-golf  code-golf  internet  code-golf  quine  source-layout  hello-world  code-golf  math  number  sequence  arithmetic  code-golf  ascii-art  grid  code-golf  number  grid  code-golf  string  crossword  code-golf  code-golf  ascii-art  grid  counting  code-golf  code-golf  math  sequence  arithmetic  number-theory  code-golf  code-golf  graphical-output  geometry  random  code-golf  ascii-art  grid  counting  code-golf  string  ascii-art  code-challenge  test-battery  code-golf  string  code-golf  ascii-art  kolmogorov-complexity  code-golf  interpreter  code-golf  math  sequence  code-golf  math  primes  set-partitions  code-golf 

22
将数组变成数学题
给定非负整数的非空列表,请考虑将其重写为算术问题,其中: +在成对的数字之间插入一个加号(),这些数字从左到右递增(也就是从列表的开头到结尾)。 -在从左到右递减的数字对之间插入一个减号()。 *在成对的数字对之间插入一个乘号()。 换一种说法:if ,if 和if a,b会成为任何子列表。a+ba<ba-ba>ba*ba==b 例如清单 [12, 0, 7, 7, 29, 10, 2, 2, 1] 将成为表达 12 - 0 + 7*7 + 29 - 10 - 2*2 - 1 结果为 75。 编写一个包含此类列表并对其进行评估,打印或返回结果的程序或函数。 操作顺序很重要。乘法应该在任何加法或减法之前完成。 如果输入列表中有一个数字,那应该是它的计算结果。例如[64]应该给64。 使用eval或exec或类似结构是允许的。 以下是一些其他示例: [list] expression value [0] 0 0 [1] 1 1 [78557] 78557 …

21
容易相乘的数字
您的任务是确定两个数字是否容易相乘。这意味着,从乘法步骤和加法步骤来看,它们的以10为基数的long乘法在位值之间没有任何进位(重新组合)。当每一对数字相乘等于9或更少且每列的总和等于9或更少时,就会发生这种情况。 例如,331并且1021很容易相乘: 331 x 1021 ------ + 331 662 0 331 ------ 337951 如果我们以其他顺序相乘,也是如此(一如既往): 1021 x 331 ------ + 1021 3063 3063 ------ 337951 但是,431并且1021也不容易相乘,在指示的列之间发生进位: 431 x 1021 ------ + 431 862 0 431 ------ 440051 ^^^ 同样,12并且16也不容易相乘,因为即使相乘没有发生进位,在相乘12 * 6得到get 72时也会发生结转。 12 x 16 ---- + 72 12 ---- 192 …

30
将字符串乘以数字!
前一阵子关于将字符串相乘存在一个挑战。它向我们展示了如何不仅可以将数字相乘,而且还可以将字符串相乘。但是,我们仍然无法正确地将数字乘以字符串。已经尝试过这样做,但这显然是错误的。我们需要解决这个问题! 你的任务: 编写一个将两个输入(一个字符串和一个整数)相乘的函数或程序。要将字符串乘以整数(适当),请将字符串拆分为字符,将每个字符重复等于整数的次数,然后将字符重新粘在一起。如果整数为负数,则在第一步中使用其绝对值,然后反转字符串。如果输入为0,则不输出任何东西(乘以0等于零)。 输入: 一个仅由可打印的ASCII字符和换行符以及一个整数(可能为负数)组成的字符串。 输出: 字符串乘以整数。 例子: Hello World!, 3 --> HHHeeellllllooo WWWooorrrlllddd!!! foo, 12 --> ffffffffffffoooooooooooooooooooooooo String, -3 --> gggnnniiirrrtttSSS This is a fun challenge, 0 --> Hello World!, 2 --> HHeelllloo WWoorrlldd!! 得分: 这是代码高尔夫球,最低字节数获胜!

30
两种力量的演变
这是最初由用户Helka Homba撰写的《 Hello World!》演变的转贴。 由于此处存在元共识,因此不应将其作为重复项关闭。 最初是在两年前被问到的,最后一次活跃在六个月前。我有权从赫尔卡Homba张贴此位置 自原始版本以来,已经发明了许多语言,并且许多人加入了该站点,却再也没有机会回答原始版本,因此我认为这种重新发布是可以接受的。 面临的挑战是制作一个可以输出2^n到stdout 的程序,程序n的编号在哪里。值得注意的是,在您提交的答案中,您的程序与程序之间的Levenshtein距离必须为10或更小。 这将如何工作 下面,我将使用C#提交第一个答案,该答案将显示2 ^(n = 1)= 2。 下一位要回答的人必须使用最多10个单字符插入,删除或替换来修改代码,以便当以新答案的语言运行该代码时,它会打印2^n(带有n答案编号)。例如,第25个答案(假设它在Pyth中)将显示2 ^ 25或33554432。 这将一直持续到所有人陷入困境,因为没有新语言时,只需更改10个字符就可以运行最后一个答案的程序。共同的目标是看我们能保持多长时间,所以请不要进行任何晦涩或不必要的字符编辑(但这不是必需的)。 格式化 请按以下格式设置您的信息: #Answer N - [language] [code] [notes, explanation, observations, whatever] 其中N是答案编号(递增,N = 1、2、3,...)。 您不必知道更改了哪些确切字符。只要确保Levenshtein距离是0到10。 如果您使用某种语言回答,或者得到的代码只是一团糟,请说明您做了什么以及为什么起作用,尽管这不是必需的。 规则 了解这一挑战的关键在于,一次只能一个人回答,每个答案取决于之前的回答。 永远不会有两个答案使用相同的N。如果两个人碰巧同时回答某个N,则稍后回答的那个人(即使相差几秒钟)也应该大方删除他们的答案。 此外... 用户不能连续提交两个答案。(例如,由于我提交了答案1,所以我不能回答2,但是我可以回答3。) 尽量避免在短时间内发布过多答案。 每个答案必须使用不同的编程语言。 您可以使用语言的不同主要版本,例如Python 2/3 如果传统上使用两种不同的名称来称呼语言,则它们被视为不同的语言。(此处可能会有一些歧义,但不要让那毁了比赛。) 您不必坚持使用ASCII,可以使用所需的任何字符。Levenshtein距离将以unicode 字符进行度量。 输出应为2^n,不得为其他字符。(引导/尾随空格很好,如>>>或不可抑制的输出也可以ans=) 如果您的语言没有标准输出,请使用通常用于快速输出文本的任何内容(例如,console.log或alert在JavaScript中)。 当必须输出的2的幂变大时,您可能会假定内存无限,但不是整数大小。请注意整数溢出。 …

21
算术导数
函数的导数是数学,工程学,物理学,生物学,化学以及许多其他科学的基石。今天,我们将要计算仅与切线相关的东西:算术导数。 定义 此处,算术导数a(n)或n'(A003415)由与函数的导数相似的多个属性定义。 a(0) = a(1) = 0, a(p) = 1,哪里p有素数? a(mn) = m*a(n) + n*a(m)。 第三条规则是基于功能分化的产品规则:对于函数f(x)和g(x),(fg)' = f'g + fg'。因此,用数字(ab)' = a'b + ab'。 还要注意,由于算术导数可以通过此简单关系扩展为负数a(-n) = -a(n),因此输入可能为负。 规则 编写一个程序或函数,给定任何整数n,该程序或函数将返回的算术导数n。 输入为,以避免整数大小和数字过大而无法考虑合理时间的问题。理论上,您的算法仍应能够计算该范围以外数字的算术导数。-230 < n < 230 允许内置符号数学,素因数分解和微分。 例子 > a(1) 0 > a(7) 1 > a(14) # a(7)*2 + a(2)*7 = …

24
按相乘排序
您应该编写一个程序或函数,给定正整数列表,将每个元素与可能的最小正整数相乘,以创建严格增加的列表。 例如,如果输入是 5 4 12 1 3 乘法将是 5*1=5 4*2=8 12*1=12 1*13=13 3*5=15 输出将是递增列表 5 8 12 13 15 输入项 包含至少1个元素的正整数列表 输出量 正整数列表 例子 9 => 9 1 2 => 1 2 2 1 => 2 3 7 3 => 7 9 1 1 1 1 => 1 2 3 …

5
数学表达式中“ /”和“÷”之间的历史差异
介绍: 受到关于表达式的讨论的启发,讨论已经进行了很多年。6÷2(1+2)6÷2(1+2)6÷2(1+2) 使用表达式,数学家将很快看到正确答案是,而具有简单数学背景的人从学校毕业后将很快看到正确答案是。那么,这种争议何在呢?因此得出不同的答案呢?在编写方式时有两个相互冲突的规则。一种是由于零件,一种是由于分隔符号。6÷2(1+2)6÷2(1+2)6÷2(1+2)1119996 ÷ 2 (1+2)6÷2(1+2)6÷2(1+2)2(÷ 虽然这两个数学家和“普通人”将使用PEMDAS(括号-指数-司/乘法-加法/减法),数学家表达被这样下面评价,因为是一样例如单项式又名“ 由于并置的隐式乘法导致的单个项 ”(因此in的一部分),其计算结果将不同于(二项式又称为两个项):2 (3 )2(3)2(3)2 倍22X22x^2PPEMDAS2 × (3 )2×(3)2×(3) 6 ÷ 2 (1 + 2 )→ 62 (3 )→ 66→ 16÷2(1个+2)→62(3)→66→1个6÷2(1+2) → \frac{6}{2(3)} → \frac{6}{6} → 1 而对于“普通人”,和将是相同的(因此是in的一部分),因此他们将改用它:2 (3 )2(3)2(3)2 × (3 )2×(3)2×(3)MDPEMDAS 6 ÷ 2 (1 + 2 )→ 6 / 2 × …

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.