这是偶数还是奇数?


65

注意:尚未出现香草奇偶校验测试的挑战(存在C / C ++挑战,但不允许使用C / C ++以外的语言,而其他非香草语言也大都关闭了),所以我要发布一。

给定一个正整数,以真/假值输出其奇偶校验(即,如果数字是奇数或偶数)。您可以选择真实结果是对应于奇数输入还是偶数输入。


例子

假定真/假为偶数和奇数(这不是必需的,您可以分别使用其他“真/假”值):

(Input):(Output)
1:False
2:True
16384:True
99999999:False

排行榜


2
这不是我第一次将数学与计算奇偶校验相混淆…… 毕竟这是一个代码站点!
尼尔

由于这是相当多的这些(一个123)的问题,它应该可能有一个片段,看所有的答案。
fəˈnɛtɪk

4
@MikeBufardeci因为根据您所在的国家/地区,“目录”的拼写有所不同。对于我们这些在美国的人来说,这是“目录”。“排行榜”是文化不变的。
mbomb007 '17

2
@tuskiomi挑战仅询问正整数。(0被认为是偶数,但不是正数)
卡尔文的爱好

3
@LucioCrusca欢迎来到PPCG!Code Golf的基本思想是以尽可能短的形式编写程序。这个挑战是读取一个整数(正,非零),并输出它是偶数还是奇数。如果您对某些内容感到困惑,请访问第19个字节并自由询问。或者,如果您对网站的政策或规则感到困惑,请转到Meta。最后,感谢您订阅我们的社区!
马修·

Answers:


112

ArnoldC299个 283字节

IT'S SHOWTIME
HEY CHRISTMAS TREE i
YOU SET US UP 0
GET YOUR ASS TO MARS i
DO IT NOW
I WANT TO ASK YOU A BUNCH OF QUESTIONS AND I WANT TO HAVE THEM ANSWERED IMMEDIATELY
GET TO THE CHOPPER i
HERE IS MY INVITATION i
I LET HIM GO 2
ENOUGH TALK
TALK TO THE HAND i
YOU HAVE BEEN TERMINATED

1对于奇数输入,这将输出(真),对于偶数输入,这将输出(虚假)0

在线尝试!

现在这是计划 ”(尝试解释)

代码将输入读入变量i,用模2的结果替换它,然后打印出来。

IT'S SHOWTIME                                    # BeginMain
HEY CHRISTMAS TREE i                             #   Declare i
YOU SET US UP 0                                  #   SetInitialValue 0
GET YOUR ASS TO MARS i                           #   AssignVariableFromMethodCall i
DO IT NOW                                        #   CallMethod
I WANT TO ASK YOU ... ANSWERED IMMEDIATELY       #   ReadInteger
GET TO THE CHOPPER i                             #   AssignVariable i
HERE IS MY INVITATION i                          #     SetValue i (push i on the stack)
I LET HIM GO 2                                   #     ModuloOperator 2
ENOUGH TALK                                      #   EndAssignVariable
TALK TO THE HAND i                               #   Print i
YOU HAVE BEEN TERMINATED                         # EndMain

27
我的第一个ArnoldC答案!
路易斯·门多

16
BULLSHIT YOU HAVE NO RESPECT FOR LOGIC GET TO THE CHOPPER
Magic Octopus Urn'Mar

17
GET YOUR ASS TO MARS...我没话说。
马修·鲁

12
我加入了这个社区以对此表示支持。干得好,先生
Erik

2
我也加入了这个社区,以支持这篇文章。:)
VadaPoché17年

46

brainfuck,8个字节

+[,>,]<.

输入为一元。奇数输出为1(真),偶数输出为NUL(伪)。

在线尝试!

这个怎么运作

我们从增加当前单元格开始,+以便能够进入while循环[,>,]

在每次迭代中,,从STDIN读取一个字节,>前进到右侧的单元格,然后,从STDIN读取另一个字节。输入耗尽后,解释器(无论如何,在TIO上的解释器)会将单元设置为NUL。一旦发生这种情况,while循环的条件将不再满足,我们将打破这种情况。

n为输入整数。如果有偶数个输入字节(即,如果n为偶数),则前n / 2次迭代将读取两个1,而下一次迭代将读取两个NUL,从而使磁带如下。

