คำถามติดแท็ก polyglot

สำหรับความท้าทายที่เกี่ยวข้องกับรหัสที่ทำงานในหลายภาษาโปรแกรม

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

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

30
Polyglot Anagrams 'กระทู้ของตำรวจ
ความท้าทายนี้มีสองหัวข้อ นี่คือด้ายของตำรวจ ด้ายโจรตั้งอยู่ที่นี่ ความท้าทายของคุณคือการเลือกลำดับOEISและเขียนโปรแกรมสองโปรแกรมเต็มในสองภาษาที่แตกต่างกันซึ่งสร้างรายการที่ n ในลำดับเมื่อได้รับ n ผ่าน STDIN หรืออินพุตมาตรฐานรูปแบบอื่นโดยที่ n เป็นจำนวนบวกใด ๆ อย่างไรก็ตามโปรแกรมทั้งสองของคุณจะต้องเป็นแอนนาแกรมหมายความว่าแต่ละโปรแกรมสามารถจัดเรียงใหม่จากตัวอักษรของอีกโปรแกรมได้ โปรแกรมจะต้องส่งออกทศนิยมของตัวเลขตามด้วยช่องว่างทางเลือกเพื่อ STDOUT โปรแกรมอาจส่งออกไปยัง STDERR อย่างไรก็ตามควรละเว้นและถ้ากรณีที่ซ่อนทำดังนั้นจะต้องระบุไว้อย่างชัดเจนว่าเป็นกรณีนี้ หากคุณต้องการคุณยังสามารถส่งออกด้วยรหัสตัวอักษร อย่างไรก็ตามหากคุณทำเช่นนั้นในโซลูชันที่ซ่อนอยู่คุณต้องระบุในเนื้อหาที่คุณส่ง จากนั้นคุณจะแสดงหมายเลข OEIS ซอร์สโค้ดสำหรับและชื่อของภาษาหนึ่งที่มีอยู่ โจรจะถอดรหัสของคุณหากพวกเขาพบแอนนาแกรมของการส่งต้นฉบับที่ทำงานในภาษาอื่นที่ไม่ใช่ภาษาที่คุณนำเสนอแล้ว ในการถอดรหัสคำตอบพวกเขาจะต้องค้นหาภาษาและโปรแกรมใด ๆที่สร้างลำดับและเป็นแอนนาแกรมของต้นฉบับโดยไม่จำเป็นต้องเป็นคำตอบที่คุณคิด ดังนั้นคุณจึงมีแรงจูงใจที่จะทำให้ยากที่สุดเท่าที่จะทำได้เพื่อค้นหาภาษาใด ๆ ที่ทำงานโดยใช้รายการสัญลักษณ์ของพวกเขา เกณฑ์การให้คะแนน นี่คือรหัส - กอล์ฟดังนั้นโปรแกรมที่ไม่มีรอยแตกที่สั้นที่สุดคือผู้ชนะ ภาษา ภาษาจะถูกพิจารณาว่าแตกต่างกันหากทั้งสองวิธีที่เสนอนั้นไม่สามารถทำงานได้ทั้งสองภาษา ซึ่งจะรวมถึงรุ่นที่แตกต่างกันของภาษาเดียวกันตราบใดที่วิธีแก้ปัญหาของตำรวจหรือวิธีแก้ปัญหาของโจรไม่ได้ผลิตผลลัพธ์ที่ถูกต้องในภาษาอื่น ๆ เช่นถ้ามีสองวิธีแก้ปัญหา 1 และ 2 ที่อยู่ในภาษา A และ B ตามลำดับโซลูชัน 2 ต้องไม่สร้างผลลัพธ์ที่ถูกต้องในภาษา A …

