นี่มันแปลกหรือเปล่า?


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 ได้รับการพิจารณาแม้ว่าจะไม่เป็นบวก)
งานอดิเรกของ Calvin

3
@LucioCrusca ยินดีต้อนรับสู่ PPCG! แนวคิดพื้นฐานของ Code Golf คือการจัดทำโปรแกรมในรูปแบบที่สั้นที่สุดที่คุณสามารถทำได้ ความท้าทายนี้คือการอ่านจำนวนเต็ม (บวกไม่เป็นศูนย์) และส่งออกถ้ามันเป็นเลขคู่หรือคี่ หากคุณกำลังสับสนกับบางสิ่งบางอย่างโปรดเยี่ยมชมThe Nineteenth Byteและถามอย่างอิสระ หรือถ้าคุณกำลังสับสนกับนโยบายของเว็บไซต์หรือกฎระเบียบไปที่Meta สุดท้ายนี้ขอขอบคุณสำหรับการสมัครเป็นสมาชิกชุมชนของเรา!
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(ซึ่งเป็นเท็จ) สำหรับการป้อนข้อมูลได้

ลองออนไลน์!

นี่คือแผน ” (ความพยายามในการอธิบาย)

รหัสอ่านอินพุตเป็นตัวแปร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 (เป็นเท็จ) สำหรับเลขคู่

ลองออนไลน์!

มันทำงานอย่างไร

เราเริ่มต้นด้วยการเพิ่มเซลล์ปัจจุบันด้วยเพื่อให้สามารถเข้าสู่วงในขณะที่+[,>,]

ในแต่ละการวนซ้ำให้,อ่านไบต์จาก STDIN >เลื่อนไปที่เซลล์ทางด้านขวาจากนั้น,อ่านอีกไบต์หนึ่งจาก STDIN เมื่ออินพุตหมดลงล่าม (ตัวแปลบน TIO หรือไม่) จะตั้งค่าเซลล์เป็นNULแทน เมื่อสิ่งนั้นเกิดขึ้นสภาพของ while 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ซึ่ง.พิมพ์


34

Mathematica, 4 ไบต์

OddQ

ให้Trueอินพุตแปลก ๆ หรือFalseแม้แต่ใส่ใครจะรู้?

นอกจากนี้ยังมีEvenQแต่ใครอยากจะพิมพ์สิ่งเหล่านั้น?


22
ไม่นะ. builtins อีกครั้ง
Matthew Roh

7
@SIGSEGV นั่นคือ Mathematica สำหรับ ya ;)
Kevin Cruijssen

6
2∣#&ยังใช้งานได้
Kelly Lowder

1
@KellyLowder จริง แต่นั่นคือ 6 ไบต์
Martin Ender

ทำไมชื่อถึงลงท้ายด้วยQ?
Cyoce

26

รถแท็กซี่ , 1,482 1,290 1,063 1,029 1,009 ไบต์

ฉันไม่เคยเขียนโปรแกรมใน 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
ฉันรู้อยู่เสมอว่าการข้ามไปเป็นสิ่งที่ชั่วร้าย
Aross

2
ภาษาไม่เพียง แต่ต้องการการใช้อย่างกว้างขวางเท่านั้นวิธีการแตกแขนงเพียงอย่างเดียวคือการใช้แผนซึ่งเป็นชื่อที่แตกต่างกันสำหรับการข้ามไป
Engineer Toast

23

เรติน่า 8 ไบต์

[02468]$

คำตอบของ Retina สำหรับการป้อนทศนิยม นี่เป็นโซลูชัน regex ธรรมดาที่ทำงานในเกือบทุกรสชาติของ regex จับคู่ (และพิมพ์1) สำหรับอินพุตคู่และไม่ตรงกัน (และพิมพ์0) สำหรับอินพุตแปลก

ลองออนไลน์!

อีกทางเลือกหนึ่งเช่นกันสำหรับ 8 ไบต์ใช้ระยะการทับศัพท์เพื่อเปลี่ยนตัวเลขทั้งหมดให้xเป็นอันดับแรก

T`E`x
x$

แน่นอนรูปแบบอินพุตที่สั้นที่สุด (แม้แต่สั้นกว่า unary ) จะเป็นเลขฐานสองในกรณีนี้โดยที่ regex แบบง่าย0$จะพอเพียง แต่เนื่องจากความท้าทายนั้นเกี่ยวกับการหาเลขฐานสองที่มีสัญญาณน้อยที่สุดสัญญาณอินพุตแบบไบนารีจึงดูเหมือนจะหลีกเลี่ยงความท้าทายที่เกิดขึ้นจริง