...   1  NUL  NUL
...  49    0    0
                ^

<.还原一个单元并打印其内容,然后将一个NUL字节发送到STDOUT。

但是,如果输入字节数量奇数,则第一个(n-1)/ 2迭代将读取两个1,而下一个迭代将读取一个1和一个NUL,从而使磁带如下。

...   1    1  NUL
...  49   49    0
                ^

<现在将回退到包含字节/字符1的单元格,该单元格将进行.打印。



26

出租车1482个 1,290 1063 1029 1009字节

我以前从未在Taxi中编写过程序,而且我是一般编程的新手,因此可能有更好的方法来解决此问题。我已经检查了错误,并通过尝试具有相同结果的不同路线设法稍微打了个高尔夫球。我欢迎任何修改。

返回0偶数和1奇数。

Go to Post Office:w 1 l 1 r 1 l.Pickup a passenger going to The Babelfishery.Go to The Babelfishery:s 1 l 1 r.Pickup a passenger going to Divide and Conquer.2 is waiting at Starchild Numerology.Go to Starchild Numerology:n 1 l 1 l 1 l 2 l.Pickup a passenger going to Divide and Conquer.Go to Divide and Conquer:e 1 l 2 r 3 r 2 r 1 r.Pickup a passenger going to Cyclone.Go to Cyclone:e 1 l 1 l 2 l.Pickup a passenger going to Trunkers.Pickup a passenger going to Equal's Corner.Go to Trunkers:s 1 l.Pickup a passenger going to Equal's Corner.Go to Equal's Corner:w 1 l.Switch to plan "b" if no one is waiting.Pickup a passenger going to Knots Landing.Go to Knots Landing:n 4 r 1 r 2 r 1 l.[a]Pickup a passenger going to The Babelfishery.Go to The Babelfishery:w 1 l.Pickup a passenger going to Post Office.Go to Post Office:n 1 l 1 r.[b]0 is waiting at Starchild Numerology.Go to Starchild Numerology:n 1 r.Pickup a passenger going to Knots Landing.Go to Knots Landing:w 1 r 2 r 1 r 2 l 5 r.Switch to plan "a".

在线尝试!

您是对的,没有换行符就很难阅读。这是格式化的版本:

Go to Post Office:w 1 l 1 r 1 l.
Pickup a passenger going to The Babelfishery.
Go to The Babelfishery:s 1 l 1 r.
Pickup a passenger going to Divide and Conquer.
2 is waiting at Starchild Numerology.
Go to Starchild Numerology:n 1 l 1 l 1 l 2 l.
Pickup a passenger going to Divide and Conquer.
Go to Divide and Conquer:e 1 l 2 r 3 r 2 r 1 r.
Pickup a passenger going to Cyclone.
Go to Cyclone:e 1 l 1 l 2 l.
Pickup a passenger going to Trunkers.
Pickup a passenger going to Equal's Corner.
Go to Trunkers:s 1 l.
Pickup a passenger going to Equal's Corner.
Go to Equal's Corner:w 1 l.
Switch to plan "b" if no one is waiting.
Pickup a passenger going to Knots Landing.
Go to Knots Landing:n 4 r 1 r 2 r 1 l.
[a]Pickup a passenger going to The Babelfishery.
Go to The Babelfishery:w 1 l.
Pickup a passenger going to Post Office.
Go to Post Office:n 1 l 1 r.
[b]0 is waiting at Starchild Numerology.
Go to Starchild Numerology:n 1 r.
Pickup a passenger going to Knots Landing.
Go to Knots Landing:w 1 r 2 r 1 r 2 l 5 r.
Switch to plan "a".

这是我最好的解释逻辑的尝试:

Go to Post Office to pick up the stdin value in a string format.
Go to The Babelfishery to convert the string to a number.
Go to Starchild Numerology to pickup the numerical input 2.
Go to Divide and Conquer to divide the two passengers (stdin & 2).
Go to Cyclone to create a copy of the result.
Go to Trunkers to truncate the original to an integer.
Go to Equal's Corner to see if the two passengers are the same.
Equal's Corner returns the first passenger if they're the same (no .5 removal so the stdin was even) or nothing if they're not.
If nothing was returned, it was odd, so go pick up a 0 from Starchild Numerology.
Go to Knots Landing to convert any 0s to 1s and all other numbers to 0s.
Go to The Babelfishery to convert the passenger (either a 1 or 0 at this point) to a string.
Go to Post Office to print that string.
Try and fail to go to Starchild Numerology because the directions are wrong so the program terminates.