30
สร้างเมทริกซ์เอกลักษณ์
ความท้าทายนั้นง่ายมาก กำหนดอินพุตจำนวนเต็มnส่งออกn x nเมทริกซ์เอกลักษณ์ เมทริกซ์เอกลักษณ์เป็นข้อมูลที่มีการ1ขยายจากด้านบนซ้ายลงไปด้านล่างขวา คุณจะเขียนโปรแกรมหรือฟังก์ชั่นที่จะส่งกลับหรือแสดงเมทริกซ์เอกลักษณ์ที่คุณสร้างขึ้น ผลลัพธ์ของคุณอาจเป็นอาร์เรย์ 2 มิติหรือตัวเลขคั่นด้วยช่องว่าง / แท็บและบรรทัดใหม่ ตัวอย่างอินพุทและเอาท์พุท 1: [[1]] 2: [[1, 0], [0, 1]] 3: [[1, 0, 0], [0, 1, 0], [0, 0, 1]] 4: [[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]] 5: [[1, 0, 0, …

3
Klein Topololyglots
Kleinเป็นภาษา 2D ที่ฉันออกแบบซึ่งสามารถฝังลงบนพื้นผิวทอพอโลยี 12 แบบ โปรแกรม Klein สามารถทำงานบนพื้นผิวที่แตกต่างกันโดยการเปลี่ยนอาร์กิวเมนต์บรรทัดคำสั่ง โทโพโลยีกำหนดว่าตัวชี้คำสั่งไปที่ใดเมื่อปิดนอกขอบของโปรแกรม เมื่อเคลื่อนออกจากขอบ ip จะกระโดดไปที่ขอบด้วยสีที่เข้าคู่กันและจะรักษาตำแหน่งของมันให้สัมพันธ์กับลูกศรนั่นคือตัวชี้จะประหยัดระยะห่างจากหัวลูกศร ยกตัวอย่างเช่นโทโพโลยีโทโพโล000ยีที่ใช้โดยภาษา 2D ส่วนใหญ่ทำให้ตัวชี้คำสั่งล้อมรอบไปอีกด้านเมื่อเลื่อนออกจากขอบ งาน งานค่อนข้างง่ายเขียนโปรแกรม Klein ว่าเมื่อรันจะส่งออกทอพอโลยีที่จะทำงานระบบตัวเลขแต่ละตัวอาจถูกคั่นด้วยช่องว่าง (เช่น000และ0 0 0เป็นทั้งเอาต์พุตที่อนุญาต) คุณสามารถเลือกที่จะใช้หรือเพิกเฉยต่อการ-Aตั้งค่าบรรทัดคำสั่งซึ่งจะไม่ทำให้คุณต้องเสียค่าใช้จ่ายหากคุณใช้ นี่คือรหัสกอล์ฟดังนั้นคำตอบที่สั้นที่สุดจะเป็นผู้ชนะ นี่คือไดร์เวอร์ทดสอบออนไลน์ที่สามารถใช้ในการทดสอบโทโพโลยีทั้งหมดได้ในครั้งเดียว -Aให้ทำงานในโหมดจำนวนเต็มลบ

15
99 ขวดเบียร์ 99 ภาษา
เป้าหมายคือการเขียนโปรแกรม "99 ขวดเบียร์" อย่างง่าย .. ซึ่งใช้ได้อย่างน้อย 2 ภาษา (เช่นไม่ใช่ Python 2 และ Python 3) มันจะต้องเป็นไฟล์ที่สมบูรณ์ที่จะเรียกใช้หรือรวบรวม คำตอบที่น่าสนใจควรได้รับการโหวต แต่ความหนาแน่นก็นับรวมเช่นกัน (แน่นอนว่าความหลากหลายทางภาษาเป็นเป้าหมายหลัก) แก้ไข: ฉันจะบอกว่าจะมีรหัส C ปกติที่ทำสิ่งเดียวกันกับ C ++ และ Objective-C นับเป็นอนุพันธ์ รหัสควรทำสิ่งที่ฉลาดเพื่อให้บรรทัดมีความหมายต่างกันด้วยภาษาที่ต่างกัน

15
คุณจะนำอะไรมาขอบคุณพระเจ้า
วันขอบคุณพระเจ้าในสหรัฐอเมริกากำลังจะมาถึงในวันที่ 24 พฤศจิกายน หลายคนจะทานอาหารค่ำกับครอบครัวแบบดั้งเดิมรวมถึงไก่งวงและเครื่องเคียงมากมาย โดยทั่วไปหมายความว่าสมาชิกในครอบครัวจะต้องประสานงานว่าใครจะนำอาหารจานต่าง ๆ มาให้ ในความท้าทายนี้เป้าหมายคือการเขียนรูปหลายภาษาที่ให้ผลลัพธ์จานที่แตกต่างกันในแต่ละภาษาที่ใช้ เมนู (เลือกจากWikipediaในกรณีที่ไม่ชัดเจนแต่ละบรรทัดเป็นหนึ่งรายการ) turkey stuffing dressing cranberry sauce mashed potatoes gravy winter squash sweet potatoes corn green beans green bean casserole mac and cheese macaroni and cheese salad rolls biscuits corn bread pumpkin pie apple pie mincemeat pie sweet potato pie pecan pie …

22
ปี่ธรรมชาติ # 0 - ร็อค
เป้าหมาย สร้างโปรแกรม / ฟังก์ชั่นที่รับอินพุตNตรวจสอบว่าNคู่ของจำนวนเต็มแบบสุ่มนั้นค่อนข้างดีและส่งคืนsqrt(6 * N / #coprime)หรือไม่ TL; DR ความท้าทายเหล่านี้เป็นการจำลองอัลกอริธึมที่ต้องการเพียงแค่ธรรมชาติและสมองของคุณ หากคุณต้องการ Pi ในระหว่างการเปิดเผยซอมบี้วิธีการเหล่านี้จะไม่เปลืองกระสุน ! มีอีกแปดความท้าทายที่จะมา ชำระเงินโพสต์แซนด์บ็อกซ์เพื่อให้คำแนะนำ การจำลอง เรากำลังจำลองอะไร ความน่าจะเป็นที่สองจำนวนเต็มแบบสุ่มนั้นค่อนข้างไพเราะ (เช่น coprime หรือ gcd == 1) 6/Pi/Piดังนั้นวิธีธรรมชาติในการคำนวณ Pi ก็คือการตักก้อนหินขึ้นสองถัง (หรือกำมือ) นับพวกเขา; ดูว่าgcdของพวกเขาคือ 1; ทำซ้ำ หลังจากที่ทำเช่นนี้คู่หลายครั้งจะมีแนวโน้มต่อsqrt(6.0 * total / num_coprimes) Piหากการคำนวณสแควร์รูทในโลกหลังวิกฤติทำให้คุณกังวลไม่ต้องกังวล! มีวิธีการของนิวตันสำหรับสิ่งนั้น เราจำลองสิ่งนี้ได้อย่างไร รับอินพุต N ทำตามNเวลาต่อไปนี้: สร้างเลขจำนวนเต็มบวกแบบสุ่มiและj กับ 1 <= i …
39 code-golf  math  random  pi  approximation  popularity-contest  code-golf  sequence  number-theory  binary  coding-theory  code-golf  math  3d  code-golf  code-golf  math  number  code-golf  kolmogorov-complexity  code-golf  ascii-art  graphical-output  binary-tree  code-golf  ascii-art  code-golf  ascii-art  kolmogorov-complexity  code-golf  array-manipulation  hexadecimal  code-golf  math  number  set-theory  code-golf  math  arithmetic  number-theory  integer  code-golf  string  kolmogorov-complexity  code-golf  math  sequence  arithmetic  decision-problem  code-golf  code-golf  ascii-art  code-golf  array-manipulation  parsing  code-golf  string  ascii-art  kolmogorov-complexity  code-challenge  code-golf  sequence  code-golf  number  array-manipulation  sorting  code-golf  string  function  code-golf  arithmetic  code-golf  math  sequence  number-theory  primes  restricted-source  javascript  code-challenge  polyglot  rosetta-stone  code-golf  code-golf  regular-expression  code-golf  math  code-golf  math  primes  code-golf  ascii-art  kolmogorov-complexity  binary  code-golf  math  sequence  code-golf  sequence  subsequence  code-golf  string  code-golf  parsing  music  code-golf  grid  game  path-finding  board-game  code-golf  string  binary  code-golf  array-manipulation  balanced-string  code-golf  code-golf  algorithm  code-golf  string  number  arithmetic  array-manipulation  code-golf  array-manipulation  binary-tree  tree-traversal  code-golf  code-golf  tips  code-golf  string  base-conversion  code-golf  tips  s.i.l.o.s  code-golf  string  ascii-art  code-golf  code-challenge  code-golf  game 

3
แก้ลูกบาศก์ของรูบิค
เขียนโปรแกรมที่สั้นที่สุดที่แก้คิวบ์ของรูบิค (3 * 3 * 3) ภายในระยะเวลาที่เหมาะสมและเคลื่อนไหวได้ (พูดได้สูงสุด 5 วินาทีในเครื่องของคุณและน้อยกว่า 1,000 ครั้ง) อินพุตอยู่ในรูปแบบ: UF UR UB UL DF DR DB DL FR FL BR BL UFR URB UBL ULF DRF DFL DLB DBR (อินพุตเฉพาะนี้แสดงถึงคิวบ์ที่แก้ไขแล้ว) 12 สตริงอักขระ 2 ตัวแรกคือขอบในตำแหน่ง UF, UR, ... BL (U = ขึ้น, F = ด้านหน้า, R = …

13
เล่นกอล์ฟร่วมกัน
การใช้สองภาษาที่คุณเลือกเขียนที่เล็กที่สุด“ร่วมกันควิน ” ที่คุณสามารถ นั่นคือเขียนโปรแกรม P ในภาษา A ที่ส่งออกซอร์สโค้ดสำหรับโปรแกรม Q ในภาษา B ดังนั้นผลลัพธ์ของโปรแกรม Q จะเหมือนกับรหัสแหล่งที่มาสำหรับ P ไฟล์ที่ว่างเปล่าจะไม่ถูกนับรวมหรือไม่ "อ่านไฟล์ต้นฉบับและพิมพ์" - โปรแกรมสไตล์ แก้ไข:คำตอบด้วย P = Q จะไม่นับอีกต่อไป

17
รูปหลายเหลี่ยมที่ทับซ้อนกัน
ซึ่งแตกต่างจากความท้าทายของ C&R หลายประการซึ่งไม่จำเป็นต้องแยกโพสต์โจร เป้าหมายของโจรคือการถอดรหัสคำตอบก่อนหน้าแล้วโพสต์ใหม่เป็นตำรวจ ในฐานะผู้ตอบคุณจะเขียนชุดของรูปหลายเหลี่ยมที่มีลักษณะเช่นนี้ (แต่ละคอลัมน์เป็นภาษาและแต่ละรายการเป็นผลลัพธ์ของคำตอบในภาษานั้น): Language: 1 2 3 4 5 6 7 8 ... Answer 1: 0 1 2 Answer 2: 1 2 3 Answer 3: 2 3 4 Answer 4: 3 4 5 Answer 5: 4 5 6 Answer 6: 5 6 7 ... (ช่องว่างหมายความว่าไม่จำเป็นต้องมีพฤติกรรมในกรณีนั้น) แต่ละคำตอบควรทำงานใน 3 …

30
เดี๋ยวก่อนนี่คือภาษาอะไร
เมื่อเร็ว ๆ นี้ฉันมีความสุขในการเขียนโปรแกรม Haskell ที่สามารถตรวจจับได้ว่าNegativeLiteralsส่วนขยายนั้นทำงานหรือไม่ ฉันมากับสิ่งต่อไปนี้: data B=B{u::Integer} instance Num B where{fromInteger=B;negate _=B 1} main=print$1==u(-1) ลองออนไลน์! สิ่งนี้จะพิมพ์TrueตามปกติและFalseอย่างอื่น ตอนนี้ฉันสนุกมากที่ได้ทำสิ่งนี้ฉันกำลังขยายความท้าทายให้กับทุกคน ส่วนขยายภาษา Haskell อื่น ๆ ที่คุณสามารถถอดรหัสได้ กฎระเบียบ จะแตกเป็นส่วนขยายของภาษาโดยเฉพาะอย่างยิ่งคุณต้องเขียนโปรแกรม Haskell ที่รวบรวมทั้งที่มีและไม่มีนามสกุลภาษา (คำเตือนจะมีการปรับ) และผลแตกต่างกันสองไม่ใช่ข้อผิดพลาดค่าทำงานเมื่อมีนามสกุลภาษาและมันปิด (โดยการเพิ่มNoคำนำหน้า ส่วนขยายภาษา) ด้วยวิธีนี้รหัสข้างต้นอาจย่อให้เหลือเพียง: data B=B{u::Integer} instance Num B where{fromInteger=B;negate _=B 1} main=print$u(-1) ซึ่งพิมพ์1และ-1. วิธีใดก็ตามที่คุณใช้ในการถอดรหัสส่วนขยายจะต้องเฉพาะกับส่วนขยายนั้น อาจมีวิธีที่จะตรวจจับการตั้งค่าสถานะของคอมไพเลอร์หรือ LanguageExtensions ที่เปิดใช้งานโดยพลการหากวิธีการดังกล่าวไม่ได้รับอนุญาต คุณสามารถเปิดใช้งานส่วนขยายภาษาเพิ่มเติมหรือเปลี่ยนการเพิ่มประสิทธิภาพของคอมไพเลอร์โดย-Oไม่ต้องเสียค่าใช้จ่ายนับไบต์ ส่วนขยายภาษา คุณไม่สามารถแตกนามสกุลภาษาใด ๆ …

5
การเอาชนะขนาดคลัสเตอร์
เบื่อกับความน่าเชื่อถือของการจัดเก็บแฟลชคุณตัดสินใจที่จะจัดเก็บโปรแกรมทั้งหมดของคุณในหนึ่งในผู้ดี 1,440 KiB floppies อย่างไรก็ตามหลังจากคัดลอกโปรแกรมไม่ถึง 3,000 โปรแกรมดิสก์ก็เต็ม เป็นไปได้ยังไง? มีทักษะในการเขียนโค้ดกอล์ฟอย่างที่คุณเป็นส่วนใหญ่โปรแกรมของคุณมีความยาวไม่เกิน 100 ไบต์ดังนั้นควรเหลือพื้นที่เหลืออีกมาก ... หลังจากถามถึงผู้ใช้ขั้นสูงคุณจะพบว่าขนาดของคลัสเตอร์ของระบบไฟล์เป็นพล็อตที่ชั่วร้ายของนักออกแบบของFAT12ที่ทิ้งส่วนสำคัญของฟลอปปี้ที่ไม่ได้ใช้และบังคับให้คุณซื้อมากกว่าที่คุณต้องการจริงๆ ซื้อฟลอปปี้เพิ่มเติมหรือไม่ ไม่! ขนาดกลุ่มจะมีปัญหาน้อยลงหากเราบันทึกหลาย ๆ โปรแกรมไว้ในไฟล์เดียวซึ่งเป็นไปได้เพราะคอมไพเลอร์ / ล่ามที่แตกต่างกันจะทำงานแตกต่างกันสำหรับซอร์สโค้ดเดียวกัน งาน เขียนรูปหลายภาษาที่เหมาะกับในคลัสเตอร์เดียว (512 ไบต์หรือน้อยกว่า) และแก้ไขงานต่อไปนี้ให้ได้มากที่สุด เชือก อ่านอินพุตทั้งหมดและพิมพ์ พิมพ์Hello, World! . อ่านบรรทัด / อาร์กิวเมนต์ ( ชื่อ ) เป็นอินพุตและพิมพ์สุขสันต์วันเกิด [ชื่อ]! . อ่านอินพุตทั้งหมดและพิมพ์ฉันรักแท็บ! ถ้ามันมีหนึ่ง tabulators อย่างน้อยหนึ่ง (0x09) และฉันเกลียดช่องว่าง! ถ้าไม่ได้ อ่านสองบรรทัด / อาร์กิวเมนต์และพิมพ์ค่าความจริงหากสตริงที่สองเป็นซับสตริงของค่าแรกและค่าเท็จถ้าไม่ อ่านบรรทัด …

20
เขียนโพลีควิน
โพลีวินเป็นทั้งควินินและพูดได้หลายภาษา 1คุณจะต้องเขียนควินินที่ใช้ได้อย่างน้อยสองภาษา นี่คือรหัสกอล์ฟดังนั้นคำตอบที่สั้นที่สุด (เป็นไบต์) ชนะ 1ฉันทำมันขึ้นมา หรือค่อนข้างGeobits ได้ เห็นได้ชัดว่าเขาไม่ใช่คนแรกเช่นกัน กฏสำหรับ Quines ยอมรับ Quines จริงเท่านั้น นั่นคือคุณต้องพิมพ์คำต่อคำทั้งหมดเพื่อ STDOUT โดยไม่ต้อง : อ่านซอร์สโค้ดของคุณโดยตรงหรือโดยอ้อม อาศัยสภาพแวดล้อม REPL ซึ่งเพียงประเมินและพิมพ์นิพจน์ทุกครั้งที่คุณป้อน อาศัยคุณสมบัติภาษาที่เพิ่งพิมพ์ออกมาในบางกรณี ใช้ข้อความแสดงข้อผิดพลาดหรือ STDERR เพื่อเขียนทั้งหมดหรือบางส่วนของควิน (คุณสามารถเขียนสิ่งต่าง ๆ ไปยัง STDERR หรือสร้างข้อผิดพลาด / เตือนไม่ใช่ข้อผิดพลาดได้ตราบใดที่ STDOUT เป็นควินินที่ถูกต้องและข้อความผิดพลาดไม่ได้เป็นส่วนหนึ่งของมัน) นอกจากนี้รหัสของคุณจะต้องมีตัวอักษรสตริง กฎระเบียบสำหรับ Polyglots สองภาษาที่ใช้จะต้องแตกต่างกันอย่างชัดเจน โดยเฉพาะอย่างยิ่ง: พวกเขาจะต้องไม่ใช้ภาษาเดียวกันในเวอร์ชันที่แตกต่างกัน (เช่น Python 2 กับ Python 3) พวกเขาจะต้องไม่เป็นภาษาถิ่นของภาษาเดียวกันที่แตกต่างกัน (เช่น Pascal …

7
สามรูปหลายเหลี่ยมสองช่วงเวลาสองควินและความท้าทายรหัสหนึ่งกอล์ฟ
จัดทำโปรแกรม A ที่ใช้งานในภาษา A สร้างโปรแกรม B และใช้งานโปรแกรม A ในภาษา B สร้างโปรแกรม C โปรแกรม B เมื่อทำงานในภาษา B สร้างโปรแกรม A และใช้งานโปรแกรม B ในภาษา A สร้างโปรแกรม C โปรแกรม C เมื่อทำงานในภาษาAหรือภาษาBให้พิมพ์ "ภาษาผิด!" Program | Language | Result --------|----------|---------- A | A | Program B B | B | Program A A | B | …

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