1
+1 สำหรับ "TeX" ทำให้ฉันอยากเห็นคำตอบของ 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(จริง) ถ้าจำนวนเป็นเลขคู่ (คี่) จะส่งกลับFAIL(เท็จ)

C"123"โทรหา


20

MATL , 5 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
'Builtins กำลังน่าเบื่อ' HeAA, HeAA, HeAA. (ขออภัยที่เล่นสำนวนที่ไม่ดี)
แมทธิว Roh

3
@SIGSEGV HeHeHe
Luis Mendo

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-stuff เต็มไปด้วยความวุ่นวายที่ไหน? ฉันรู้สึกว่านี่สั้นอย่างน้อย 50 ไบต์ ...
Stewie Griffin

2
กาลครั้งหนึ่งมีแท็กที่เรียกว่ารหัสหลอก แต่อันนี้เป็นคำตอบที่ดีมากสำหรับ Java และนี่คือคำตอบของcode-golf และบางมากขึ้น
Stewie Griffin

2
@lukeg สวัสดีค่าเริ่มต้นคือโปรแกรมหรือฟังก์ชั่นเว้นแต่จะระบุเป็นอย่างอื่น ซึ่งหมายความว่าภาษาเช่น 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 codels / 16 ไบต์

Source Code

5njaampjhompppam

ล่ามออนไลน์มีให้ที่นี่

โปรแกรมนี้ส่งคืน 0 ถ้าอินพุตเป็นเลขคู่และ 1 ถ้าอินพุตเป็นเลขคี่

ข้อความด้านบนแสดงถึงภาพ คุณสามารถสร้างภาพโดยวางลงในกล่องข้อความในหน้าล่าม เพื่อความสะดวกฉันได้จัดเตรียมรูปภาพด้านล่างโดยมีขนาดของ codel เป็น 31 พิกเซล เส้นตารางมีไว้สำหรับการอ่านและไม่ได้เป็นส่วนหนึ่งของโปรแกรม

คำอธิบาย

โปรแกรมนี้ใช้ modulo builtin เพื่อตรวจสอบว่าอินพุตเป็นเลขคู่หรือคี่

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]

รหัสสีน้ำเงินเข้มที่ด้านล่างซ้ายจะไม่เคยเข้าชมและสามารถเปลี่ยนเป็นสีอื่นนอกเหนือจากสีของรุ่นใกล้เคียง ฉันเลือกสีน้ำเงินเข้มเพราะฉันคิดว่ามันดูดีกับโปรแกรมที่เหลือ Codel สีดำบนซ้ายอาจเป็นสีขาวก็ได้ แต่จะไม่มีสีอื่น ฉันเลือกสีดำเพราะฉันคิดว่ามันดูดีกว่า

ฉันได้จัดทำโปรแกรมในรูปแบบของภาพและรูปแบบข้อความเนื่องจากไม่มีความเห็นเป็นเอกฉันท์เกี่ยวกับวิธีการให้คะแนนโปรแกรม Piet อย่าลังเลที่จะชั่งน้ำหนักในการอภิปรายเมตาดาต้า



14

JavaScript ขนาด 6 ไบต์

ฟังก์ชั่นที่ไม่ระบุชื่อ:

n=>n&1

อีกทางหนึ่งด้วยความยาวเดียวกัน:

n=>n%2

ทั้งสองจะกลับมา0|1ซึ่งควรตอบสนองความต้องการสำหรับtruthy|falseyค่า

ลองออนไลน์ทั้งสองรุ่น


ตามคำตอบของจาวาสิ่งนี้ไม่ได้ตอบสนองความต้องการ JavaScript มีความแตกต่างในเรื่องนี้หรือไม่?
TheLethalCoder

4
คำถามนี้ระบุไว้อย่างชัดเจนว่า " ไม่จำเป็นคุณสามารถใช้ค่า Truthy / Falsy อื่น " 0|1ได้ใช่ไหม @TheLethalCoder
insertusernamehere

1
ฉันไม่แน่ใจว่าพวกเขาอยู่ใน JavaScript หรือไม่นั่นคือสิ่งที่ฉันขอให้ดูmeta q / aเพื่อดูว่าเป็นหรือไม่ ฉันไม่คุ้นเคยในจาวาสคริปต์ที่จะรู้
TheLethalCoder