不返回出租车车库会导致输出到STDERR,但是我很好


7
我总是了解到goto是邪恶的
穿越了

2
该语言不仅需要广泛使用go to,而且唯一的分支方法是使用计划,这只是goto的另一个名称。
Engineer Toast

23

视网膜,8字节

[02468]$

视网膜答案(用于十进制输入)。这也是一个简单的正则表达式解决方案,几乎可以在任何正则表达式中使用。匹配(和打印1),用于甚至输入和不匹配(和打印0),用于奇数输入。

在线尝试!

另一种也是8个字节的替代方法,使用音译阶段将所有偶数数字都转换为x第一个(因为音译阶段具有用于偶数/奇数数字的内置功能):

T`E`x
x$

当然,在这种情况下,最短的输入格式(甚至比unary短)将是二进制的,其中简单的正则表达式0$就足够了。但是,由于挑战本质上是寻找最低有效的二进制数字,因此二进制输入似乎绕过了实际挑战。


1
为“ TeX” +1。让我想看看LaTeX的答案...
Brevan Ellefsen

@Richard因此,这不是需要处理的有效输入。(尽管这实际上意味着无论如何都可以正确处理。)
Martin Ender

20

Python,11个10字节

-1字节感谢格里芬

1 .__and__

在线尝试!
使用bitwise and,返回0偶数和1奇数


2
1 .__and__短一个字符
Griffin

20

LOLCODE,67个字节

HOW DUZ I C YR N
  VISIBLE BOTH SAEM MOD OF N AN 2 AN 0
IF U SAY SO

返回的函数 WIN如果数字为偶数则(true)的,否则将返回(odd)FAIL(false)的。

致电C"123"


20

MATL5 3字节

因为内置程序很无聊

:He

对于偶数输入,这将输出非零值的矩阵(这是真实的),对于奇数输入,这将在其右下角的条目中输出零(这是虚假的)。

在线尝试!页脚代码是if-else分支,用于说明结果的真实性或虚假性。删除该页脚将隐式显示矩阵。

说明

以输入5为例

:     % Implicitly input n. Push row vector [1 2 ... n]
      % STACK: [1 2 3 4 5]
He    % Reshape into a 2-row matrix, padding with zeros if needed
      % STACK: [1 3 5;
                2 4 0]

7
Heil,HeAA,HeAA的“消息很无聊”。(对不起,这是一个双关语)
马修·

3
@SIGSEGV HeHeHe
Luis

2
聪明的办法!:)
Stewie Griffin

17

Java 8,8字节

n->n%2<1

在这里尝试。

Java 7,30字节

Object c(int n){return n%2<1;}

在这里尝试。

输出true偶数和false奇数


如果1/0允许而不是true/false不是,请考虑此处的投票数):

  • Java 8(6个字节): n->n%2
  • Java 7(25个字节): int c(int n){return n%2;}

22
所有可笑的冗长的Java资料在哪里?我觉得这至少要短50个字节...
Stewie Griffin

2
从前有一个叫做code-trolling的标签。但是,这一次是一个非常好的接受Java的答案,这里是一个代码高尔夫答案。还有更多
Stewie Griffin

2
@lukeg嗨,默认值为program或function,除非挑战另有说明。这意味着允许像Java和C#这样的语言仅发布函数(和必需的导入),而不发布整个类。如果提问者专门要求一个程序,那么我确实必须包括边界代码,例如类/接口和主方法。
凯文·克鲁伊森

1
@lukeg如果您想开始自己回答挑战,这里有一些关于Java高尔夫的技巧,这些技巧可能会让您通读。欢迎来到PPCG!:)
Kevin Cruijssen

6
@StewieGriffin你去!int o(int n){return java.util.stream.IntStream.of(n).map(n->n%2).filter(n==0).fi‌​ndAny().isPresent();‌​}
OlivierGrégoire'17

16

Piet,15个编码/ 16字节

Source Code

5njaampjhompppam

可在此处在线翻译。

