이것이 짝수 또는 홀수입니까?


65

참고 : 아직 바닐라 패리티 테스트 챌린지는 없었습니다 (C / C ++ 언어가 있지만 C / C ++ 이외의 언어를 사용하는 기능은 허용하지 않으며 다른 바닐라가 아닌 언어도 대부분 닫힙니다). 하나.

양의 정수가 주어지면 패리티 (예 : 숫자가 홀수이거나 짝수 인 경우)의 값을 참 / 거짓 값으로 출력합니다. 정확한 결과가 홀수인지 짝수인지를 선택할 수 있습니다.


True / False를 짝수 및 홀수로 가정 (이것은 필요하지 않습니다. 각각에 대해 다른 Truthy / Falsy 값을 사용할 수 있습니다) :

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

리더 보드


2
수학과 계산 패리티를 혼동 한 것은 이번이 처음이 아닙니다. 이것은 결국 코드 사이트입니다!
Neil

이것은 이러한 질문 중 하나 ( 1 , 2 , 3 ) 중 하나이므로 모든 답변을 볼 수있는 스 니펫이 있어야합니다.
fəˈnɛtɪk

4
@MikeBufardeci "카탈로그"는 귀하가 거주하는 국가에 따라 철자가 다르므로 미국에있는 사람들에게는 "카탈로그"입니다. "리더 보드"는 문화에 변하지 않습니다.
mbomb007

2
@tuskiomi 도전은 양의 정수에 대해서만 묻습니다. (0도 있지만 긍정적 인 것으로 간주됩니다)
칼빈의 취미

3
@LucioCrusca PPCG에 오신 것을 환영합니다! Code Golf의 기본 아이디어는 가능한 가장 짧은 형태로 프로그램을 만드는 것입니다. 이 과제는 정수 (0이 아닌 양의 정수)를 읽고 짝수이거나 홀수이면 출력하는 것입니다. 무언가 혼동되는 경우 The Nineteenth Byte 를 방문 하여 자유롭게 문의하십시오 . 또는 사이트의 정책 또는 규칙과 혼동되는 경우 메타 로 이동하십시오 . 마지막으로 커뮤니티에 가입 해 주셔서 감사합니다!
Matthew Roh

답변:


112

ArnoldC , 299 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(거짓) 출력합니다.

온라인으로 사용해보십시오!

이것은 계획이다 ”(설명을 시도)

이 코드는 입력을 variable로 읽어 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 답변!
Luis Mendo

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

17
GET YOUR ASS TO MARS...할 말이 없다.
Matthew Roh

12
나는 이것을지지하기 위해이 공동체에 가입했다. 잘하셨습니다, 선생님
Erik

2
이 커뮤니티에 가입하여이 게시물을 찬성했습니다. :)
Vada Poché

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 '을들 및 다음 반복 한 읽을 하나 하나 NUL을 다음과 같이 테이프를 남겨.

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

<이제 바이트 / 문자 들고 셀에 retrocede 것 (1) , .인쇄를.


34

Mathematica, 4 바이트

OddQ

부여 True홀수 입력과 False알고도 입력을 위해?

또한 EvenQ있지만, 누가 그 모든 것을 입력하고 싶습니까?


22
아뇨 다시 내장.
Matthew Roh

7
@SIGSEGV 그게 나중에 Mathematica입니다. ;)
Kevin Cruijssen

6
2∣#&또한 작동
Kelly Lowder

1
@KellyLowder true이지만 6 바이트입니다.
Martin Ender

왜 이름이 Q?로 끝나 나요?
Cyoce

26

택시 , 1,482 1,290 1,063 1,029 1,009 바이트

나는 전에 택시에서 프로그램을 작성한 적이 없으며 일반적인 프로그래밍 초보자입니다. 그래서 더 좋은 방법이있을 것입니다. 오류가 있는지 확인하고 동일한 결과를 가진 다른 경로를 시도하여 약간의 골프를 치렀습니다. 나는 모든 개정을 환영합니다.

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
나는 항상 고토 악한 것을 배웠다
aross