4
JavaScript ถูกพิมพ์อย่างอ่อนล้ากว่า Java มีความสุขที่ได้ปฏิบัติต่อสิ่งใดในทุกประเภท โดยเฉพาะอย่างยิ่งมีความสุขที่จะปฏิบัติต่อลอยเป็นบูลีน (ในขณะที่ Java จะโยนข้อผิดพลาดในการรวบรวมเวลาถ้าคุณทำเช่นนี้) (โดยวิธีการคุณอาจไม่ต้องการที่จะรู้ว่าทำไมสิ่งนี้ส่งกลับลอยมากกว่าจำนวนเต็ม.)

1
ดี :) ฉันไม่คุ้นเคยพอที่จะรู้จักตัวเองฉันแค่สงสัย
TheLethalCoder

12

Japt 1 ไบต์

v

ส่งคืน1สำหรับเลข0คู่เป็นเลขคี่

ลองออนไลน์!

คำอธิบาย

หนึ่งในคุณสมบัติที่กำหนดของ Japtic นั้นแตกต่างจากภาษากอล์ฟส่วนใหญ่ฟังก์ชั่นไม่ได้มีความคงที่ นั่นคือฟังก์ชั่นใด ๆ สามารถรับจำนวนอาร์กิวเมนต์ใด ๆ ซึ่งหมายความว่าบางครั้งคุณสามารถทิ้งข้อโต้แย้งและ Japt จะเดาสิ่งที่คุณต้องการvon numbers เป็นฟังก์ชั่นที่ยอมรับอาร์กิวเมนต์หนึ่งตัวและส่งคืน1ถ้าจำนวนนั้นหารด้วยอาร์กิวเมนต์0ได้ ตัวอย่างเช่น:

v3

โปรแกรมนี้จะแสดงผล 1ถ้าอินพุตหารด้วย 3 และ0อื่น ๆ มันเพิ่งเกิดขึ้นว่าอาร์กิวเมนต์เริ่มต้นคือ2ดังนั้นจึงแก้ปัญหานี้ในไบต์เดียว


โซลูชันทางเลือก 1 ไบต์:

¢

¢แปลงอินพุตเป็นสตริงฐาน 2 -hธงส่งกลับถ่านที่ผ่านมาจากสตริง

ลองออนไลน์!


11

brainfuck , 12 ไบต์

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

สิ่งนี้ต้องการล่ามพร้อมเทปวงกลมและเซลล์ที่ล้อมรอบ หนึ่งใน TIO มีเซลล์ 65,536 8 บิตและตอบสนองความต้องการ

I / O มีหน่วยเป็นไบต์ แผนที่แปลกไปใส่ 0x00 (เท็จ) แม้กระทั่งอินพุตไปยังไบต์ที่ไม่ใช่ศูนย์ (ความจริง)

ลองออนไลน์!

มันทำงานอย่างไร

เราเริ่มต้นด้วยการอ่านไบต์ของอินพุตด้วย,และเพิ่ม2เข้ากับค่าด้วย++จะคุ้มค่ากับเราจะเห็นในภายหลังว่าเหตุใดการเพิ่มจึงจำเป็น

ต่อไปเราป้อนลูปที่เลื่อนไปยังเซลล์ทางด้านขวาเพิ่ม2เข้ากับมันและทำซ้ำกระบวนการยกเว้นกรณีนี้ตั้งค่าของเซลล์เป็น0 0

ในขั้นต้นเซลล์ทั้งหมดยกเว้นสำหรับเซลล์ที่ป้อนเข้าถือ0 หากอินพุตเป็นเลขคี่การบวก2เข้ากับจะไม่ทำให้เป็นศูนย์ อย่างไรก็ตามหลังจากวนรอบเทป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 BASIC 124 ไบต์ 114 ไบต์ 109 ไบต์ 57เค็นพื้นฐานไบต์โทเค็น

ตามความเห็นของ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


1
นี้ไม่ได้เป็นKolmogorov ซับซ้อน คุณเพียงแค่ส่งคืนค่า 0 หรือ 1 สำหรับอินพุตที่กำหนด
Adám

คำถามดูเหมือนว่าจะถูกแก้ไขตั้งแต่ฉันทำรายการเริ่มต้นของฉันเนื่องจาก <i> อ่าน </i> เหมือนจริง / เท็จจำเป็นต้องส่งคืน ด้วยเหตุนี้ฉันสามารถทำให้รายชื่อสัญลักษณ์ง่ายขึ้น
Shaun Bebbers