如果输入为偶数,则此程序返回0,如果输入为奇数,则返回1。

上面的文字代表图片。您可以通过将图像粘贴到解释器页面上的文本框中来生成图像。为了方便起见,我在下面提供了可编码大小为31像素的图像。网格是为了提高可读性而不是程序的一部分。

说明

该程序使用模内建函数来确定输入是偶数还是奇数。

Instruction    Δ Hue   Δ Lightness   Stack
------------   -----   -----------   -------
In (Number)    4       2             n
Push [2]       0       1             2, n
Modulo         2       1             n % 2
Out (Number)   5       1             [Empty]
[Exit]         [N/A]   [N/A]         [Empty]

永远不会访问左下角的深蓝色编码,并且可以将其更改为相邻编码的颜色以外的任何颜色。我选择深蓝色,因为我认为该程序的其余部分看起来不错。左上方的黑色编解码器也可以是白色,但不能是其他任何颜色。我选择了黑色,因为它看起来更好。

我已经以图像形式和文本形式提供了该程序,因为在如何对Piet程序评分上没有明确的共识。随时参与元讨论。



14

JavaScript,6个字节

匿名函数:

n=>n&1

或者使用相同的长度:

n=>n%2

两者都将返回0|1,应满足对truthy|falsey值的要求。

在线尝试两个版本


根据Java的答案,这不能满足要求。JavaScript在这方面是否有所不同?
TheLethalCoder

4
问题明确指出“ 这不是必需的,您可以使用其他Truthy / Falsy值0|1,对吗?@TheLethalCoder
此处

1
我不确定它们是否在我要的JavaScript中,请参阅meta q / a来查看它们是否是。我对JavaScript不够了解。
TheLethalCoder

4
JavaScript比Java更宽松。可以将几乎所有类型的任何事物视为快乐。特别值得一提的是,将浮点数视为布尔值(如果这样做,Java会抛出编译时错误)。(顺便说一句,您可能不希望知道为什么它返回浮点数而不是整数。)

1
好:)我对自己的了解还不够熟悉,所以只是想知道。
TheLethalCoder

12

Japt,1个字节

v

返回1偶数,0奇数。

在线尝试!

说明

Japt的定义功能之一是,与大多数高尔夫语言不同,功能没有固定的统一性。也就是说,任何函数都可以接受任意数量的参数。这意味着您有时可以省略参数,而Japt会猜测您想要什么。v数字上的函数是接受一个参数并返回1数字是否可被参数整除的函数,否则返回0。例如:

v3

1如果输入可被3整除,则此程序将输出0。碰巧的是,默认参数为2,从而在单个字节中解决了这一难题。


备用1字节解决方案:

¢

¢将输入转换为以2为基的字符串。的-h标志返回字符串中的最后一个字符。

在线尝试!


11

头脑操,12字节

,++[>++]>++.

这需要带有圆形胶带和环绕单元的解释器。TIO上的一个具有65,536个8位单元,可以满足要求。

I / O以字节为单位。奇数输入映射到0x00(伪),甚至输入映射到非零字节(真实)。

在线尝试!

这个怎么运作

我们首先读取带有的输入字节,,然后通过将其值加2来开始++。稍后我们将说明为什么需要增量。

接下来,我们进入一个循环,该循环前进到右侧的单元格,将其加2,然后重复该过程,除非将此单元格的值设置为0

最初,除输入单元格外,所有其他单元格均保持0。如果输入为奇数,则将其加2永远不会将其清零。但是,在磁带上循环127次之后,循环的下一次迭代会将输入单元格右侧的单元格设置为128×2 = 0(mod 256),从而导致循环结束。>++再重复一次循环体,因此下一个单元也被清零,然后用印刷.

另一方面,如果输入为nn为偶数,则循环之前的代码会将输入像元设置为n + 2。在磁带上绕(256-(n-2))/ 2 =(254-n)/ 2次循环后,输入单元将达到 0,其右侧的单元格将保留值(254-n)/ 2 ×2 = 254-n。在加上2>++.将输出256-n = -n(mod 256),由于n为非零是非零的。

最后,请注意,如果我们在循环之前不增加输入,则第二种情况将打印258-n = 2-n(mod n),因为需要在磁带上再循环一次才能将输入单元清零。因此,该程序将因输入2而失败。