2
언어는 go to의 광범위한 사용을 요구할뿐만 아니라, 유일한 분기 방법은 goto의 다른 이름 인 계획을 사용하는 것입니다.
엔지니어 토스트

23

망막 , 8 바이트

[02468]$

십진수 입력에 대한 Retina 답변. 이것은 또한 거의 모든 정규식 맛에서 작동하는 일반 정규식 솔루션입니다. 일치 (및 인쇄 1)도 입력과 일치하지 않는 (및 인쇄 0) 홀수 입력합니다.

온라인으로 사용해보십시오!

8 바이트에 대한 대안은 음역 단계를 사용하여 모든 짝수 자릿수를 x첫 번째 숫자로 바꿉니다 (음역 단계에는 짝수 / 홀수 자릿수가 내장되어 있기 때문에).

T`E`x
x$

물론 가장 짧은 입력 형식 ( unary보다 짧은 입력 형식 )은이 경우 간단한 정규 표현식으로 0$충분할 경우 이진수입니다 . 그러나 문제는 본질적으로 가장 중요하지 않은 이진수를 찾는 것이므로 이진 입력은 실제 문제를 우회하는 것으로 보입니다.


1
"TeX"의 경우 +1 LaTeX의 답변을보고 싶습니다 ...
Brevan Ellefsen

@Richard 따라서 처리해야하는 유효한 입력이 아닙니다. (실제로 그것이 제대로 처리된다는 것을 의미하지만)
Martin Ender


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) 를 반환하는 함수는 (false) 를 반환합니다 FAIL.

로 전화하십시오 C"123".


20

MATL , 5 3 바이트

내장이 지루하기 때문에

:He

이것은 짝수 입력에 대해 0이 아닌 값 (진실한 값)의 행렬을 출력하고 홀수 입력에 대해 오른쪽 하단 항목에 0이있는 행렬 (거짓)을 출력합니다.

온라인으로 사용해보십시오! 바닥 글 코드는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
. '내장 명령이 지루'HeAA이 HeAA는, HeAA이 (유감이었다 나쁜 말장난)
마태 복음 노무현

3
@SIGSEGV HeHeHe
Luis Mendo

2
영리한 접근! :)
Stewie Griffin

17

자바 8, 8 바이트

n->n%2<1

여기에서 시도하십시오.

자바 7, 30 바이트

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

여기에서 시도하십시오.

짝수 truefalse홀수에 대한 출력


1/0대신에 허용되는 경우 true/false( 여기에서 투표 수를 고려하지 않음 ) :

  • 자바 8 (6 바이트) : n->n%2
  • 자바 7 (25 바이트) : int c(int n){return n%2;}

22
어리석게 장황한 모든 Java 제품은 어디에 있습니까? 나는 이것이 50 바이트 이상 이라고 느낀다 ...
Stewie Griffin

2
옛날 옛적에 code-trolling 이라는 태그가있었습니다 . 그러나 이 것은 A는 아주 좋은 허용 자바 대답하고, 여기에서 A는 코드 골프 대답. 그리고 좀 더 .
Stewie Griffin

2
@lukeg Hi, 챌린지가 달리 명시하지 않는 한 기본값은 program 또는 function 입니다. 이는 Java 및 C #과 같은 언어가 전체 클래스 대신 함수 및 필요한 가져 오기만 게시 할 수 있음을 의미합니다. 질문자가 프로그램을 구체적으로 요구한다면 클래스 / 인터페이스 및 주요 메소드와 같은 경계선 코드를 포함시켜야합니다.
Kevin Cruijssen

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();‌​}
Olivier Grégoire

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

자바 스크립트, 6 바이트

익명의 기능 :

n=>n&1

또는 같은 길이로 :

n=>n%2