1
ทำไมคุณต้องออกจากศูนย์? คุณทำไม่ได้PRINT (A-2*INT A/2)/Aเหรอ
2560

ในคำถามเดิมซึ่งได้รับการแก้ไขอย่างมีประโยชน์ก็ระบุว่าค่า0ไม่ควรสร้างTRUEหรือFALSEดังนั้นจึง0ไม่ควรที่จะสร้างผลลัพธ์แล้วฉันได้มันSTOPping โปรแกรม ฉันอาจตีความคำถามเดิมตามที่ @SIGSEGV โพสต์เล็กน้อยเกินไป ใช่หนึ่งสามารถเพิ่มประสิทธิภาพและ refactor คุณถูกต้อง
Shaun Bebbers

10

05AB1E , 1 ไบต์

È

ค่อนข้างชัดเจนด้วยตนเอง ผลตอบแทนa % 2 == 0

ลองออนไลน์!


Éเป็นทางเลือกที่ดีกว่าในความเห็นส่วนตัวของฉัน; การล้อเล่น
Magic Octopus Urn

7
ผมถือว่าผลตอบแทนÉ a % 2 == 1
SIGSTACKFAULT

1
มันเป็นเพียงการอธิบายตัวเองหากคุณรู้จักผู้ประกอบการอยู่แล้ว
MilkyWay90

8

เรติน่า 3 ไบต์

11

ขึ้นบรรทัดใหม่ที่มีความสำคัญ ใช้อินพุตเป็น unary เอาต์พุต 1 สำหรับตัวเลขคี่ไม่มีอะไรที่จะเป็นเลขคู่ ลองออนไลน์!


คุณรู้ไหมคุณสามารถคัดลอกคำตอบทั้งหมด (ด้วยการจัดรูปแบบที่จำเป็นสำหรับการป้อนบรรทัดต่อท้าย) จาก TIO
Martin Ender

@ มาร์ตินอีกไม่ฉันไม่รู้
Neil

มันเป็นข้อมูลโค้ดที่สองถึงครั้งสุดท้ายเมื่อคุณสร้าง Permalink
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

ฉันไม่คิดว่ามันจะมีคุณสมบัติจริง ๆ เพราะโค้ดจะถูกคอมไพล์เป็น return 1 หรือ return 0 การรันโค้ดที่คอมไพล์เดิมอีกครั้งจะไม่ให้ผลลัพธ์ที่ต่างกันมันไม่ใช่ฟังก์ชันในลักษณะนี้ ใกล้เคียงกับค่าคงที่
Drunken Code Monkey

@DunkunkCodeMonkey เวลาการประเมินผลไม่เกี่ยวข้อง สิ่งที่สำคัญคือฉันสามารถส่งผ่านข้อโต้แย้งไปยังการสร้าง (ให้อินพุต) และมันจะให้ผลลัพธ์กลับมา (ผลตอบแทนการส่งออก) จากมุมมองของคุณจะไม่มีฟังก์ชั่นที่สามารถผ่านการรับรองได้หากไม่มีโครงสร้างที่main()เหมือนกันโปรแกรมก็จะถูกคอมไพล์ไปที่ a return 0หรือแม้แต่ล้มเหลวในการคอมไพล์เลย นี่ขัดแย้งกับเมตาโพสต์ที่ฉันเชื่อมโยงกับคำตอบนี้
Cássio Renan

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-byte ไว้ด้านล่าง

"มีคำตอบอีกคำตอบด้วยโซลูชั่น 3 ไบต์หลายตัว แต่ยังไม่เสร็จสมบูรณ์ลองเพิ่มอีกสองสามข้อ:

@U2

ดัชนีลงในรายการแบบ[0,1]แยกส่วนให้ค่าความจริงกับการป้อนข้อมูลคี่

}2P

เป็น 2 ในการแยกตัวประกอบเฉพาะของอินพุตหรือไม่ (ความจริงแม้กระทั่ง)

ti2

GCD ของ 2 และอินพุต 2 หรือไม่ (ความจริงแม้กระทั่ง)

gx1

XOR อินพุทที่มี 1 ไม่ลดลง? (ความจริงแม้กระทั่ง)

q_F

โดยพื้นฐานแล้วQ == Q*-1^Qที่ Q คืออินพุต แต่ทำผ่านลูป (ความจริงแม้กระทั่ง)

