กลุ่มภาษา OEIS


12

นี่เป็นความท้าทายคำตอบที่เกี่ยวข้องกับ OEIS

โอ้ข้ออ้างสำหรับเรื่องนี้ก็เพราะ บริษัท ต้องการโปรแกรมหนึ่งเพื่อพิมพ์ลำดับ OEIS ของพวกเขาแย่มากจริง ๆ และพวกเขามีทุกภาษา

รูปแบบคำตอบผูกมัดทำงานในวิธีต่อไปนี้:

บางคนโพสต์คำตอบแรกซึ่งการแก้ปัญหาเพิ่มเติมทั้งหมดเกิดขึ้น คำตอบนี้เป็นโปรแกรมที่ให้หมายเลข N ป้อนตัวเลข Nth ในลำดับ OEIS ของดัชนีใด ๆ ที่พวกเขาเลือก (เราจะเรียกมันว่าลำดับ 1) ในภาษาใดก็ตามที่พวกเขาเลือก (ภาษา 1)

บางคนเข้ามาและเลือกลำดับของตนเอง (ซึ่งจะต้องแตกต่างจากก่อนหน้านี้และจากลำดับก่อนหน้าทั้งหมด) พวกเขาสร้างโปรแกรมในภาษาอื่น (ซึ่งจะต้องแตกต่างจากภาษาก่อนหน้านี้ทั้งหมด) ซึ่งกำหนดหมายเลข N ในภาษา 1 เอาท์พุทหมายเลขลำดับที่ Nth 1 และให้หมายเลขเป็นภาษา 2 ส่งลำดับหมายเลขลำดับที่ N 2

กระบวนการนี้จะดำเนินต่อไปไม่สิ้นสุด

คำที่ n ของลำดับคือคำที่มา n ครั้งหลังจากคำสั่งแรกทำงานจากรายการแรก ที่นี่เราใช้การจัดทำดัชนี 0 และ 1 เพื่อให้ง่ายใน coders!

ไม่มีภาษาหรือลำดับการนำมาใช้ซ้ำ

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

คุณต้องไม่โพสต์สองครั้งติดต่อกัน

คุณต้องรอหนึ่งชั่วโมงหรือมากกว่านั้นก่อนโพสต์อีกครั้ง

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

คุณสามารถสันนิษฐานได้ว่าอินพุตหรือเอาต์พุตจะไม่อยู่นอกช่วงตัวเลขของภาษาของคุณ (ตัวอย่างเช่นสมมติว่าขีด จำกัด ของ IEEE จะไม่ถูกแซงโดยลำดับใด ๆ ) แต่อย่าโกงและใช้สิ่งนี้ในทางที่ผิด ภาษาที่มีเพียง 1

สามารถเลือกลำดับใดก็ได้ตราบใดที่ยังไม่เคยใช้มาก่อน

อินพุตไม่สามารถอยู่นอกขอบเขตสำหรับลำดับที่คุณใช้

รุ่นภาษาที่แตกต่างกันสองรุ่นเป็นภาษาที่แตกต่างกัน (Python 2 และ Python 3 ถือว่าเป็นภาษาที่แตกต่างกันของตัวเอง) สิ่งนี้ไม่เข้มงวด แต่เป็นกฎง่ายๆถ้าแยกออกจากภาษาเดียวกันใน TIO เวอร์ชันอื่นจะแตกต่างกัน

สิ่งนี้ไม่ถูกแบน แต่ลองอีกครั้งเพื่อไม่ใช้สูตรที่ OEIS ให้ไว้

หากโค้ดผลลัพธ์ของคุณมีความยาวเกิน 65536 ตัวอักษรให้ระบุลิงก์เพื่อเข้าถึง (เช่น Pastebin)

แค่นี้แหละ พร้อมหรือยัง? ตั้ง? สนุก!

ใช่นี่คือ "หนึ่ง OEIS หลังจากนั้น" แต่ใส่หลายคน ฉันคิดว่ามันจะเท่ห์


1
ฉันมีความสุขอย่างมากกับหนึ่ง OEIS ต่อจากนี้แต่ฉันไม่ค่อยเก่งภาษาที่พูดหลายภาษาดังนั้นฉันอาจจะดูที่นี่จากข้างนอก
Giuseppe

โอ้เด็กคนนี้ฟังดูคุ้น
หู

ใช่. คิดว่ามันเท่ห์และฉันไม่ได้เห็นมัน
Andrew