둘 다 값 0|1요구 사항을 충족해야 truthy|falsey합니다.

온라인에서 두 버전을 모두 사용해보십시오


Java 답변 에 따르면 이것은 요구 사항을 충족시키지 못합니다. 이와 관련하여 JavaScript가 다른가요?
TheLethalCoder

4
이 질문에는 " 이것은 필요하지 않습니다. 다른 Truthy / Falsy 값을 사용할 수 있습니다 "라고 명확하게 설명 되어 0|1있습니다. @TheLethalCoder
insertusername 여기

1
그들이 자바 스크립트에 있는지 확실하지 않은지 , 메타 질문 을 참조하십시오. JavaScript에 익숙하지 않습니다.
TheLethalCoder

4
자바 스크립트는 자바보다 훨씬 느리게 타이핑됩니다. 거의 모든 것을 모든 유형으로 취급하는 것이 행복합니다. 특히, float를 부울로 처리하는 것이 좋습니다 (Java가 컴파일 시간 오류를 발생시키는 반면). (그런데, 왜 이것이 정수가 아닌 float를 반환하는지 알고 싶지 않을 것입니다.)

1
좋은 :) 나는 나 자신을 알만큼 충분히 익숙하지 않았기 때문에 단지 궁금했습니다.
TheLethalCoder

12

Japt , 1 바이트

v

홀수 인 짝수를 반환 1합니다 0.

온라인으로 사용해보십시오!

설명

Japt의 정의 기능 중 하나는 대부분의 골프 언어와 달리 기능에 고정 된 특성이 없다는 것입니다. 즉, 모든 함수는 여러 개의 인수를 허용 할 수 있습니다. 이것은 때때로 논쟁을 생략 할 수 있고 Japt는 당신이 원하는 것을 추측 할 것임을 의미합니다. v숫자는 하나의 인수를 허용 1하고 숫자를 인수로 나눌 수 있으면 리턴하는 함수입니다 0. 예를 들면 다음과 같습니다.

v3

1입력을 3으로 나눌 수 있으면 이 프로그램이 출력 됩니다 0. 기본 인수가 2이므로이 문제를 단일 바이트로 해결합니다.


대체 1 바이트 솔루션 :

¢

¢입력을 밑이 2 인 문자열로 변환합니다. -h플래그는 문자열에서 마지막 문자를 반환합니다.

온라인으로 사용해보십시오!


11

brainfuck , 12 바이트

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

이를 위해서는 원형 테이프와 셀이있는 통역사가 필요합니다. TIO는 65,536 개의 8 비트 셀을 가지고 있으며 요구 사항을 충족합니다.

I / O는 바이트 단위입니다. 홀수 입력은 0x00 (거짓), 0이 아닌 바이트 (거짓) 입력에도 매핑됩니다 .

온라인으로 사용해보십시오!

작동 원리

로 입력 바이트를 읽고로 값에 2,더하는 것으로 시작합니다 . 나중에 왜 증분이 필요한지 살펴 보겠습니다.++

다음으로, 우리는 오른쪽의 셀로 진행하는 루프에 들어가서 2 를 더한 다음 셀의 값을 0으로 .

처음에 입력 셀을 제외한 모든 셀은 0을 유지 합니다. 입력이 홀수이면 2 를 더해 도 절대 0이되지 않습니다. 그러나 테이프를 127 회 반복 한 후 다음 반복 루프는 입력 셀의 오른쪽에있는 셀을 128 × 2 = 0 (mod 256) 으로 설정하여 루프를 종료합니다. >++루프 바디를 한 번 더 반복하므로 다음 셀도 제로 아웃 된 다음. .

반면에, 입력이 n 이고 n 이 짝수이면 루프 앞의 코드는 입력 셀을 n + 2 로 설정합니다 . 테이프 (256-(n-2)) / 2 = (254-n) / 2 회 반복 한 후 입력 셀은 0 에 도달 하고 오른쪽 셀은 값 (254-n) / 2를 유지합니다 × 2 = 254-n . 첨가 후 2>++, .출력한다 (256) - N = -N (개조 256) 이후 비 - 제로이고, n은 비 - 제로이다.