_FI

เช่นเดียวกับข้างต้น

g^_

แปลเป็นQ <= -Q^Q(ความจริงบนคู่)

โปรดทราบว่าโซลูชันใด ๆ ข้างต้นที่เกี่ยวข้องgจะทำงานร่วมกับ<การพลิกความจริงเท็จได้)


1
ใช่มันค่อนข้างฉลาด :)
Digital Trauma

7

C #, 8 ไบต์

n=>n%2<1

Func<int, bool>รวบรวมไป

หรือถ้าไม่อนุญาตให้ใช้งานฟังก์ชั่นที่ไม่ระบุชื่อวิธีการนี้มีขนาด 21 ไบต์:

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

@obarakon ไม่ได้อยู่ใน C # ให้ดูคำตอบเกี่ยวกับเรื่องนี้เมตา โดยทั่วไปif (1)ไม่ได้รวบรวม
TheLethalCoder

ไม่มีif (1)ในรหัสของคุณ?
คุณ

1
@YOU ถูกต้องอ่านเมตาโพสต์เพื่อทำความเข้าใจว่าฉันหมายถึงอะไร
TheLethalCoder

2
@YOU คำจำกัดความที่ยอมรับได้ (บนไซต์นี้) ของค่าความจริง / เท็จคือ: หากif (x)ประเมินเป็นจริงแล้วxจะเป็นค่าจริง falseหากจะประเมินเป็นเท็จแล้วก็ if x, disp(true), else disp(false)ดังนั้นในรหัสเทียม: หากไม่สามารถรวบรวมxได้จะไม่สามารถใช้งานได้ ใน MATLAB และหลายภาษาอื่น ๆ สิ่งที่ไม่ใช่ศูนย์ถือว่าเป็นจริงในขณะที่0และfalseถูกพิจารณาว่าเป็นเท็จ ดังนั้นสตริงHelloจึงเป็นค่าความจริงใน MATLAB แต่บางภาษาต้องมีค่าเป็นค่าบูลีน (กรณีที่นี่) <1จึงต้องถูกแปลงเป็นบูลโดยใช้
Stewie Griffin

ฉันเห็น. ขอบคุณสำหรับคำอธิบาย
คุณ

7

Pyth, 3

ฉันคาดว่า pyth จะมี 1 หรือ 2 ไบต์ในตัวสำหรับสิ่งนี้ นี่คือวิธีแก้ปัญหาที่ดีที่สุดที่ฉันสามารถหาได้:

%Q2

หรือ

.&1

หรือ

e.B

2
ไม่ได้เป็น builtin แต่มีวิธีการแก้ปัญหา 2 ไบต์
Steven H.

7

TIS-100, 39 ไบต์

แน่นอนว่านี่คือโปรแกรมสำหรับสถาปัตยกรรมโหนด T21 Basic Execution ที่แม่นยำยิ่งขึ้นซึ่งจำลองโดย TIS-100 emulator

ฉันจะอ้างถึงคำตอบนี้สำหรับคำอธิบายเชิงลึกของการให้คะแนนสำหรับโปรแกรม 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

ใน pseudocode ดูเหมือนว่า:

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

T21 ไม่มีประเภทบูลีนหรือค่าจริง / เท็จดังนั้นโปรแกรมส่งคืน -1 สำหรับเลขคี่และ 0 สำหรับตัวเลขคู่เว้นแต่อินพุตก่อนหน้านี้เป็นเลขคี่ในกรณีนี้มันจะส่งกลับ -1 สำหรับเลขคู่และ 0 สำหรับคี่ ตัวเลข - หากข้อเท็จจริงนั้นรบกวนคุณนี่คือคำตอบแบบเต็มโปรแกรมดังนั้นคุณสามารถรีสตาร์ท T21 ระหว่างการใช้งานได้


ฉันแค่คิดถึง TIS-100 เกมปริศนา Zachtronics เนื่องจากฉันต้องการซื้อเมื่อสัปดาห์ที่แล้ว TIS เป็นภาษาจริงด้วยหรือมีอยู่เฉพาะในวิดีโอเกมนั้นหรือไม่
seshoumara

@seshoumara สำหรับความรู้ของฉันมันมีอยู่ในเกมเท่านั้น สถาปัตยกรรมทั้งหมดของเครื่องจักรใน TIS นั้นเป็นเรื่องปกติและภาษาในภาษา Assembly นี้จะยึดติดกับสิ่งนั้น
steenbergh