11

Sinclair ZX81 BASIC 124字节 114字节 109字节 57 50标记化的BASIC字节

根据下面的评论,这是最新的候选版本:

 1 INPUT A
 2 IF NOT A THEN STOP
 3 PRINT A;":";NOT INT A-(INT (INT A/VAL "2")*VAL "2")

现在它将 PRINT 1是偶数和0奇数。零出口。

以下是符号列表的旧版本,仅供参考:

 1 INPUT A
 2 IF NOT A THEN STOP
 3 LET B=INT (INT A/2)
 4 PRINT A;":";NOT INT A-B*2
 5 RUN

这是旧的(v0.01)清单,因此您可能会看到我所做的改进,因为新清单不仅较小,而且速度更快:

 1 INPUT A
 2 IF A<1 THEN STOP
 3 LET B=INT (INT A/2)
 4 LET M=1+INT A-B*2
 5 PRINT A;":";
 6 GOSUB M*10
 7 RUN
10 PRINT "TRUE"
11 RETURN
20 PRINT "FALSE"
21 RETURN

这是v0.02(使用Sinclair子字符串):

 1 INPUT A
 2 IF NOT A THEN STOP
 3 LET B=INT (INT A/2)
 4 LET M=1+INT A-B*2
 5 LET C=4*(M=2)
 6 PRINT A;":";"TRUE FALSE"(M+C TO 5+C+(M=2))
 7 RUN

ZX81 in action - true or false from v1/2


1
这不是kolmogorov复杂性。您只需为任何给定的输入返回0或1。
亚当

自从我输入我的第一个条目以来,该问题就好像已被编辑,因为它需要<i> read </ i>像真/假一样返回。这样,我可以进一步简化符号列表。
Shaun Bebbers

1
为什么您需要从零退出?你不能PRINT (A-2*INT A/2)/A吗?
亚当

在最初的问题(已进行了有益的编辑)中,它指定了该值0不应产生a TRUEFALSE,因此,0由于不应该产生结果,因此我STOP对程序进行了ping操作。我可能会解释原始问题,因为它是@SIGSEGV发布的,字面意思有点过分。是的,您可以对它进行优化和重构。
Shaun Bebbers


8

视网膜,3个字节

11

尾随换行符很重要。一元输入。对于奇数输出1,对于偶数输出。在线尝试!


您知道,您可以从TIO复制完整答案(带有尾随换行符的必要格式)。
马丁·恩德

@MartinEnder不,我不知道。
尼尔

这是生成永久链接时的倒数第二个代码段。
Martin Ender

哦,这是一个完整的片段?我只看到标题行。
尼尔

@Neil如果单击摘要,它将对其进行扩展,您将看到其主体
Dada

8

C ++,25个字节

template<int v>int o=v&1;

这定义了一个变量模板(类似于函数的构造),其值等于按位运算input&10甚至值1对于奇数。该值是在编译时计算的。

需要C ++ 14。

在线尝试!


哇,这看起来真的很聪明。我以前从未见过这样的答案!你怎么称呼它?
DJMcMayhem

@DJMcMayhem这是一个简单的使用C ++ 14的可变模板。不过,这还不是那么聪明:一个简单的函数aproach(int o(int v){return v&1;})将占用相同数量的字节,不同之处在于该值将在运行时计算。
卡西奥雷南

我认为这实际上不符合要求,因为代码只会被编译为返回1或返回0。再次运行相同的已编译代码将永远不会产生不同的结果,这不是函数。接近常数。
醉酒的代码猴子

@DrunkenCodeMonkey的评估时间无关紧要。重要的是我可以将参数传递给构造(提供输入),并且它将返回结果(返回输出)。从您的角度来看,没有函数是合格的,因为如果没有类似main()的结构,该程序也只会被编译为return 0,甚至根本无法编译。这与我在此答案中链接的元帖子相矛盾。
卡西奥雷南

1
C ++ lambda函数可节省3个字节[](int x){return x%2;} 在线尝试
Johan du Toit

8

Pyth,3个 2字节

我做的。我打高尔夫。这是一次非平凡的解决方案,设法获得了最后一个字节!

!F

真值偶数(不包括0,但这不是正数,所以...)。

说明:

!    Not
 FQQ Applied to the input (first Q) Q times

例如, !!2 = !0 = 1,和!!!3 = !!0 = !1 = 0

我将在此处保留3字节解决方案的库。

“还有多个3字节解决方案的另一个答案,但这还远未完成。让我们再添加几个:

@U2

[0,1]模块化地索引列表,为奇数输入提供真实值。

}2P

输入的素数分解中是否为2?(甚至要认真)

ti2

GCD是2,输入2是吗?(甚至要认真)

gx1

将输入与1进行异或运算不会减少它吗?(甚至要认真)

q_F

基本上Q == Q*-1^Q,其中Q是输入,但通过循环完成。(甚至要认真)

_FI

同上。

g^_

转换为Q <= -Q^Q(Truthy on even)

请注意,任何涉及上述解决方案g将与<翻转后truthy-falsiness。)


1
是的,那很聪明:)
Digital Trauma'Mar

7

C#,8个字节

n=>n%2<1

编译为Func<int, bool>

或者,如果不允许使用匿名函数,则此方法为21个字节:

bool p(int n)=>n%2<1;

@obarakon不在C#中,请参见meta上的此答案。基本上if (1)不编译。
TheLethalCoder

if (1)您的代码中没有?

1
@YOU正确,请阅读元文章以了解我的意思。
TheLethalCoder

2
@YOU,(在此站点上)真实/错误值的公认定义是:如果if (x)评估为true,x则为真实值。如果评估为假,则为false。因此,使用伪代码:if x, disp(true), else disp(false)。如果无法编译,则x无法使用。在MATLAB和其他几种语言中,任何非零值都被视为true,而0and false则被视为false。因此,字符串Hello在MATLAB中是真实值。但是,某些语言要求该值是布尔值(此处是这种情况),因此必须使用将该值转换为布尔值<1
Stewie Griffin

我懂了。感谢您的解释。


7

TIS-100,39个字节

当然,更确切地说,这是TIS-100仿真器所仿真的T21基本执行节点体系结构的程序。

我将为您提供这个答案,以对TIS-100程序的得分及其结构进行非常深入的解释。

@0
ADD UP
G:SUB 2
JGZ G
MOV ACC ANY

说明:

@0          # Indicates that this is node 0
ADD UP      # Gets input and adds it to ACC, the only addressable register in a T-21
G:          # Defines a label called "G"
SUB 2       # Subtracts 2 from ACC
JGZ G       # If ACC is greater than 0, jumps to G
MOV ACC ANY # Sends the value of ACC to the first available neighbor; in this case, output.
            # Implicitly jumps back to the first line

在伪代码中,它看起来像:

while (true) {
    acc = getIntInput()
    do {
        acc -= 2
    } while (acc > 0)
    print(acc)
}

T21没有布尔类型或真/假值,因此程序会返回-1表示奇数,0表示偶数,除非先前的输入是奇数,在这种情况下,它返回-1表示偶数,0表示奇数数字-如果这一事实困扰您,那么这是一个完整的程序,因此您可以在两次使用之间重新启动T21。


自从上周我想购买TIS-100以来,我只是想着Zachtronics益智游戏TIS-100。TIS还是一种实际的语言,还是仅存在于该视频游戏中?
seshoumara

就我所知,@ seshoumara仅存在于游戏中。TIS中机器的整个体系结构是典型的,这种汇编风格的语言与之相关。
steenbergh

我可以确认,它只存在于游戏中(事实上,即使在宇宙中,它也是一个怪异而奇怪的体系结构)。我写了Turtleman链接的答案,好像有真正的TIS设备一样,但我只是出于娱乐目的而做。
地下

2
@Blacksilver,我认为真正的挑战是做出Spacechem的答案!
Tutleman'3

1
我已经为TIO实现了TIS模拟器,因此您现在可以在线尝试!
Phlarx

6

果冻,1字节

在线尝试!

只是另一个内置函数。

对于不了解Jelly的人:它具有相当多的功能来推断缺少的代码,因此,代码段,函数和完整程序之间在语法上没有太大区别;解释器将自动添加代码以输入适当的参数并输出结果。在处理PPCG规则时,这非常方便,该规则允许使用函数和程序,但不允许使用摘要。在TIO链接中,我将其视为函数,并在1到20(含1和20)之间的每个整数上运行它,但它也可以作为完整程序运行。