마지막으로, 두 번째 경우는 루프 앞의 입력을 증가시키지 않으면 258-n = 2-n (mod n)을 인쇄 합니다. 테이프 주위에 하나 이상의 루프가 입력 셀을 제로화해야하기 때문입니다. 따라서 프로그램은 입력 2에 실패합니다 .


11

Sinclair ZX81 기본 124 바이트 114 바이트 109 바이트 57 50 토큰 화 된 기본 바이트

아래 Adám의 의견에 따라 최신 릴리스 후보는 다음과 같습니다.

 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 작동-v1 / 2에서 true 또는 false


1
이것은 kolmogorov- 복잡성 이 아닙니다 . 주어진 입력에 대해 0 또는 1을 반환하면됩니다.
Adám

true / false와 같이 <i> 읽거나 </ i> 반환해야하므로 처음 입력 한 이후에 질문이 편집 된 것 같습니다. 따라서 기호 목록을 더 단순화 할 수 있습니다.
Shaun Bebbers

1
왜 0으로 종료해야합니까? 당신은 단지 할 수 없습니까 PRINT (A-2*INT A/2)/A?
Adám

유용하게 편집 한 원래의 질문에서, 그것은 값이 있음을 지정 0농산물 안 TRUE또는 FALSE같은 따라서, 0나는 그것이했던 결과를 안 된 STOP프로그램을 핑 (ping). @SIGSEGV에 의해 게시 된 원래 질문이 문자 그대로 약간 해석되었을 것입니다. 예, 최적화하고 리팩터링 할 수 있습니다.
Shaun Bebbers


8

레티 나, 3 바이트

11

후행 줄 바꿈이 중요합니다. 단항으로 입력합니다. 홀수에 대해서는 1을 출력하고 짝수에 대해서는 아무것도 출력하지 않습니다. 온라인으로 사용해보십시오!


TIO에서 전체 답변 (후행 줄 바꿈에 필요한 형식)을 복사하면됩니다.
Martin Ender

@MartinEnder 아니요, 몰랐습니다.
Neil

영구 링크를 생성 할 때 두 번째에서 마지막 코드 조각입니다.
Martin Ender

아, 그것은 전체 스 니펫입니까? 제목 줄만 봅니다.
Neil

@Neil 스 니펫을 클릭하면 확장되어 본문이 표시됩니다.
Dada

8

C ++, 25 바이트

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

이것은 비트 단위 연산과 같은 값을 가진 변수 템플릿 ( 함수와 같은 구문 )을 정의 합니다 input&1. 0짝수 값의 경우1 홀수 값 이 값은 컴파일 타임에 계산됩니다.

C ++ 14가 필요합니다.

온라인으로 사용해보십시오!


우와, 정말 똑똑해 보입니다. 나는 전에 이와 같은 대답을 본 적이 없다! 이것을 어떻게 부릅니까?
DJMcMayhem

@DJMcMayhem C ++ 14의 변수 템플릿을 간단하게 사용 합니다. 그러나 그다지 영리한 것은 아닙니다. 간단한 함수 aproach ( int o(int v){return v&1;})는 런타임에 값이 계산되는 차이와 함께 동일한 양의 바이트를 사용합니다.
Cássio Renan

코드가 리턴 1로 리턴되거나 0을 리턴하기 때문에 이것이 실제로 자격이 있다고 생각하지 않습니다. 동일한 컴파일 된 코드를 다시 실행해도 다른 결과가 나오지 않습니다. 이런 식으로 함수가 아닙니다. 상수에 더 가깝습니다.
Drunken Code Monkey