ฉันสามารถยืนยันได้มันมีอยู่ในเกมเท่านั้น (และในความเป็นจริงแล้วแม้แต่ในจักรวาลก็เป็นสถาปัตยกรรมที่แปลกและแปลกประหลาด) ฉันเขียนคำตอบ Turtleman ที่เชื่อมโยงกับราวกับว่ามีอุปกรณ์ TIS จริง ๆ แต่ฉันทำมันด้วยตัวละครเพื่อความสนุกเท่านั้น
undergroundmonorail

2
@ Blacksilver ความท้าทายที่แท้จริงฉันคิดว่าจะตอบ Spacechem!
Tutleman

1
ฉันได้ติดตั้งตัวจำลอง TIS สำหรับ TIO ดังนั้นตอนนี้คุณสามารถลองออนไลน์ได้!
Phlarx

6

เยลลี่ 1 ไบต์

ลองออนไลน์!

อีกตัวใน

สำหรับคนที่ไม่รู้จักเจลลี่: มันมีความสามารถค่อนข้างน้อยในการอนุมานบิตของโค้ดที่หายไปดังนั้นจึงไม่มีความแตกต่างทางไวยากรณ์ระหว่างตัวอย่างข้อมูลฟังก์ชั่นและโปรแกรมเต็มรูปแบบ ล่ามจะเพิ่มรหัสโดยอัตโนมัติเพื่อป้อนอาร์กิวเมนต์ที่เหมาะสมและส่งผลลัพธ์ มันค่อนข้างมีประโยชน์เมื่อต้องรับมือกับกฎ PPCG ซึ่งอนุญาตให้ใช้งานฟังก์ชั่นและโปรแกรม แต่ไม่อนุญาตให้เก็บตัวอย่าง ในลิงก์ TIO ฉันกำลังทำหน้าที่นี้เป็นฟังก์ชั่นและเรียกใช้งานบนจำนวนเต็มตั้งแต่ 1 ถึง 20 โดยรวม แต่ก็ใช้งานเป็นโปรแกรมเต็มได้เช่นกัน

เยลลี่ 2 ไบต์

&1

ลองออนไลน์!

มันค่อนข้างสั้นโดยไม่ต้องสร้างในตัวเช่นกัน (นี่คือ bitwise-AND กับ 1. )


2
ภาษาทั้งหมดเหล่านี้ดูเหมือนโกงสำหรับคำถามเหล่านี้ฮ่า ๆ
Drunken Code Monkey

6

7 , 18 ตัวอักษร, 7 ไบต์

177407770236713353

ลองออนไลน์!

7 ไม่มีอะไรคล้ายกับปกติถ้าคำสั่งและมีมากกว่าหนึ่งวิธีสำนวนที่เป็นตัวแทนของบูลีน ดังนั้นจึงเป็นเรื่องยากที่จะรู้ว่าสิ่งใดที่นับว่าเป็นความจริงและเป็นเท็จ แต่โปรแกรมนี้ใช้1สำหรับเลขคี่และสตริงว่างสำหรับคู่ (ค่าจริงและเท็จสำหรับ Perl ซึ่งเป็นตัวแปล 7 ตัว) (มันง่ายพอที่จะเปลี่ยนสิ่งนี้ได้ระบุคี่เอาท์พุทก่อน 7 ครั้งแรกเอาท์คู่จะถูกระบุระหว่างสองครั้งแรก 7s มันอาจต้องเปลี่ยนรูปแบบเอาต์พุตเพื่อจัดการกับประเภทอื่น ๆ ของเอาท์พุท แต่ฉันใช้ทั้งสอง ผลลัพธ์ที่แตกต่างที่สั้นที่สุดที่นี่)

7 ใช้การเข้ารหัสเลขฐานแปดที่ถูกบีบอัดซึ่งแหล่งที่มาสามไบต์แสดงถึงแปดไบต์ของโปรแกรมดังนั้น 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การดำเนินการสลับ (ซึ่งเป็นสลับและหลบหนีตามด้วย unescape) หากคุณกำลังใช้รูปแบบการส่งออกที่ไม่มั่นคงเกี่ยวกับการหลบหนีที่คุณจะต้องเต็ม405มี (โดยบังเอิญเหตุผลที่เราต้องหนีจากสตริงรูปแบบเดิมคือถ้าผลลัพธ์แรกมีอักขระที่ไม่สามารถแสดงออกได้มันจะบังคับรูปแบบเอาต์พุตโดยอัตโนมัติ 7 การหลีกเลี่ยงมันจะลบอักขระที่ไม่สามารถใช้แทนได้และอนุญาตให้เลือกรูปแบบ 0)