果冻,2个字节

&1

在线尝试!

没有内置功能也很短。(这是按位与1。)


2
所有这些语言似乎都对这些问题有些欺骗,哈哈
Drunken Code Monkey

6

7、18个字符,7个字节

177407770236713353

在线尝试!

7与普通的if语句没有任何相似之处,并且具有一种以上的惯用方式来表示布尔值。因此,很难知道什么是真实和错误的,但是该程序使用1奇数和空字符串用于偶数(Perl的真值和假值,其中编写了7解释器)。(更改它很容易;奇数输出在前7个之前指定,偶数输出在前两个7之间指定。不过,可能需要更改输出格式以处理其他类型的输出;我使用了两者最短的不同输出在这里。)

7使用压缩的八进制编码,其中源的三个字节代表程序的八个字节,因此在磁盘上的7个字节中表示源的18个字符。

说明

177407770236713353
 77  77     7       Separate the initial stack into six pieces (between the 7s)

        023         Output format string for "output integers; input one integer"
       7   6        Escape the format string, so that it's interpreted as is
             13     Suppress implicit looping
               3    Output the format string (produces input)
                5   Run the following code a number of times equal to the input:
   40                 Swap the top two stack elements, escaping the top one
                 3  Output the top stack element

像许多输出格式一样,“输出整数”在输出之前撤消任何数量的转义。因此40,可以结合使用进行交换和转义操作,代替405交换操作(交换和转义后跟不转义)。如果使用的输出格式在转义方面不稳定,则需要完整的格式405。(顺便说一下,我们最初需要转义格式字符串的原因是,如果第一个输出包含无法代表的字符,它将自动强制输出格式7。转义它会删除无法代表的字符并允许选择格式0。)

在六个初始堆栈元素中,最上面的是主程序(并且13要运行的是被消耗);第二个是023选择输出格式并请求输入,并由该操作使用;第三个消耗是该3操作的副作用(除了产生输出外,还用于丢弃堆栈元素);第四个40是循环的主体(并由5执行循环的消耗);和第五个和第六个交换等于输入的次数(如果输入为偶数,则交换到其原始位置;如果输入为奇数,则交换到彼此的位置)。

你可以高尔夫球关闭通过改变导致一个字符17717(和依靠隐式空第六堆元件上),但是这将输出的奇偶变更为比奇数是真少一个惯用方法,以及它不保存一个完整的字节(源仍然是七个字节长)。因此,我决定使用更自然的输出形式,因为它的得分不会更差。


6

Brain-Flak22 20字节

这是Brain-Flak中另一个很棒的答案,您也应该查看

(({})){({}[()]<>)}<>

在线尝试!

说明

首先,我们将使用复制一个输入(({}))

最下面的副本将用作真实值,而最上面的副本将用于实际处理。这样做是因为我们需要将输入放在顶部,并且在输入的下方放置1相当麻烦(两个额外的字节!)。

然后我们开始循环{({}[()]<>)}。这是对标准倒数循环的简单修改,每次递减时都会切换堆栈。

因为有两个堆栈,所以偶数将在它开始的堆栈顶部结束,而奇数将在相反的堆栈结束。复制的值将保留在原处,因此将成为我们开始的标记。

一旦完成循环,我们就会0在真实值(输入的副本)或虚假值(空堆栈)的顶部放置一个(最初是输入)。我们在另一个堆栈上也有相反的值。

我们需要摆脱0可以通过{}或删除的<>。两者似乎都起作用并且给出相反的结果,但是{}当它应该返回真值时会导致零的错误值。这是因为我们的“真实”值是输入的副本,而零是唯一可能是虚假的输入。

通过以结束程序<>来解决此问题。

(当然,根据规范,我从技术上讲不必支持零,但可以选择两个选项,我宁愿支持它)


6

BitCycle19 17 16字节

?ABv
 / \ <
!+ <

在线尝试!