@DrunkenCodeMonkey 평가 시간은 관련이 없습니다. 중요한 것은 구조체에 인수를 전달할 수 있고 (입력 제공) 결과를 반환한다는 것입니다 (반환 출력). 당신의 관점에서 볼 때, main()비슷한 구조가 없으면 프로그램은 단지 컴파일 return 0되거나 전혀 컴파일 되지 않기 때문에 함수를 사용할 수 없습니다 . 이것은이 답변에서 링크 된 메타 게시물과 모순됩니다.
Cássio Renan 2016

1
C ++ 람다 함수로 3 바이트 절약 [](int x){return x%2;} 온라인 시도
Johan du Toit

8

피 이스, 3 2 바이트

내가 해냈어 나는 골프를 할 수 없었습니다. 한 번은 마지막 바이트를 얻을 수있는 사소한 솔루션입니다!

!F

짝수 값 (0을 포함하지 않지만 긍정적이지는 않습니다)에 Truthy.

설명:

!    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로 입력을 XOR-ing하면 입력이 감소하지 않습니까? (진실한 진실)

q_F

기본적 Q == Q*-1^Q으로 Q는 입력이지만 루프를 통해 수행됩니다. (진실한 진실)

_FI

같은 상기와.

g^_

로 번역 Q <= -Q^Q(진실한 짝수)

참고 관련된 위의 해결 방법의 g작동합니다 <이성을 상실 truthy-falsiness을 위해.)


1
예, 그것은 다소 영리합니다 :)
Digital Trauma

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로 평가되면 false입니다. 따라서 의사 코드에서 : if x, disp(true), else disp(false). 컴파일에 실패하면 x사용할 수 없습니다. MATLAB 및 여러 다른 언어, 동안 0이 아닌, 진정한 간주됩니다 아무것도 0하고 false거짓으로 간주됩니다. 따라서 문자열 Hello은 MATLAB에서 확실한 값입니다. 그러나 일부 언어에서는 값이 부울 값 (여기서는 경우)이어야하므로를 사용하여 부울로 변환해야합니다 <1.
Stewie Griffin

내가 참조. 설명 주셔서 감사합니다.
YOU

7

피 이스, 3

나는 pyth가 이것을 위해 1 또는 2 바이트 내장을 기대하고있었습니다. 대신 내가 찾을 수있는 최상의 솔루션은 다음과 같습니다.

%Q2

또는

.&1

또는

e.B

2
기본 제공되지는 않지만 2 바이트 솔루션이 있습니다.
Steven H.

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을 다시 시작할 수 있습니다.


나는 지난주에 그것을 사고 싶었 기 때문에 Zachtronics 퍼즐 게임 인 TIS-100을 생각하고있었습니다. TIS도 실제 언어입니까, 아니면 해당 비디오 게임에만 존재합니까?
seshoumara

@seshoumara 내 지식으로는 게임 내에서만 존재합니다. TIS에서 기계의 전체 아키텍처는 다소 전형적인 것으로,이 어셈블리 스타일 언어가 그에 연결됩니다.
steenbergh

나는 그것이 게임에만 존재한다는 사실을 확인할 수 있습니다 (사실 우주에서도 그것은 기묘하고 기괴한 아키텍처입니다). 나는 실제 TIS 장치가있는 것처럼 Turtleman과 연결된 답변을 썼지 만 재미를 위해 캐릭터로만했습니다.
undergroundmonorail

2
@Blacksilver 진짜 도전은 Spacechem 답변을 만드는 것입니다!
Tutleman

1
TIO 용 TIS 에뮬레이터를 구현 했으므로 이제 온라인으로 사용해 볼 수 있습니다!
Phlarx

6

젤리 , 1 바이트

온라인으로 사용해보십시오!

또 다른 내장.