1
การส่งบางส่วนใช้การจัดทำดัชนี 0 และอื่น ๆ ที่ใช้การจัดทำดัชนี 1 (ดูความคิดเห็นภายใต้การส่ง # 10) ฉันขอแนะนำให้คุณอนุญาตให้ทั้งสอง
Robin Ryder

คำตอบ:


2

15. ผู้วิจารณ์ , A020739

//0q   GxxJiiiiihhZUUUUUUUNYAxcccccbCLDLxyzUUUUUTxyzJCLOzUUUUUURzyzxyzxyzcccccbbCLGC//*/0#
/*	
박망희		   		0#
;*/	
 	

n=>5/2>2?1:40-n//AcaAcAAI(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.wvWwwWWwwwwwwWwWWWw
               //ip@
               //
;/**/
//I01-* h
//
 ;/*'""""""'""" '""""""""""'"""""'""'"""""""'"""'""""'"'"""""""'"""'""""""'"""'""""""""""*/

ลองออนไลน์!

C #
brainfuck
รูนตรา
Jelly
Gol> <>
Javascript (Node.js) (ทุก 1s)
สอด
ช่องว่าง (ทุก 3s)
05AB12 (ทุก 0s)
อ่านไม่ได้
หญ้า
กว้าง
AlphaBeta
Aheui (2s ทั้งหมด)

ฉันมีแผนสองสามข้อกับผู้บรรยาย แต่เพียงผู้เดียวที่รอดชีวิตจากการติดต่อกับภาษาอื่นทั้งหมด มีข้อผิดพลาดเกิดขึ้นอย่างหนึ่งในเยลลี่ (iirc) และฉันไม่สามารถแก้ไขได้เพราะฉันไม่รู้ว่าทำไมเยลลี่ตีความไบต์ในแบบที่มันทำ


เหลือภาษาที่เหลืออยู่ (จากก่อนหน้านี้ฉันพบบางภาษาใหม่!): ประมาณ 6-12
Draco18 ไม่ไว้วางใจ SE

คุณสามารถให้คำแนะนำ / เคล็ดลับสำหรับ Runic Enchantment แก่ฉันได้ไหมฉันสามารถเพิ่มรหัสสำหรับภาษาใหม่และสิ่งเดียวที่เหลืออยู่ในการแก้ไขคือ Runic Enchantments ถ้าฉันเข้าใจถูกต้อง RE เป็นภาษาที่ใช้เส้นทางเดินแบบสองมิติซึ่งเริ่มต้นที่มุมบนซ้ายและเปลี่ยนทิศทางตามสิ่งต่าง ๆ เช่น/\มานา คุณช่วยอธิบายสั้น ๆ เกี่ยวกับการไหลของการดำเนินการใน nr ล่าสุดนี้ได้ไหม 15 คำตอบสำหรับ Runic Enchantments?
Kevin Cruijssen

1
@KevinCruijssen มันไม่ได้เริ่มต้นที่มุมบนซ้ายแตกต่างจาก> <> และภาษา 2D อื่น ๆ มากมาย มันเริ่มต้นที่ใด ๆ ><^v(และทั้งหมด) เวลาเดียวที่เริ่มต้นที่ด้านบนซ้ายคือถ้ารหัสไม่มีไบต์เหล่านั้นและมีความยาวเพียงหนึ่งบรรทัด ดังนั้นพูดได้หลายภาษานี้มีจำนวนมากของ IP ที่อยู่ในรูน แต่เพียงคนเดียวที่ได้ทำอะไรเลย (ปัจจุบัน) >2?1:40-n/เป็นหนึ่งในนี้: 2?ข้าม1:และเพื่อให้คำแนะนำแรกpush 4, push 0, subtract(4-0 → 4) แล้วจำนวนมากไม่มีอะไรเกิดขึ้นจนกว่าจะได้รับการซึ่งผลในการ/ip@ take input, pow(y,x), print-and-terminate
Draco18 ไม่ไว้วางใจ SE

และฉันจะหมายถึงเป็นจำนวนมาก IP ที่ ส่วนใหญ่แล้วจะทำ stack-underflow ในบางลักษณะและยกเลิกโดยไม่สร้างเอาต์พุต
Draco18 ไม่ไว้วางใจ SE

อ้าเข้าใจได้แล้วขอบคุณ! และฉันเพิ่งรู้ว่าฉันลืมที่จะสร้างใน Commentator ล่าสุดของคุณเช่นกัน จะดูว่าฉันสามารถแก้ไขทั้งสองให้ตอบคำถามได้ไหม
Kevin Cruijssen

4

4. เจลลี่ , A000312

n=>40-n//
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.
       //ip@
       //
;/**/

C # (Visual C # Interactive Compiler)
brainfuck
Runic Enchantments
Jelly

คำอธิบาย:

เราบัญชีเฉพาะสำหรับบรรทัดสุดท้ายบรรทัดอื่น ๆ ทั้งหมดจะถูกละเว้น

;/**/ Argument: z
;/    Reduce z by ; (concatenation) [1]
      z is an integer, so this just returns z itself.
   */ Reduce z by * (exponentiation) [2]
      Again, this returns z itself.
  *   Exponentiation: return [1] ** [2]
      This resolves to (z ** z).

ในการทำให้ C # ไม่สนใจรหัสเรากำลังพยายามใส่มันลงในความคิดเห็น อย่างไรก็ตามบรรทัดที่ขึ้นต้นด้วย/ไม่ถูกต้องในเจลลี่เพราะ/ต้องการตัวถูกดำเนินการ ตัวถูกดำเนินการที่เราใช้ที่นี่คือ;เนื่องจากมันพอดีกับเซมิโคลอนใน C # ในความเป็นจริงอัฒภาคและว่างเปล่าความคิดเห็นหลายสายด้วยกันทำให้การเชื่อมโยงที่คำนวณ2 Z = Z Z โปรดทราบว่าการส่งฟังก์ชั่นใน C # ยังคงใช้ได้เนื่องจากไม่มีข้อตกลงทั่วไปที่ไม่อนุญาตให้มีหลายงบในการส่งฟังก์ชั่นที่ไม่ระบุชื่อ (เช่นการนำเข้า)2z=zz


ฉันชอบที่จะอธิบายว่ารหัส Jelly ทำหน้าที่อย่างไร
Draco18 ไม่ไว้วางใจ SE

@ Draco18s เพิ่มแล้ว
Erik the Outgolfer

อ่าสมบูรณ์แบบ อธิบายว่า ขอบคุณมาก.
Draco18 ไม่ไว้วางใจ SE

3

16. Java 8 , A000290

//0q   GxxJiiiiihhZUUUUUUUNYAxcccccbCLDLxyzUUUUUTxyzJCLOzUUUUUURzyzxyzxyzcccccbbCLGC//*/0e#'
/*  
박망희             0#
;*/ 
    //\u000A\u002F\u002A
n=>//\u002A\u002Fn->
/**/""+n==""+n?5/2>2?1:40-/**/n:n*n//AcaAcAAI(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.wvWwwWWwwwwwwWwWWWw
                          //ip@
                          //
;/**/
//I01-* h
//
 ;/*""'"""'""""""""""'"""" "'""'"""""""'"""'""""'"'"""""""'"""'""""""'"""'""""""""""*/

ไม่เคยคิดว่าฉันจะเห็นวันที่ฉันจะสามารถเพิ่มคำตอบ Java เป็นคำตอบที่ 16 ในห่วงโซ่หลายภาษา! : D

1. ลองใช้ใน C #: a(n)=40n
2. ลองใช้ใน brainfuck: a(n)=1+n mod 2
3. ลองใช้ใน Runic Enchantments: a(n)=4n
4. ลอง it in Jelly: a(n)=nn
5. ลองใช้ใน Gol> <>: a(n)=n
6 ลองใช้ JavaScript: a(n)=1
7. ลองใช้ใน Parenthetic: a(n)=1 if xn+yn=zn has a nontrivial solution in integers, otherwise a(n)=0
8 ลองใช้ในช่องว่าง: a(n)=3
9 . ลองใช้ใน 05AB1E: a(n)=0
10. ลองใช้ใน Unreadable: a(n)=n
11. ลองใช้หญ้า: a(n)=n/10(log10(n))
12. ลองใช้ในความกว้าง: a(n)=n+1 with n2
13. ลองใช้มันใน AlphaBeta: a(n)=1n
14. ลองใช้ใน Aheui: a(n)=2
15. ลองใช้ใน Commentator a(n)=2n+6
16. ลองใช้ใน Java 8: a(n)=n2

คำอธิบาย:

ให้ฉันเริ่มต้นด้วยการพูดว่าถึงแม้ว่าฉันจะได้ยินจากแต่ละภาษาเหล่านี้มาก่อนใน CGCC แต่ฉันมีความสามารถเฉพาะกับ Java, C #, 05AB1E และ Whitespace และนอกจากนั้นยังสามารถอ่านส่วนของรหัส JavaScript ได้ ภาษาอื่นส่วนใหญ่ไม่คุ้นเคยสำหรับฉันดังนั้นฉันหวังว่าหลังจากการเปลี่ยนแปลงที่ฉันมีในใจที่จะทำให้ Java โต้ตอบกับ C # / JavaScript ภาษาอื่น ๆ ส่วนใหญ่ยังคงทำงานได้

สิ่งที่สำคัญเป็นครั้งแรกที่จะแก้ไขปัญหาเป็นของ Java n->VS n=>C Java รองรับค่า unicode เป็นส่วนหนึ่งของรหัสดังนั้นการใช้สิ่งต่อไปนี้:

//\u000A\u002F\u002A
n=>//\u002A\u002Fn->

จะตีความเช่นนี้ใน C # / JavaScript:

//\u000A\u002F\u002A
n=>//\u002A\u002Fn->

แต่เป็นเช่นนี้ใน Java:

//
/*
n=>//*/n->

นี่คือเนื่องจาก\u000Aเป็นตัวแบ่งบรรทัด\u002Fเป็น/และ\u002Aอยู่*ใน Java

จากนั้นเพื่อแยกความแตกต่างระหว่าง Java vs C # / JavaScript ฉันได้เพิ่มสิ่งต่อไปนี้:

""+n==""+n?...:n*n

โดยที่...มีอยู่5/2>2?1:40-nและn*nเป็นส่วนหนึ่งของรหัสสำหรับลำดับOeis A000290 (สี่เหลี่ยมจัตุรัสหรือที่รู้จักว่าa(n)=n2 )

ทำไมจึงใช้งานได้ ใน Java Strings เป็นวัตถุที่==ใช้ในการตรวจสอบว่าการอ้างอิงของวัตถุชี้ไปที่สถานที่เดียวกัน (หรือเพื่อตรวจสอบว่า primitives เท่ากัน) และที่เกิดขึ้นจริงObject.equals(Object)จะต้องใช้เพื่อตรวจสอบว่าค่าของวัตถุเหล่านี้เหมือนกัน ดังนั้น""+n==""+nจะเป็นเท็จใน Java แต่ความจริงใน C # / JavaScript


หลังจากนั้นถูกแก้ไข (โดยการใช้ newlines ที่มีอยู่แล้วเพื่อไม่ให้โปรแกรมช่องว่างว่างซ้ำ) บางสิ่งต้องได้รับการแก้ไข สี่โปรแกรมที่มีอยู่กำลังล้มเหลวในขณะนี้: Runic Enchantments, Jelly, Unreadable และ Commentator

การแก้ไขสำหรับอ่านไม่ได้เป็นเรื่องง่าย เราเพิ่มสี่""""ก่อนหน้าแรก'ดังนั้นเราจึงใส่ที่'ใดที่หนึ่งไว้ก่อนหน้านี้ (ฉันวางไว้ที่ท้ายบรรทัดแรก) และลบส่วนนำ'""""จากส่วนที่อ่านไม่ได้ของโค้ดที่ด้านล่าง

IndexError: pop from empty listหลังจากที่มาเจลลี่ซึ่งได้รับการให้ ฉันไม่ค่อยเก่งในเยลลี่ฉันเลยไม่รู้เหมือนกันว่าทำไมมันถึงทำให้เกิดข้อผิดพลาดนี้ หากฉันจำได้อย่างถูกต้องบรรทัดสุดท้ายจะเป็นลิงก์หลักของโปรแกรม Jelly และเนื่องจากรหัสในบรรทัดสุดท้ายนั้นไม่ได้ใช้ลิงก์อื่น ๆ ดังนั้นทุกอย่างจึงควรถูกละเว้น แต่อย่างใดส่วนหนึ่ง""+n==""+nก็ยังให้ปัญหาบางอย่าง ฉันสามารถแก้ไขได้โดยเพิ่มที่/**/ด้านหน้าของบรรทัดนั้น

สำหรับ Runic Enchantments มันไม่ได้เอาท์พุทอะไรอีกแล้ว @ Draco18sชี้ให้ฉันเห็นว่า Runic Enchantments เริ่มต้น>พร้อมกัน แต่มีเพียง>2?1:40-n/และ/ip@มีความเกี่ยวข้อง นี้เป็นความช่วยเหลืออย่างมากที่จะเข้าใจการไหลของโปรแกรมรูนตราและฉันก็สามารถที่จะแก้ไขเส้นทางโดยการเพิ่ม/**/ที่>2?1:40-/**/n:n*nและการเปลี่ยนตำแหน่งของ//ip@, //และพื้นที่บนบรรทัดสุดท้าย

สิ่งที่เหลืออยู่คือ Commentator ณ จุดนั้นฉันตระหนักว่าการแก้ไขก่อนหน้าของฉันในการเพิ่ม/**/ไม่ได้เป็นความคิดที่ดีเพราะมันจะส่งออกขยะเพิ่มเติมเนื่องจาก builtins /*(แปลงแอ็คทีฟเป็นอักขระและเอาต์พุต Unicode) และ*/(เอาต์พุตแอ็คทีฟเป็นตัวเลข) .. >.> หลังจากเล่นไปมาแล้วลองทำบางอย่างการแก้ไขกลายเป็นเรื่องง่ายมาก: ฉันได้เพิ่มไว้eก่อนหน้า#ในบรรทัดแรก e#เป็น builtin ที่จะปฏิเสธการใช้งานแก้ไขปัญหาที่เกิดจากรหัสที่ฉันเพิ่ม (apparently)


2
ว้าวทำได้ดีมาก ฉันไม่ได้คาดหวังว่าจะเห็น Java เพิ่มเข้ามา ณ จุดนี้เช่นกัน
Draco18 ไม่ไว้วางใจ SE

@ Draco18s ฉันดีใจที่ความท้าทายหลายภาษานี้ไม่ได้เริ่มต้นด้วย Python ตั้งแต่นั้นมามันก็เป็นไปไม่ได้ที่จะเพิ่ม Java JavaScript / C # ค่อนข้างคล้ายกับ Java ในแง่ของความคิดเห็นและการดำเนินการดังนั้นช่วยได้มากที่นี่ ดีใจที่ฉันได้ทำงาน ขอให้โชคดีในกลุ่มต่อไป ฉันอาจไม่สามารถสร้างเครือข่ายได้อีกต่อไป แต่ฉันหวังว่าจะเห็นมันเติบโตขึ้นอย่างน้อยสองสามครั้ง :)
Kevin Cruijssen

สิ่งที่ฉันเตรียมไว้คือชุดที่ใช้ชุดอักขระที่ไม่รบกวนและไม่สนใจอักขระที่ไม่ได้อยู่ในชุดคำสั่งหรือภาษา 2D ที่ใช้กฎที่แตกต่างกัน
Draco18 ไม่ไว้วางใจ SE

2

6. JavaScript (Node.js) , A000012

//
n=>5/2>2?1:40-n//
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.
               //ip@
               //
;/**/
//I01-* h
//
 ;/**/

C # (A022996) : เนื่องจาก5/2==2ฟังก์ชันส่งคืน40-n(บรรทัด 2)

BF (A000034) : ส่วนที่เพิ่มจะดันทั้งเทปหนึ่งเซลล์ไปทางขวาเท่านั้นส่วนอื่น ๆ ไม่เปลี่ยนแปลง (บรรทัดที่ 2-3)

Runic (A000302) : ?หลังจาก2ข้าม1:และการดำเนินการอื่น ๆ จะตามมาจาก4(สาย 2)

เยลลี่ (A000312) : ไม่เปลี่ยนแปลงบรรทัดสุดท้าย

Gol> <> (A001489) : ไม่เปลี่ยนแปลงคอลัมน์แรก

JS (ES6) (A000012) : เนื่องจาก5/2>2ฟังก์ชันส่งคืน1(บรรทัด 2)

แอบแฝง5/2>2?1:40-nเข้าไปในส่วนที่สามของ C # ใน C # เนื่องจาก5/2==2ฟังก์ชันส่งคืน40-nในขณะที่ใน JS 5/2>2ฟังก์ชันจะคืนค่า 1 ความคิดเห็นแบบ C ทำให้แทบจะเป็นไปไม่ได้ที่จะเพิ่มภาษาที่ใช้งานได้จริง (โดยเฉพาะ C และ Python) มีการเพิ่มช่องว่างเพิ่มเติมในบรรทัดที่ 4-5 เพื่อให้แน่ใจว่าส่วน Runic ทำงานได้ดี


1
The C-style comments made it nearly impossible to add more practical languages (specifically C and Python).นั่นคือหนทางแห่งความท้าทายหลายภาษา
Draco18 ไม่ไว้วางใจ SE

2

8. ช่องว่าง , A010701

//   
	
		   		
	
 	

n=>5/2>2?1:40-n//(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.
               //ip@
               //
;/**/
//I01-* h
//
 ;/**/

ลองออนไลน์!

C #
Brainfuck
Runic
Jelly
Gol> <>
Javascript
Paranthetic

ฉันไม่รู้ว่า Whitespace ทำงานอย่างไร ฉันพยายามอย่างหนักในการคูณค่าด้วยค่าอื่น แต่มันก็ยังคงบ่นเกี่ยวกับเลขคณิตของเลขคณิตดังนั้นเมื่อฉันมีอินพุตทำงานการทำงานเอาต์พุตและการทำงานแบบ push-value-to-stack ดังนั้นฉันจึงไปกับมัน

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

ฉันไม่ทราบว่า Paranthetic ทำงานอย่างไรดังนั้นฉันจึงไม่สามารถตรวจสอบได้ว่าการส่งนั้นถูกต้อง แต่เท่าที่ฉันสามารถบอกได้ว่าโค้ด Whitespace นั้นไม่รบกวน

คำตอบในอนาคต: โปรดทราบว่าแท็บใน Runic เป็นคำสั่งเดียวที่กว้างและเล่นความเสียหายด้วยเลย์เอาต์ของรหัส


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

@ArBo เป็นไปได้ ฉันเพิ่งรู้ว่าถ้าฉัน "อ่านพิมพ์" ฉันจะได้รับการป้อนกลับของฉัน แต่ถ้าฉันทำ "read, push 10, print, print" ฉันจะได้ 10 และข้อผิดพลาด ดังนั้นฉันจึง "เฮ็คกับมัน" และทำสิ่งที่ฉันรู้ว่าทำได้
Draco18 ไม่ไว้วางใจ SE

1
FYI: การป้อนข้อมูลในช่องว่างถูกส่งไปยังฮีปสเปซซึ่งทำหน้าที่เป็นพจนานุกรม / แผนที่ สมมติว่าคุณทำ: กด 10 อ่าน STDIN สแต็กจะว่างเปล่าและฮีปจะมี[{10: input}]อยู่ หากต้องการสร้างโปรแกรม cat ที่อ่านและแสดงผลทันทีใน Whitespace คุณมักต้องการทำดังนี้กด 0; ซ้ำ 0; อ่าน STDIN; ดึงข้อมูล (สิ่งนี้จะปรากฏ 0 ที่เราทำซ้ำและกดค่าจากที่อยู่ฮีป 0 เป็นสแต็ก); ป๊อปและส่งออกไปยัง STDOUT PS: ที่นี่เป็นดีบักเกอร์ออนไลน์ที่มีประโยชน์ฉันมักจะใช้
Kevin Cruijssen

@KevinCruijssen มีประโยชน์!
Draco18 ไม่ไว้วางใจ SE

2

11. หญ้า , A000030

//0q   
	
		   		
	
 	

n=>5/2>2?1:40-n//(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.wvWwwWWwwwwwwWwWWWw
               //ip@
               //
;/**/
//I01-* h
//
 ;/*'""""""'""" '""""""""""'"""""'""'"""""""'"""'""""'"'"""""""'"""'""""""'"""'""""""""""*/

ลองออนไลน์!

หญ้าไม่สนใจตัวละครทั้งหมดยกเว้นw, vและW; สิ่งอำนวยความสะดวกเหล่านี้สามตัวละครจะถูกละเว้นโดยหลายภาษาที่ใช้ก่อนหน้านี้ โชคดีที่ลำดับ A000030 (คืนค่าตัวเลขเริ่มต้นในฐาน 10) ยังคงมีอยู่เนื่องจากการเข้ารหัสฟังก์ชั่นที่ซับซ้อนเล็กน้อยใน Grass ยังเกินความสามารถของฉัน

C #
brainfuck
Runic
Jelly
Gol> <>
JavaScript
Parenthetic
Whitespace
05AB1E
ไม่สามารถอ่านได้

ส่วนที่เกี่ยวข้องกับ Grass คือ wvWwwWWwwwwwwWwWWWwส่วนที่เกี่ยวข้องสำหรับหญ้านี่คือความเข้าใจของฉัน (อาจมีข้อบกพร่อง) เกี่ยวกับวิธีการทำงาน: สแต็กเริ่มต้นได้เป็นOUT::SUCC::w::IN::ε(นั่นwเป็นเพียงตัวละครw) แต่ละคำสั่งจะเพิ่มองค์ประกอบให้กับสแต็ก (จะไม่แตก); จำนวนws หรือWs แสดงว่าลึกเข้าไปในกอง; vแยกคำแนะนำ

wv        # identity
Www       # identity OUT
WWwwwwww  # identity IN (read in 1 character)
Ww        # apply the function identity IN
WWWw      # apply the function identity OUT to the value at the top of the stack

ถ้าใส่เป็น1234ที่สิ้นสุด, 1::1::id IN::id OUT::id::OUT::SUCC::w::IN::εสแต็คอาจจะมีลักษณะเช่นนี้

มันอาจทำให้สั้นลง (ไม่จำเป็นต้องกำหนดid OUTเช่น) แต่ฉันหยุดทันทีที่ฉันพบรุ่นที่ใช้งานได้

หากใครที่รู้ Grass ต้องการแก้ไข / ปรับปรุงคำอธิบายโปรดแก้ไขคำตอบของฉัน!


นี่เป็นหนึ่งในภาษาที่ฉันระบุว่าใช้การได้ แต่ไม่สามารถเข้าใจเอกสารและเขียนรหัสได้ +1
Draco18s ไม่ไว้วางใจ SE

1
@ Draco18s ฉันพยายามเพิ่มคำอธิบายว่ามันทำงานอย่างไร
Robin Ryder

ช่วยได้อย่างแน่นอน แต่ก็ยังเกาหัว ฉันต้องทำการแก้ไขหนึ่งในคำตอบในอนาคตของฉันในขณะที่คุณคิด A000030 (ภาษาที่ใช้อินพุตเป็นไบต์เดียวเป็นความเจ็บปวดโปรแกรม 3 ไบต์กลายเป็นเกือบ 60 (ใช่ฉันได้วางแผนไว้แล้ว )
Draco18 ไม่ไว้วางใจ SE

2

17. Pepe , A000578

//0q   GxxJiiiiihhZUUUUUUUNYAxcccccbCLDLxyzUUUUUTxyzJCLOzUUUUUURzyzxyzxyzcccccbbCLGC//*/0e#'
/*	
박망희		   		0#
;*/	
 	//\u000A\u002F\u002A
n=>//\u002A\u002Fn->
/**/""+n==""+n?5/2>2?1:40-/**/n:n*n//AcaAcAAI(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.wvWwwWWwwwwwwWwWWWw
                          //ip@
                          //rEeE rEeeEe reEE
;/**/
//I01-* h
//
 ;/*""'"""'""""""""""'"""" "'""'"""""""'"""'""""'"'"""""""'"""'""""""'"""'""""""""""*/

ล่ามออนไลน์

C #
Brainfuck
Runic Enchantments
Jelly
Gol> <>
Javascript (Node.js) (ทั้งหมด 1 วินาที)
Parenthetic
Whitespace (ทั้งหมด 3 วินาที)
05AB12 (ทั้งหมด 0 วินาที) ความกว้างของหญ้าที่
อ่านไม่ได้


AlphaBeta
Aheui (2s ทั้งหมด)
วิจารณ์
Java

คุณจะต้องแก้ตัวลิงก์ Pepe ที่ไม่มีแหล่งข้อมูลเต็มรูปแบบ: ล่ามไม่สนใจรหัสใด ๆ ที่ไม่ใช่ Pepe (สว่างขึ้นตัวละครใด ๆ ที่ไม่ได้อยู่ในชุด) RE re ) และลิงก์สั้น ๆ ของมันจะไม่รบกวนการเข้ารหัส ค่าอินพุตเหมือนกัน

a(n)=n3

The AlphaBeta เริ่มโยนข้อผิดพลาดหลังจากเขียนผลลัพธ์ แต่เมื่อก่อนคำตอบจะถูกฉีดเข้าไปในปัญหานั้นฉันทิ้งไว้คนเดียว ฉันได้วางแผนที่จะแก้ไขสำหรับคำตอบนี้ แต่ฉันต้องใช้เวลาสักครู่ขุดลงกระโดดข้ามเพื่อแก้ไขปัญหา ข้อผิดพลาดกับอินพุต>0นั้นง่ายต่อการแก้ไข แต่การให้มัน0จะสร้างข้อผิดพลาดเดียวกันและใช้เวลาในการเรียนรู้รหัสใหม่เพื่อแก้ไขออฟเซ็ต ฉันหวังว่าฉันจะสามารถใช้Wแทนได้UUUUUUUUUUแต่มันเล่นกับความเสียหายด้วยรหัสหญ้า


อีก 4-11 ภาษาที่จะไป หนึ่งในสิ่งที่ฉันได้เทมเพลตตัดสินใจที่จะทำให้ Brainfuck ได้รับความคิดเห็นที่ไม่เหมาะสมดังนั้นฉันจึงไม่ได้ใช้สิ่งนั้นสำหรับคำตอบนี้ (ฉันกำลังจะไป!) เมื่อทราบว่า BF เสร็จสิ้นเร็วแค่ไหนฉันตั้งคำถามว่ามันใช้ได้หรือไม่และไม่ได้ตรวจสอบ BF เลย
Draco18 ไม่ไว้วางใจ SE

[การเปิดเผยข้อมูลทั้งหมดเกี่ยวกับยอมรับเครื่องหมาย] ฉันลืมว่าวันพฤหัสบดีที่ 4 เป็นวันหยุดและไม่สามารถเข้าถึงบันทึกย่อของฉันได้ทันเวลาเพื่อโพสต์คำตอบนี้ก่อนหนึ่งสัปดาห์ที่ผ่านมา ฉันทำให้อัตราการตอบรับของฉันช้าลงเพื่อให้ผู้อื่นสามารถค้นหาและโพสต์คำตอบได้ ฉันไม่ได้ตั้งใจที่จะอยู่ได้นานกว่าระยะเวลาผ่อนผัน (ถ้าฉันต้องการทำเช่นนั้นฉันสามารถทำได้โดยไม่โพสต์ # 15 เลยปล่อยให้ # 13 ได้รับการยอมรับ) เนื่องจากฉันสนใจที่จะดูว่ามันจะไปได้ไกลแค่ไหน ภาษาอื่น ๆ 4 หรือ 5 ภาษาที่ฉันแก้ไขไปก่อนที่จะแสดงรายการภาษาที่เหลือที่ฉันคิดว่าสามารถใช้งานได้หากฉันไม่สามารถทำได้
Draco18 ไม่ไว้วางใจ SE


1

9. 05AB1E , A000004

//0q   
	
		   		
	
 	

n=>5/2>2?1:40-n//(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.
               //ip@
               //
;/**/
//I01-* h
//
 ;/**/

C # (Visual C # Interactive คอมไพเลอร์)
brainfuck
Runic Enchantments
Jelly
Gol> <>
JavaScript (Node.js)
Parenthetic
Whitespace
05AB1E


1

7. สอด , A019590

//
n=>5/2>2?1:40-n//(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.
               //ip@
               //
;/**/
//I01-* h
//
 ;/**/

C # (A022996)

BF (A000034)

Runic (A000302)

เยลลี่ (A000312)

Gol> <> (A001489)

JS (ES6) (A000012)

ค่าพารามิเตอร์ (A019590)

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


ฉันต้องการที่จะเข้าใจวิธีการส่งผ่านข้อมูลไปยัง Paranthetic เพราะฉันเห็นว่าลำดับไม่คงที่ แต่ไม่รู้ว่าจะให้โปรแกรมเปลี่ยนเอาต์พุตจริงได้อย่างไร Nope Nope Nope
Draco18 ไม่ไว้วางใจ SE

@ Draco18s มันไม่ได้ป้อนข้อมูลในแง่ที่คุณพยายามทำ ((()))รหัสที่ตัวเองกำหนดฟังก์ชั่นที่เรียกว่า ส่วนท้ายเรียกฟังก์ชันนั้นพร้อมอาร์กิวเมนต์อะไรก็ได้ที่คุณต้องการ ชุดของวงเล็บภายใต้หมายเลข 2 หมายถึง 2 ใน Parenthetic การเปลี่ยนครั้งสุดท้าย()()ที่จะ()n * nจะเรียกฟังก์ชั่นบน
ArBo

1
อ่า ... มันสมเหตุสมผลแล้ว มันเป็นเพียงสิ่งที่ฉันได้รับการกระตุ้นเพราะฉันไม่มีวิธีที่ดีในการตรวจสอบการส่งและการประกันความถูกต้องเป็นไปข้างหน้า (ฉันอยู่ใน "มันยังคงเอาท์พุทในสิ่งเดียวกันดังนั้นมันจะต้องดีฉันเดา?" ) นั่นช่วยได้
Draco18 ไม่ไว้วางใจ SE

1

10 ไม่สามารถอ่านได้A001477

//0q   
	
		   		
	
 	

n=>5/2>2?1:40-n//(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.
               //ip@
               //
;/**/
//I01-* h
//
 ;/*'""""""'""" '""""""""""'"""""'""'"""""""'"""'""""'"'"""""""'"""'""""""'"""'""""""""""*/

ลองออนไลน์!

C #
Brainfuck
Runic
Jelly
Gol> <>
Javascript
Paranthetic
Whitespace
05AB1E

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

[A=READ()];DO{(A+1)?:BOTH(PRINT(A),[A=READ()])}
[A=READ()]: '""""""'"""'""""""""""
PRINT(A): '"'"""""""'"""
A?: '""'"""
Functioning:
['""""""'"""'""""""""""];'"""""{('""'"""""""'""")?:'""""('"('"""""""'"""),['""""""'"""'""""""""""])}

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

การทำงานผ่านเดสก์ท็อประยะไกลเป็นสิ่งที่เจ็บปวดคุณคิดว่าสิ่งต่าง ๆ ทำงานได้ดีทำการเชื่อมโยงทั้งหมด


ฉันลืมที่จะลบ แต่;/**/ในพื้นที่ตรงกลางไม่ได้ทำอะไรและสามารถลบออกได้ แน่นอนว่า 99% มันเป็นก้อนเยลลี่ แต่มันได้ทำซ้ำที่ไหนสักแห่งระหว่างทางและไม่ได้ทำหน้าที่อีกต่อไป
Draco18 ไม่ไว้วางใจ SE

@RobinRyder Ditto ยังได้แก้ไขลิงก์ไปยัง Runic (คัดลอกวางไม่ดีที่ไหนสักแห่งระหว่างทาง) ดู # 3 สำหรับคำอธิบายว่าทำไมมันถึงทำงานได้ใน Runic
Draco18 ไม่ไว้วางใจ SE

สำหรับการอ้างอิง: ฉันรู้ว่ามีความเป็นไปได้ที่จะเพิ่มอย่างน้อย 5 โซ่จากที่นี่ แต่อาจใกล้ถึง 15
Draco18s ไม่ไว้วางใจ SE

1

14. Aheui , A007395

มีการเปลี่ยนแปลงเล็กน้อยเพื่อให้ AlphaBeta ทำงานได้

//0q   GxxJiiiiihhZUUUUUUUNYAxcccccbCLDLxyzUUUUUTxyzJCLOzUUUUUURzyzxyzxyzcccccbbCLGC
/*  
박망희*/               



n=>5/2>2?1:40-n//AcaAcAAI(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.wvWwwWWwwwwwwWwWWWw
               //ip@
               //
;/**/
//I01-* h
//
 ;/*'""""""'""" '""""""""""'"""""'""'"""""""'"""'""""'"'"""""""'"""'""""""'"""'""""""""""*/

ลองออนไลน์!

Aheui ยกเลิกตัวละครที่ไม่ใช่ภาษาเกาหลีใด ๆ เลย박망희excuted ซึ่งพิมพ์2และยุติ

C #
brainfuck
รูนตรา
Jelly
Gol> <>
Javascript (Node.js)
สอด
ช่องว่าง
05AB12
อ่านไม่ได้
หญ้า
กว้าง
AlphaBeta
Aheui


ดังนั้นเราจึงมีทั้งหมด 1, 2 และ 3 ทั้งหมดตอนนี้ฮ่า ๆ
Shieru Asakoto

@ShieruAsakoto โอ้มีทั้งหมด 3 ตัวใช่ไหม ฉันไม่รู้
LegenDUST

# 8 คือ all-3 Mine (# 6) คือ all-1
Shieru Asakoto

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

1
@ Draco18s ถูกย้าย/*และใช้งานได้ในขณะนี้ และรหัส Aheui ก็ดีมากขึ้น
LegenDUST


0

3. เควสรูน , A000302

n=>40-n//
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.
       //ip@
       //

ลองออนไลน์!

ค#

BF

หากคุณต้องการความช่วยเหลือในการรักษาฟังก์ชั่น Runic นั่นก็คือEsoteric IDEเช่นเดียวกับ IDE ของฉัน (สร้างขึ้นใน Unity3D) ในสาขาหลักของ repo คอมไพล์ของ Runicrepo Esoteric IDE ไม่สามารถจัดการกับการแสดงทิศทาง IP ได้เป็นอย่างดี (โดยหลักแล้วฉันไม่สามารถที่จะเพิ่มในกรอบที่มีอยู่เดิม)

ทั้งหมด BF สร้างพวงของ IP ที่ที่ตนเองยุติเนื่องจากการดำเนินการที่ไม่ถูกต้อง (ส่วนใหญ่เนื่องจากการสแต็คอันเดอร์โฟล์) ในขณะที่>ใน C # populates สแต็คที่มีการ4ตีกลับของผู้ผลิตแสดงความคิดเห็น (กระจกในรูน) ถึงip@การดำเนินการx^4เกี่ยวกับ อินพุต x และพิมพ์ผลลัพธ์


0

5. Gol> <> , A001489

//
n=>40-n//
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.
       //ip@
       //
;/**/
//I01-* h
//
 ;/**/

ลองออนไลน์!

C #
Brainfuck
Runic
Jelly

ใช้เครื่องหมายความคิดเห็นบรรทัดเดียวใน C # เพื่อเปลี่ยนเส้นทาง Fish IP ไปยังโค้ดI01-*hการทำงานอินพุตการอ่านการคูณด้วย -1 และส่งผลลัพธ์ออกมา Gol> <> ทำการอ่านอินพุตและทิ้งสแต็กเป็นจำนวนง่ายเมื่อเปรียบเทียบกับ raw> <>

ช่องว่างถูกแทรกเพื่อประกันการไหลที่เหมาะสมของ Fish และ Runic IPs ซึ่งทั้ง C # และเยลลี่ไม่สนใจช่องว่างชั้นนำในบรรทัดสุดท้าย (และเป็นเซลล์ NOP ใน fungoids ทั้งสอง)


0

12. ความกว้าง , A020725

//0q   
	
		   		
	
 	

n=>5/2>2?1:40-n//AcaAcAAI(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.wvWwwWWwwwwwwWwWWWw
               //ip@
               //
;/**/
//I01-* h
//
 ;/*'""""""'""" '""""""""""'"""""'""'"""""""'"""'""""'"'"""""""'"""'""""""'"""'""""""""""*/

1 การจัดทำดัชนี ส่งออกโดยรหัสทางออก

ลองออนไลน์!

a-zA-Zตัวละครที่เกี่ยวข้องเท่านั้นที่จะมีความกว้าง ความกว้างของรหัสทำงานดังนี้:

qnnAcaAcAAI

อักขระสามตัวแรกqnnไม่มีตัวเลือก Acอ่านจำนวนเต็มจากอินพุตaเป็น no-op และAcAAเพิ่มจำนวนเต็มทีละหนึ่ง Iสิ้นสุดโปรแกรมและส่วนบนสุดของสแต็กจะกลายเป็นรหัสออก ตัวอักษรอื่น ๆ ทั้งหมดในโปรแกรมจะถูกละเว้นเนื่องจากโปรแกรมถูกยกเลิก

C #
brainfuck
Runic Enchantments
Jelly
Gol> <>
JavaScript
Parenthetic
Whitespace
05AB1E หญ้า
อ่านไม่ได้


ฉันอาจจำได้ว่าวิ่งข้ามสิ่งนี้ไปในการค้นหา eslolangs เพื่อพิจารณาความท้าทายนี้ ฉันคิดว่าฉันทิ้งเพราะความขัดแย้งกับภาษาอื่นที่ฉันกำลังพิจารณา แต่ฉันคิดว่าฉันยังดี การตรวจสอบคร่าวๆชี้ให้เห็นว่าฉันสามารถทำให้ทั้งสองเล่นได้ดี
Draco18 ไม่ไว้วางใจ SE

0

13. AlphaBeta , A162672

//0q   GxxJiiiiihhZUUUUUUUNYAxcccccbCLDLxyzUUUUUTxyzJCLOzUUUUUURzyzxyzxyzcccccbbCLGC
	
		   		
	
 	

n=>5/2>2?1:40-n//AcaAcAAI(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.wvWwwWWwwwwwwWwWWWw
               //ip@
               //
;/**/
//I01-* h
//
 ;/*'""""""'""" '""""""""""'"""""'""'"""""""'"""'""""'"'"""""""'"""'""""""'"""'""""""""""*/

ลองออนไลน์!

เดิมทีฉันวางแผนที่จะใช้ลำดับ A000030 และรหัสJCLแต่มันได้ yoinked (ฉันไม่โทษพวกเขามันเป็นลำดับที่ดีสำหรับภาษาที่รับอินพุตเป็นไบต์เดียว) รหัสต้นฉบับสำหรับรายการนี้หลังจากเลือกลำดับใหม่คือ:

JiiiiihhZUUUUUNYAxcccccbCLDLxyzUUUUTTxxyzJCLOzWRxyxyzcccccbbCL
^                                                                 Read input (single byte)
                 ^          ^^^      ^^^^    ^  ^^^^^             Clear regisers
        ^                                            ^^^^^^^^^    Input = 0: print 0
 ^^^^^^^ ^^^^^                 ^^^^^^         ^                   Set jump locations
                  ^^^^^^^^                                        Print `1`
                          ^^                                      Print initial byte
                                         ^^^                      Read and print input
                                            ^                     (and loop)

ลำดับของxxxหรือxyzxyzเป็นตัวเว้นวรรคที่มีประโยชน์ในการทำให้ค่าข้ามไปยังเป้าหมายง่ายขึ้น (46 ง่ายกว่าเช่น "5 * 10-4" - 9 คำสั่ง - กว่า "4 * 10 + 6 - สิบคำสั่ง - แต่ 50 คือแม้ ง่ายกว่า: แค่ห้า) คุณจะเห็นว่ามีบางอย่างพอสมควร

แต่เนื่องจากมีไบต์อื่น ๆ ในบรรทัดแรกตัวแปลงสัญญาณข้ามไปจึงต้องการค่าใหม่บางค่าและเปลี่ยนเป็น:

//0q   xxxJiiiiihhZUUUUUUNYAxcccccbCLDLxyzUUUUUTxxyzJCLOzWRxyxyzcccccbbCL

หลีกเลี่ยงการดำเนินรหัสนี้เป็นรหัสที่กว้างมีส่วนร่วมเพียงห่อในGจะทำให้มันเป็นตัวอักษรสตริง (ซึ่งไม่ได้ทำอะไรที่สำคัญในการ AlphaBeta) คำสั่งที่จะปรากฏด้านบนของสแต็คแล้วพิเศษบางอย่างWที่จะทำให้เบต้าอัลฟาไม่ผิดพลาดเมื่อออกจาก:

//0q   GxxJiiiiihhZUUUUUUNYAxcccccbCLDLxyzUUUUUTxxyzJCLOzWWWWWWRxyxyzcccccbbCLGw

เพื่อหลีกเลี่ยงความขัดแย้งกับ Grass แม้ว่าจะใช้คำสั่งแทนการ popping คำสั่งw Cแทน จากนั้นการข้าม "โปรแกรมออก" จะถูกแทนที่ด้วยUUUUUUแทนที่จะWWWWWWเป็นการปล่อยให้ IP อยู่ตรงกลางของรหัสขยะที่เหลือ แต่ไกลพอที่จะไม่พิมพ์ข้อผิดพลาดใด ๆ จำนวนUs เพิ่มเติมใด ๆ ที่สามารถเพิ่มเป็นคู่ถ้ามันกลายเป็นปัญหา

//0q   GxxJiiiiihhZUUUUUUNYAxcccccbCLDLxyzUUUUUTxxyzJCLOzUUUUUURxyxyzcccccbbCLGC

เพิ่มเติมiที่ Runic สิ้นสุดการดำเนินการเป็น NOP ในอินพุตที่ถูกต้องเป็น no-input-left-to-read ไม่มีอะไรผลักไปที่กอง ("อ่านอินพุตทั้งหมด" เป็นความเจ็บปวดใน Runic)

C #
brainfuck
Runic Enchantments
Jelly
Gol> <>
JavaScript
Parenthetic
Whitespace
05AB1E ความกว้างของหญ้าที่
อ่านไม่ได้


ทุกที่ระหว่าง 4 ถึง 11 ภาษาที่จะไปเพิ่มเติม แต่นี่คือบางภาษาที่สามารถใช้การสอบสวน: Ook !, Jolf, Blank และ Brackets ฉันไม่ทราบว่าสามารถใช้งานได้หรือไม่และสัญชาตญาณของฉันบอกว่าอาจไม่ได้ แต่ไม่ได้ให้พวกเขาทุบตี (ส่วนใหญ่เป็นเพราะพวกเขาไม่ได้อยู่ใน TIO)
Draco18 ไม่ไว้วางใจ SE

0

18. ] = [, A010716 , ลำดับทั้งหมด 5 ตัว

//0q   GxxJiiiiihhZUUUUUUUNYAxcccccbCLDLxyzUUUUUTxyzJCLOzUUUUUURzyzxyzxyzcccccbbCLGC//*/0e#'[=====[===]]=[[==========]]=[
/*] 
박망희             0#
;*/ 
    //\u000A\u002F\u002A
n=>//\u002A\u002Fn->
/**/""+n==""+n?5/2>2?1:40-/**/n:n*n//AcaAcAAI(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.wvWwwWWwwwwwwWwWWWw
                          //ip@
                          //rEeE rEeeEe reEE
;/**/
//I01-* h
//
 ;/*""'"""'""""""""""'"""" "'""'"""""""'"""'""""'"'"""""""'"""'""""""'"""'""""""""""*/

ภาษานี้ไม่ได้อยู่ใน TIO และล่ามเท่านั้นที่เขียนตัวเองในอีกแปลภาษาซึ่งเป็นยังไม่ได้อยู่ใน TIO และคนที่ไม่ได้เล่นกับ Brainfuck ในสัปดาห์ที่แล้วในนาทีสุดท้าย แต่ฉันคิดว่าเกิดอะไรขึ้นหลังจากโพสต์คำตอบ Pepe ไม่กี่ชั่วโมงดังนั้นฉันจึงบันทึกไว้ในสัปดาห์นี้ การเป็นภาษาที่ไม่ได้อยู่ใน TIO ฉันกำลังพิจารณาสิ่งนี้ว่าเป็นเอซในหลุมที่สามารถถูกจับได้ง่าย ๆ เพียงแค่เข้าไปในรายการใด ๆ และดำเนินการต่อไป

ใส่โค้ดตัวแปลลงในกล่อง "รหัส" ที่ด้านบนโค้ดจากคำตอบในอินพุตแล้วคลิกเรียกใช้และรับเอาต์พุต (รวมถึงขยะพิเศษที่พิมพ์ออกมาเสมอ)

ส่วนการดำเนินงานของ] = [คือส่วนท้ายบรรทัดแรก:

[=====[===]]=[[==========]]=[

มันเป็นส่วนที่[เล่นกับ Brainfuck (ส่วนที่เหลือจะถูกเพิกเฉยเนื่องจากBrainfuck จัดการ[และ]จัดการอย่างไร) และเมื่อฉันดูข้อมูลจำเพาะของ Brainfuck อีกครั้งฉันก็ตระหนักถึงปัญหาและสิ่งที่ฉันต้องทำก็แค่แทรก]ที่ไหนสักแห่งหลังจาก บรรทัดแรก (เป็น] = [ล่ามไม่ได้อ่านบรรทัดใหม่) และก่อน Brainfuck ฉันเลือกบรรทัดที่ 2

C #
brainfuck
รูน
Jelly
Gol> <>
JavaScript (Node.js)
Paranthetic
ช่องว่าง
05AB1E
อ่านไม่ได้
หญ้า
กว้าง
AlphaBeta
Aheui (esotope)
Commentator
Java (OpenJDK 8)
Pepe


ฉันยังมีรายละเอียดอีก 3 ภาษาและอีก 10 ภาษาที่ควรใช้ แต่ที่ฉันยังไม่ได้ลอง
Draco18 ไม่ไว้ใจ SE

0

19. จริง , A005843 (2 * n)

//0q   GxxJiiiiihhZUUUUUUUNYAxcccccbCLDLxyzUUUUUTxyzJCLOzUUUUUURzyzxyzxyzcccccbbCLGC//*/0e#,2*1z⌂'[=====[===]]=[[==========]]=[
/*]	
박망희		   		0#
;*/	
 	//\u000A\u002F\u002A
n=>//\u002A\u002Fn->
/**/""+n==""+n?5/2>2?1:40-/**/n:n*n//AcaAcAAI(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.wvWwwWWwwwwwwWwWWWw
                          //ip@
                          //rEeE rEeeEe reEE
;/**/
//I01-* h
//
 ;/*""'"""'""""""""""'"""" "'""'"""""""'"""'""""'"'"""""""'"""'""""""'"""'""""""""""*/

ลองออนไลน์!

ส่วนการดำเนินงาน: ,2*1z⌂(บรรทัดแรก)

เมื่อยกเลิกโปรแกรมแล้วจะไม่มีโค้ดใด ๆ หลังจากที่มันมีผลกระทบใด ๆ และไม่มีสัญลักษณ์ใด ๆ ก่อนที่มันจะส่งผลให้เกิดผลลัพธ์หรือการปนเปื้อนหน่วยความจำในการใช้งาน มีส่วนที่อยู่ในความคิดเห็น (C #, JS, Java), มีเฉพาะอักขระที่ถูกละเว้น (Commentator,] = [, Pepe, Aheui ... ), ไม่ได้อยู่ในบรรทัดสุดท้าย (Jelly) หรือในส่วนที่ไม่ถูกดำเนินการของ รหัส (Gol> <>, Runic, AlphaBeta)

C #
brainfuck
รูน
Jelly
Gol> <>
JavaScript (Node.js)
Paranthetic
ช่องว่าง
05AB1E
อ่านไม่ได้
หญ้า
กว้าง
AlphaBeta
Aheui (esotope)
Commentator
Java (OpenJDK 8)
Pepe
] = [(ลิงค์ไปไม่ได้ดู # 18สำหรับคำแนะนำ)


ยังคงมี 2 ผลงานแล้วและหนึ่งในสามที่จะง่าย นอกจากนี้ยัง]=[ไม่สามารถเปลี่ยนลำดับเป็น URL ได้
Draco18 ไม่ไว้วางใจ SE

0

20. Neim , A008592 (10 * n)

//0q   ÷GxJiiiiihhZUUUUUUUNYAxcccccbCLDLxyzUUUUUTxyzJCLOzUUUUUURzyzxyzxyzcccccbbCLxGC//*/0e#§≈2*1z⌂'>[=====[===]]=[[==========]]=[
/*]	
박망희		   		0#
;*/	
 	//\u000A\u002F\u002A
n=>//\u002A\u002Fn->
/**/""+n==""+n?5/2>2?1:40-/**/n:n*n//AcaAcAAI(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.wvWwwWWwwwwwwWwWWWw
                          //ip@
                          //rEeE rEeeEe reEE
;/**/
//I01-* h
//
 ;/*""'"""'""""""""""'"""" "'""'"""""""'"""'""""'"'"""""""'"""'""""""'"""'""""""""""*/

ลองออนไลน์!

ฉันไม่รู้ว่า heck Neim ทำงานอย่างไร ฉันรู้ว่าโค้ดที่นี่ใช้ทำอะไร แต่ฉันไม่รู้ว่าภาษานั้นทำงานอย่างไร

ฉันกลายเป็นว่าฉันสับสน Brainfuck ด้วย # 19 เนื่องจากความขัดแย้งของคำสั่งระหว่างหลายภาษาการเปลี่ยนอินพุตจริง§และจากนั้นบังคับให้เป็น int ด้วยเป็นโซลูชันที่ดีที่สุด

C #
brainfuck
รูน
Jelly
Gol> <>
JavaScript (Node.js)
Paranthetic
ช่องว่าง
05AB1E
อ่านไม่ได้
หญ้า
กว้าง
AlphaBeta
Aheui (esotope)
Commentator
Java (OpenJDK 8)
Pepe
] = [(ลิงค์ไปไม่ได้ดู # 18 )
ที่จริง


คุณเชื่อไหมว่าฉันยังมีอีก 2 ที่ฉันสามารถทำได้?
Draco18 ไม่ไว้วางใจ SE

เรามาดูกันว่ามันใช้เวลานานเท่าไรกว่าจะล้างออกได้
Andrew

โอ้ฉันลืมโพสต์เมื่อวานนี้ ชีวิตยุ่งมากจริง ๆ แล้วพยายามคิดออกว่าใครเป็นคนปลุกฉันตื่นขึ้นมาตอน 6:30 และ / หรือ 7:30 ด้วยเครื่องยนต์เสียงดังดังนั้นฉันจึงสามารถรายงานพวกเขาถึงการจัดการที่อยู่อาศัยและ / หรือเมืองที่มีเสียงรบกวน นอกจากนี้การต่อสู้ทองคำใหม่ KOTH เพียงแค่สร้างลิงก์กว่า 20+ สำหรับทุกภาษาใช้เวลาประมาณหนึ่งชั่วโมงในขณะนี้ (แม้ว่าจะไม่มีปัญหา)
Draco18 ไม่ไว้วางใจ SE

0

21. Flobnar , A010709 (ทั้งหมด 4s)

//0q   ÷GxJiiiiihhZUUUUUUUNYAxcccccbCLDLxyzUUUUUTxyzJCLOzUUUUUURzyzxyzxyzcccccbbCLxGC//*/0e#§≈2*1z⌂'>[=====[===]]=[[==========]]=[
/*]	
박망희		   		0#
;*/	
 	//\u000A\u002F\u002A
n=>//\u002A\u002Fn->
/**/""+n==""+n?5/2>2?1:40-/**/n:n*n//AcaAcAAI(((1)(1)(1)1)((1)(((1)1)1)1)(((1)(1)1)(((1)((1)1)(1)1)1)(((1)(1)(1)(1)1)(((1)(1)((1))(1)1)((1)((1)1)(1)1)(((1)1)(1)(1)1)1)(((1)1)(1)1)(((1)1)1)1)1)1)
//[>[-]<[>+<-],]>>+<[->[>>+<<-]>[<+>-]>[<+>-]<<<]>>>>++++++[<++++++++>-]<<[>+<-]>+.wvWwwWWwwwwwwWwWWWw
                          //ip!4@
                          //rEeE rEeeEe reEE
;/**/
//I01-* h
//
 ;/*""'"""'""""""""""'"""" "'""'"""""""'"""'""""'"'"""""""'"""'""""""'"""'""""""""""*/

ลองออนไลน์!

Flobnar เริ่มต้นที่@และขยายออกประเมินรายการตามกฎระเบียบที่กำหนด ( @ประเมินสิ่งที่ด้านซ้ายของตน4ประเมิน4, +ประเมินสิ่งที่อยู่บนทางซ้ายสรุปกับสิ่งที่เป็นอยู่ทางด้านขวา ฯลฯ ) ในฐานะที่เป็นตำแหน่งของ@เพียงสัมผัสกับ Runic ง่าย!ป้องกันการเปลี่ยนแปลงของกอง Runic

เนื่องจากเมตริกอินพุตของ Flobnar คือ "หนึ่งไบต์" และเข้าสู่วงวนไม่สิ้นสุดหากไม่มีการอ่านไบต์ฉันตัดสินใจไม่ยุ่งกับสิ่งที่ซับซ้อนมากขึ้น

ภาษาก่อนหน้า

C #
Brainfuck
Runic
Jelly
Gol> <>
JavaScript (Node.js)
Paranthetic
Whitespace
05AB1E
อ่านไม่ได้
หญ้า
กว้าง
AlphaBeta
Aheui (esotope)
Commentator
Java (OpenJDK 8)
Pepe ] = [(ลิงค์ไปไม่ได้ดู # 18 )
ที่จริง
Neim


อินพุตประเมินค่าคำทางทิศใต้บน EOF มันจะไม่เข้าสู่วงวนไม่สิ้นสุด
Jo King

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