哎呀,我觉得有一个18字节的解决方案浮动超出范围:(哈哈!-2字节通过使用a +重定向来自不同方向的位。

仍然感觉其中有太多空白(整个6个字节!)

说明:

?ABv    Feed unary input into the main loop
 / \    Every loop, two bits will be removed from the input
 + <

 / \ <  When we reach the point where there is either one or no bits of input left
!+      If one, it will reflect off both /\s and turn left at the +
        And output, otherwise the program ends since no more bits are moving

5

批处理,16字节

@cmd/cset/a%1%%2

输出1表示奇数,0表示偶数。备用16字节版本也适用于负数:

@cmd/cset/a"%1&1

17个字节输出偶数为1,奇数输出为0:

@cmd/cset/a"~%1&1

您的程序仅回显MOD结果,这是不正确的。问题说输出格式应该是“ (Input):(Output)
stevefestl

5

Excel,10个字节

=MOD(A1,2)

要么:

=ISODD(A1)

输出:

http://i.imgur.com/7dJydqc.png


1
我从没见过在代码高尔夫方面表现出色……
程序员

1
此代码的替代Excel VBA版本?[A1]mod 2;一个匿名的VBE立即窗口函数,该函数从VBE立即窗口输入[A1]和输出,其中0(falsey)代表偶数,1(truthy)代表奇数
Taylor Scott

5

JSFuck 9685 9384 6420字节

JSFuck是基于JavaScript原子部分的深奥和教育性编程风格。它仅使用六个不同的字符来编写和执行代码。

[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(+(+!+[]+(!+[]+[])[!+[]+!+[]+!+[]]+[+!+[]]+[+[]]+[+[]])+[])[!+[]+!+[]]+(!![]+[])[+[]]+(+(+!+[]+[+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+[+!+[]])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]+!+[]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(+[![]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+!+[]]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[+!+[]]+(+(!+[]+!+[]+[+!+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[+!+[]])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]])()(([]+[])[([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]]()[+[]])[+[]]+[!+[]+!+[]])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]]

输出1表示奇数,0表示偶数。

在线尝试!

alert([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(+(+!+[]+(!+[]+[])[!+[]+!+[]+!+[]]+[+!+[]]+[+[]]+[+[]])+[])[!+[]+!+[]]+(!![]+[])[+[]]+(+(+!+[]+[+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+[+!+[]])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]+!+[]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(+[![]]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+!+[]]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[+!+[]]+(+(!+[]+!+[]+[+!+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(+![]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(+![]+[![]]+([]+[])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]])[!+[]+!+[]+[+[]]]](!+[]+!+[]+!+[]+[+!+[]])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]])()(([]+[])[([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]]()[+[]])[+[]]+[!+[]+!+[]])[([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]](prompt()))


我认为您可以输出0/1而不是true / false。alert(prompt()%2)似乎是9384个字符。
ETHproductions

我打高尔夫球到6497个字符。这等于以下JavaScript :[]["fill"]["constructor"]("return this%2")["call"]fill选择它是因为它仅花费81个字符,是所有数组方法中最少的。另外,您可能会说JSFuck不是一种独立的语言,而是JavaScript的一个子集。
路加福音

@Luke我无法让它在代码段中运行,由于这只是个玩笑,除非您可以帮助我弄清楚我在做什么,否则我将坚持使用基于警报的版本。
鲍威尔

@Luke用a替换该空间,+以进一步节省77个字节;-)我个人认为用JSF回答是可以的;它基本上是JS的方言。
ETHproductions 2017年

我粘贴的代码就像一个函数名。只需在括号后面加上参数即可。
路加福音

5

Bash + bc,21 14 11 9个字节

bc<<<$1%2

读取命令行输入,使用mod操作将值扩展为字符串,然后将字符串传递给bc进行计算。输出1表示奇数,0表示偶数。

测试用例:

(Input):(Output)
1:1
2:0
16384:0
99999999:1

编辑:感谢@ ais523,保存了7个字节
编辑2:感谢@Dennis,保存了3个字节
编辑3:感谢@Dennis,保存了另外两个字节


2
欢迎光临本站!
DJMcMayhem

也许您可以从bash的命令行参数中输入输入(例如$1),而不用花费字节从stdin读取它?

@ ais523:很棒的建议!我应该考虑在脚本中而不是仅在命令行中执行此操作。
Christopher Pitts

您可以将其缩短为bc<<<$1%2
丹尼斯

@丹尼斯:谢谢!我较早尝试过,但是语法不正确。
Christopher Pitts
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.