젤리를 모르는 사람들을 위해 : 코드의 누락 된 비트를 유추 할 수있는 약간의 능력이 있으므로 스 니펫, 함수 및 전체 프로그램간에 구문상의 차이가별로 없습니다. 인터프리터는 자동으로 적절한 인수를 입력하고 결과를 출력하는 코드를 추가합니다. PPCG 규칙을 다룰 때 기능과 프로그램은 허용하지만 스 니펫은 허용하지 않는 것이 매우 편리합니다. TIO 링크에서는 이것을 함수로 취급하고 1에서 20까지의 각 정수에서 실행하지만 전체 프로그램으로도 작동합니다.

젤리 , 2 바이트

&1

온라인으로 사용해보십시오!

내장없이 꽤 짧습니다. (1과 비트 단위입니다.)



6

7 , 18 자, 7 바이트

177407770236713353

온라인으로 사용해보십시오!

7에는 일반적인 if 문과 비슷한 것이 없으며 부울을 나타내는 관용적 인 방법이 두 가지 이상 있습니다. 따라서 진실되고 거짓 인 것이 무엇인지 알기는 어렵지만이 프로그램은1 홀수와 널 (null) 문자열을 사용합니다 (7 개의 인터프리터가 작성되는 Perl의 진실과 거짓 값). (이것은 쉽게 변경할 수 있습니다. 홀수 출력은 처음 7 이전에 지정되고 짝수 출력은 처음 두 7 사이에 지정됩니다. 다른 유형의 출력을 처리하려면 출력 형식 변경이 필요할 수 있습니다. 여기에서 가장 짧은 별개의 출력.)

7은 소스의 3 바이트가 8 바이트의 프로그램을 나타내는 압축 된 8 진 인코딩을 사용하므로 디스크에서 18 자의 소스가 7 바이트로 표시됩니다.

설명

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을 선택할 수 있습니다.)

6 개의 초기 스택 요소 중 최상위 프로그램이 기본 프로그램이며 13첫 번째로 실행되는 프로그램입니다. 두 번째는 023출력 형식을 선택하고 입력을 요청하고 해당 작업에 사용됩니다. 세 번째는 3작업 의 부작용으로 소비됩니다 (출력을 생성하는 것 외에도 스택 요소를 버리는 데 사용됩니다). 네 번째 40는 루프의 본문입니다 (그리고 루프 5를 실행하는 사람이 소비 합니다). 그리고 다섯 번째와 여섯 번째는 입력과 동일한 횟수로 교체됩니다 (따라서 입력이 고르면 원래 위치에 있거나 입력이 홀수이면 서로의 위치에있게됩니다).

선행 177을 변경하고 17암시적인 빈 6 스택 요소에 의존 하여 캐릭터를 골프 오프 할 수는 있지만 출력의 패리티는 홀수보다 덜 관용적 인 방법으로 변경되며 저장하지 않습니다. 전체 바이트 (소스는 여전히 7 바이트 길이) 따라서 점수가 더 나쁘지 않기 때문에 더 자연스러운 형태의 출력을 사용하기로 결정했습니다.


6

Brain-Flak , 22 20 바이트

Brain-Flak의 또 다른 멋진 답변은 다음과 같습니다.

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

온라인으로 사용해보십시오!

설명

시작하려면을 사용하여 입력 사본을 만듭니다 (({})).

맨 아래 사본은 실제 값으로 사용되며 맨 위 사본은 실제 처리에 사용됩니다. 이것은 입력이 맨 위에 있어야하고 입력 아래에 1을 넣는 것이 번거롭기 때문에 (2 바이트 추가!) 수행됩니다.

그런 다음 루프를 시작합니다 {({}[()]<>)}. 이것은 감소 할 때마다 스택을 전환하는 표준 카운트 다운 루프의 간단한 수정입니다.

두 개의 스택이 있기 때문에 짝수는 시작한 스택 맨 위에 있고 홀수는 반대 스택에 끝납니다. 복사 된 값은 그대로 유지되어 시작한 위치의 마커 역할을합니다.