ในหกองค์ประกอบสแต็กเริ่มต้นที่อยู่ด้านบนสุดคือโปรแกรมหลัก (และถูกบริโภคโดยสิ่ง13นั้นคือสิ่งแรกที่ต้องรัน); ที่สองคือ023ที่เลือกรูปแบบเอาต์พุตและร้องขออินพุตและถูกใช้โดยการดำเนินการนั้น ที่สามคือการบริโภคเป็นผลข้างเคียงของการ3ดำเนินการ (มันถูกใช้เพื่อทิ้งองค์ประกอบสแต็คนอกเหนือจากการผลิตเอาท์พุท); ที่สี่40คือร่างกายของวง (และใช้โดย5ที่ดำเนินการวง); และครั้งที่ห้าและหกถูกสลับเป็นจำนวนครั้งเท่ากันกับอินพุต (ดังนั้นท้ายที่สุดในตำแหน่งเดิมของพวกเขาหากการป้อนข้อมูลเป็นคู่หรือในตำแหน่งของกันและกันถ้าอินพุตเป็นคี่)

คุณสามารถตีตัวละครด้วยการเปลี่ยนส่วนนำ177ไปเป็น17(และพึ่งพาองค์ประกอบสแต็กต์ที่หกที่ว่างเปล่าโดยปริยาย) แต่นั่นจะเปลี่ยนพาริตีของเอาต์พุตเป็นวิธีการใช้สำนวนที่น้อยกว่าคี่ - จริงและไม่บันทึก ไบต์ทั้งหมด (แหล่งข้อมูลยังมีความยาวเจ็ดไบต์) ดังนั้นฉันจึงตัดสินใจใช้รูปแบบเอาต์พุตที่เป็นธรรมชาติมากขึ้น


6

Brain-Flak , 22 20 ไบต์

ต่อไปนี้เป็นคำตอบที่เยี่ยมยอดใน Brain-Flak คุณควรลองดู

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

ลองออนไลน์!

คำอธิบาย

(({}))ในการเริ่มต้นเราจะทำสำเนาของการป้อนข้อมูลของเราด้วย

สำเนาด้านล่างจะทำหน้าที่เป็นค่าจริงในขณะที่สำเนาด้านบนจะใช้สำหรับการประมวลผลจริง สิ่งนี้เกิดขึ้นเพราะเราต้องการอินพุตให้อยู่ด้านบนและค่อนข้างยุ่งยาก (สองไบต์พิเศษ!) เพื่อใส่ 1 ไว้ใต้อินพุต

{({}[()]<>)}จากนั้นเราจะเริ่มต้นห่วง นี่คือการปรับเปลี่ยนอย่างง่ายในลูปนับถอยหลังมาตรฐานที่สลับสแต็คทุกครั้งที่มันลดลง

เนื่องจากมีสองกองซ้อนจำนวนคู่จะสิ้นสุดที่ด้านบนสุดของสแต็กจึงเริ่มต้นขึ้นในขณะที่เลขคี่จะจบลงที่สแต็กตรงข้าม ค่าคัดลอกจะยังคงอยู่ในสถานที่และจะทำหน้าที่เป็นเครื่องหมายของที่เราเริ่มต้น

เมื่อเราเสร็จสิ้นการวนรอบเรามี0(เดิมอินพุต) นั่งอยู่ด้านบนของทั้งความจริง (สำเนาของการป้อนข้อมูล) หรือค่าเท็จ (สแต็คว่างเปล่า) เรายังมีค่าตรงข้ามกับสแต็กอื่น

เราจำเป็นต้องได้รับการกำจัด0ที่สามารถถอดออกทั้งโดยหรือ{} <>ทั้งคู่ดูเหมือนจะทำงานและให้ผลลัพธ์ที่ตรงกันข้ามอย่างไรก็ตาม{}ทำให้ค่าเท็จสำหรับศูนย์เมื่อมันควรจะกลับจริง นี่เป็นเพราะค่า "ความจริง" ของเราคือสำเนาของอินพุตและศูนย์เป็นอินพุตเดียวที่อาจเป็นเท็จ