루프를 마치면 0(원래 입력) 진실 (입력 사본) 또는 거짓 (빈 스택) 값 위에 앉아 있습니다. 다른 스택에도 반대 값이 있습니다.

또는에 0의해 제거 될 수있는를 제거해야합니다 . 둘 다 작동하고 반대 결과를 제공하는 것처럼 보이지만 진실을 반환해야 할 때 0에 대한 잘못된 값을 유발합니다. 이는 "실제"값이 입력의 사본이고 0이 허위 일 수있는 유일한 입력이기 때문입니다.{}<>{}

이 문제는 <>대신 프로그램을 종료하여 해결 됩니다.

(물론 사양에 따라 기술적으로 0을 지원할 필요는 없지만 지원하는 것을 선호하는 두 가지 옵션을 제공하십시오)


6

BitCycle , 19 17 16 바이트

?ABv
 / \ <
!+ <

온라인으로 사용해보십시오!

단지 손이 닿지 않는 곳에 떠있는 18 바이트 솔루션 :(이처럼 아아, 기분 하하! -2를 사용하여 바이트는 +다른 방향에서 오는 비트를 리디렉션가.

여전히 공백이 너무 많다고 느낍니다 (전체 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

엑셀, 10 바이트

=MOD(A1,2)

또는:

=ISODD(A1)

출력 :

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


1
코드 골프에서 탁월한 성능을 보지 못했습니다 ...
programmer5000

1
이 코드의 대체 Excel VBA 버전 ?[A1]mod 2; 익명의 VBE 즉시 실행 창 함수는 (거짓) 짝수를 나타내고 (거짓) 홀수를 나타내는 [A1]VBE 즉시 실행 창 에서 입력 및 출력을 가져옵니다01
Taylor Scott

5

JSFuck , 9685 9384 6420 바이트

JSFuck은 JavaScript의 원자 부분을 기반으로하는 난해하고 교육적인 프로그래밍 스타일입니다. 6 개의 문자 만 사용하여 코드를 작성하고 실행합니다.

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

홀수의 경우 1을 출력하고 짝수의 경우 0을 출력합니다.

온라인으로 사용해보십시오!

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


나는 당신이 true / false 대신 0/1을 출력 할 수 있다고 생각합니다. alert(prompt()%2)9384자인 것 같습니다.
ETHproductions

나는 이것을 6497 문자 로 골프를 쳤다 . 이것은 다음 JavaScript와 같습니다 []["fill"]["constructor"]("return this%2")["call"]. fill모든 배열 방법 중에서 가장 적은 81 개의 문자 만 사용하므로 선택되었습니다. 또한 JSFuck은 별도의 언어가 아니라 JavaScript의 하위 세트라고 주장 할 수 있습니다.
Luke

@Luke 나는 코드 스 니펫에서 실행할 수 없으며 이것은 단지 농담 답변이므로 내가 잘못하고있는 것을 알아낼 수 없다면 경고 기반 버전을 고수 할 것입니다.
powelles

@Luke 공간을 a +로 바꾸어 77 바이트를 더 절약 하십시오. ;-) 그리고 개인적으로 JSF로 대답 하는 것이 좋습니다 . 기본적으로 JS의 방언입니다.
ETHproductions

붙여 넣은 코드는 함수 이름과 같습니다. 괄호를 추가하고 인수를 포함하십시오.
Luke

5

배쉬 + 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

아마도 $1stdin에서 읽은 바이트를 소비하는 대신 명령 줄 인수에서 bash (예 :)에 입력 할 수 있습니까?

@ ais523 : 좋은 제안! 명령 줄 대신 스크립트에서 수행하는 것에 대해 생각해야했습니다.
Christopher Pitts

을 (를) 단축 할 수 있습니다 bc<<<$1%2.
Dennis

@ 데니스 : 감사합니다! 나는 그것을 이전에 시도했지만 구문을 올바르게 얻을 수 없었습니다.
Christopher Pitts
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.