ปัญหานี้แก้ไขได้ด้วยการสิ้นสุดโปรแกรมด้วย<>แทน

(แน่นอนตามข้อกำหนดฉันไม่จำเป็นต้องสนับสนุนศูนย์ทางเทคนิค แต่ให้สองตัวเลือกที่ฉันต้องการสนับสนุน)


6

BitCycle , 19 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
ฉันไม่เคยเห็น excel ใน code golf มาก่อน ...
programmer5000

1
รหัสนี้รุ่น Excel VBA สำรอง, ?[A1]mod 2; ไม่ระบุชื่อ VBE ฟังก์ชันหน้าต่างทันทีที่นำเข้าจาก[A1]และส่งออกไปยัง VBE ทันทีหน้าต่างด้วย0(falsey) แทนแม้และ1(จริง) แทนคี่
Taylor Scott

5

JSFuck , 9685 9384 6420 ไบต์

JSFuck เป็นสไตล์การเขียนโปรแกรมลึกลับและการศึกษาตามส่วนอะตอมของ JavaScript มันใช้เพียงหกตัวละครที่แตกต่างกันในการเขียนและรันโค้ด

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

เอาต์พุต 1 สำหรับคี่และ 0 สำหรับคู่

ลองออนไลน์!

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


ฉันคิดว่าคุณสามารถส่งออก 0/1 แทนจริง / เท็จ alert(prompt()%2)ดูเหมือนจะเป็นตัวอักษร 9384
ETHproductions

ผมแข็งแรงเล่นกอล์ฟนี้ลงไปที่6497 ตัวอักษร นี้เท่ากับ JavaScript []["fill"]["constructor"]("return this%2")["call"]ต่อไปนี้: fillถูกเลือกเนื่องจากมีค่าใช้จ่าย 81 ตัวอักษรซึ่งเป็นวิธีการอาร์เรย์ที่น้อยที่สุด นอกจากนี้คุณสามารถยืนยันว่า JSFuck ไม่ใช่ภาษาที่แยกต่างหาก แต่เป็นส่วนย่อยของ JavaScript
ลุค

@ ลุคฉันไม่สามารถเรียกใช้โค้ดขนาดสั้นและเนื่องจากนี่เป็นเพียงคำตอบที่ตลกฉันจะยึดติดกับเวอร์ชันตามการแจ้งเตือนหากคุณไม่สามารถช่วยฉันหาสิ่งที่ฉันทำผิด
powelles

@ ลุคแทนที่พื้นที่ด้วย a +เพื่อบันทึกอีก 77 ไบต์ ;-) และโดยส่วนตัวฉันคิดว่าการตอบรับใน JSF นั้นใช้ได้ มันเป็นพื้นถิ่นของ JS
ETHproductions

รหัสที่ฉันวางเป็นเหมือนชื่อฟังก์ชั่น เพียงใส่เครื่องหมายวงเล็บต่อท้ายและใส่อาร์กิวเมนต์ในนั้น
ลุค

5

Bash + bc, 21 14 11 9 ไบต์

bc<<<$1%2

อ่านอินพุตบรรทัดคำสั่งขยายค่าลงในสตริงด้วยการดำเนินการ mod และไพพ์สตริงเป็น bc สำหรับการคำนวณ เอาต์พุต 1 สำหรับคี่, 0 สำหรับคู่

กรณีทดสอบ:

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

แก้ไข: บันทึกแล้ว 7 ไบต์ขอบคุณ @ ais523
แก้ไข 2: บันทึกอีก 3 ไบต์ขอบคุณ @Dennis
แก้ไข 3: บันทึกอีกสองขอบคุณขอบคุณ @Dennis


2
ยินดีต้อนรับสู่เว็บไซต์!
DJMcMayhem

บางทีคุณสามารถนำเข้าจากอาร์กิวเมนต์บรรทัดคำสั่งเพื่อทุบตี (เช่น$1) แทนที่จะใช้ไบต์อ่านมันจาก stdin?

@ ais523: คำแนะนำยอดเยี่ยม! ฉันควรคิดเกี่ยวกับการทำมันในสคริปต์แทนเพียงแค่ในบรรทัดคำสั่ง
Christopher Pitts

bc<<<$1%2คุณสามารถลดระยะนี้
Dennis

@Dennis: ขอบคุณ! ฉันลองก่อนหน้านี้ แต่ไม่สามารถรับไวยากรณ์ได้
Christopher Pitts
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.