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

ใช้สำหรับความท้าทายที่ต้องการการโต้ตอบกับผู้ใช้ระหว่างรันไทม์

30
ปิดคอมพิวเตอร์!
ท้าทาย: ในภาษาการเขียนโปรแกรมที่คุณเลือกให้ปิดเครื่องที่ใช้รหัสของคุณ กฎระเบียบ ไม่มีการปิดตัวลงด้วยความอ่อนล้าของทรัพยากร (เช่น: forkbomb เพื่อบังคับให้ปิดระบบ) คุณได้รับอนุญาตให้เขียนโค้ดที่ทำงานในสภาพแวดล้อม / OS เฉพาะหากคุณต้องการ ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม นี่คือโค้ดกอล์ฟซึ่งจำนวนไบต์ต่ำสุดชนะ!

25
สร้างโปรแกรม Paint!
บทนำ อยู่มาวันหนึ่งคุณได้แสดงให้เด็กเห็นวิธีการวาดบนคอมพิวเตอร์ คุณพิมพ์mspaint.exeในแถบทำงาน สำหรับความสยองขวัญของคุณมีข้อความระบุว่า "ไม่มีรายการที่ตรงกับการค้นหาของคุณ" คุณต้องสร้างสีแบบง่าย ๆ เพื่อให้เด็กของคุณวาดได้! ท้าทาย คุณต้องสร้างโปรแกรมวาดรูปอย่างง่าย หากต้องการทำสิ่งนี้ให้เปิดหน้าต่างแสดงผลสีขาว (ใหญ่กว่า 99x99 พิกเซล) เมื่อใดก็ตามที่กดเมาส์ให้เปลี่ยนพิกเซลที่เมาส์ใช้เป็นสีดำ นี่คือcode-golfดังนั้นคำตอบที่สั้นที่สุดในจำนวนไบต์ชนะ!

30
สร้างช่องทำเครื่องหมาย
เขียนโปรแกรมที่สร้างช่องทำเครื่องหมายสองสถานะที่ผู้คนสามารถโต้ตอบด้วยการใช้เมาส์ โปรแกรมของคุณควรบรรลุสิ่งต่อไปนี้ทั้งหมด: มีพื้นที่ 8 × 8 พิกเซล (หรือใหญ่กว่าถ้าต้องการ) ของหน้าจอที่เป็นพื้นที่ที่สามารถคลิกได้ของช่องทำเครื่องหมาย ต่อจากนี้ไปภูมิภาคนี้เรียกว่าช่องทำเครื่องหมาย เมื่อเคอร์เซอร์ของเมาส์ถูกย้ายภายในช่องทำเครื่องหมายและกดปุ่ม * เมาส์เริ่มต้นช่องทำเครื่องหมายควรสลับสถานะ การตรวจสอบจะไม่ถูกตรวจสอบ ไม่ได้ทำเครื่องหมายจะถูกตรวจสอบ ช่องทำเครื่องหมายไม่ควรย้ายเมื่อมีการสลับ ในสถานะที่เลือกช่องทำเครื่องหมายอาจมีสีใดก็ได้ อยู่ในสถานะที่ไม่ถูกตรวจสอบช่องอาจจะเป็นสีใด ๆตราบใดที่อย่างน้อย 16 พิกเซลมีสายตาที่แตกต่างกันจากรัฐตรวจสอบ ในอินสแตนซ์ของโปรแกรมหนึ่งสถานะที่ถูกเลือกทั้งหมดควรเป็นภาพที่เหมือนกันและเป็นสถานะที่ไม่ได้ตรวจสอบทั้งหมดควรจะเหมือนกัน อย่าปิดโปรแกรมจนกว่าจะถูกยกเลิกอย่างชัดเจน (เช่นผ่านปุ่มออกหรือ Alt + F4) ดังนั้นผู้ใช้สามารถคลิกช่องทำเครื่องหมายได้มากเท่าที่ต้องการ * คุณอาจสันนิษฐานว่าปุ่มเมาส์เริ่มต้นนั้นเป็นคลิกซ้ายเสมอ แต่ก็ยังสามารถใช้ค่าเริ่มต้นตามที่กำหนดโดยซอฟต์แวร์เมาส์หรือระบบปฏิบัติการซึ่งอาจไม่ได้คลิกซ้ายตามจริงขึ้นอยู่กับผู้ใช้ หมายเหตุ ไม่สำคัญว่าสิ่งที่อยู่นอกภูมิภาคช่องทำเครื่องหมายของคุณ อาจเป็นเพียงเดสก์ท็อป อาจเป็นส่วนหนึ่งของคอนโซลที่เปลี่ยนทุกการสลับ ไม่สำคัญว่าช่องทำเครื่องหมายของคุณเริ่มต้นที่อะไร ภูมิภาคช่องทำเครื่องหมายอาจมีขนาดใด ๆ ที่หรือสูงกว่า 8 × 8 พิกเซล มันไม่จำเป็นต้องเป็นรูปสี่เหลี่ยมจัตุรัส คุณอาจตั้งค่าเผื่อเล็กน้อยสำหรับการตั้งค่าที่อยู่นอกเหนือการควบคุมของคุณเช่นขนาดแบบอักษรของคอนโซลการซูมเบราว์เซอร์ความละเอียดของจอภาพ ฯลฯ ตราบใดที่โปรแกรมของคุณทำงานในการตั้งค่าการทดสอบที่สมเหตุสมผล หากโปรแกรมของคุณเปิดหน้าต่างคุณอาจคิดว่ามันถูกลากไปยังตำแหน่งที่เหมาะสมบนหน้าจอหากจำเป็น (เช่นมุมบนซ้าย) คุณสามารถใช้ภาษามาร์กอัปเช่น …

19
พิมพ์ตัวอักษร - เร็วที่สุดเท่าที่จะทำได้!
งานของคุณคือการสร้างโปรแกรมที่วัดความเร็วที่คุณสามารถพิมพ์ตัวอักษรของตัวอักษรภาษาอังกฤษ โปรแกรมที่จะยอมรับเฉพาะอักษรตัวพิมพ์เล็กaไปzตามลำดับตัวอักษร ตัวอักษรแต่ละตัวถูก echoed ตามที่พิมพ์ในบรรทัดเดียวกัน (ไม่มีบรรทัดใหม่หรือตัวคั่นอื่นใดระหว่างตัวอักษร) หากคุณพิมพ์อักขระที่ไม่ถูกต้องโปรแกรมจะแสดงผลFail บนบรรทัดใหม่และออก หากคุณพิมพ์ตัวอักษรทั้งหมด 26 ตัวโปรแกรมจะขึ้นบรรทัดใหม่เอาท์พุทเวลาเป็นมิลลิวินาทีที่ใช้ตั้งแต่อักษรตัวแรกถึงตัวอักษรสุดท้ายและออก aจับเวลาเริ่มต้นเมื่อคุณพิมพ์อักษรตัวแรก ตัวอย่างผลลัพธ์: b Fail abcdefgg Fail abcdefghijklmnopqrstuvwxyz 6440 นี่คือcode-golfดังนั้นคำตอบที่สั้นที่สุดในจำนวนไบต์ชนะ

6
เห็นภาพดวงตาที่มองเห็น
คุณอาจจำหรือไม่จำ Xeyes โปรแกรมสาธิตที่มาพร้อมกับ (และเท่าที่ฉันรู้ยังมาพร้อมกับ) ระบบ X window วัตถุประสงค์คือเพื่อวาดดวงตาคู่หนึ่งที่ตามเคอร์เซอร์เมาส์ของคุณ: ความท้าทายของคุณคือสร้าง Xeyes ใหม่ด้วย ASCII art เขียนโปรแกรมหรือฟังก์ชั่นที่ดึงดูดสายตาแบบ ASCII สองตา (ที่ระบุด้านล่าง) ไม่ว่าผู้ใช้จะคลิกที่ใดจากนั้นเลื่อนลูกศิษย์ของพวกเขาให้ชี้ไปในทิศทางของเคอร์เซอร์ GIF ด้านบนเป็นการบันทึกการใช้งาน Ruby ที่ไม่ได้ตีกอล์ฟซึ่งสามารถเรียกใช้กับ Ruby เวอร์ชันล่าสุดได้ คุณอาจพบว่ามีประโยชน์สำหรับการอ้างอิงสำหรับลำดับการควบคุม Xterm ข้อมูลจำเพาะ นี่คือรหัสกอล์ฟดังนั้นการแก้ปัญหาด้วยจำนวนไบต์น้อยที่สุดจะเป็นผู้ชนะ นี้เป็นASCII ศิลปะท้าทายเพื่อให้โปรแกรมของคุณจะต้องวาดโดยใช้อักขระ ASCII โดยเฉพาะอักขระ-, ., |, ', 0พื้นที่และขึ้นบรรทัดใหม่ 1 2 นี่เป็นความท้าทายแบบโต้ตอบดังนั้นโปรแกรมของคุณต้องยอมรับอินพุตและวาดผลลัพธ์ในแบบเรียลไทม์ 3 ก่อนที่โปรแกรมของคุณจะเริ่มรับอินพุตควรเริ่มต้นผืนผ้าใบว่างเปล่าอย่างน้อย 20 แถวและ 20 คอลัมน์ ไม่ควรวาดอะไรจนกว่าผู้ใช้จะคลิกบนพื้นที่วาดภาพ เมื่อใดก็ตามที่ผู้ใช้คลิก4บนผืนผ้าใบโปรแกรมควรล้างเอาต์พุตก่อนหน้าใด ๆ จากนั้นดึง ASCII …

17
แม็พอักขระ ASCII ที่อินพุต
ให้แน่ใจว่าได้เห็นความท้าทายอื่น ๆ , การย้อนกลับแผนที่อักขระ ASCII ! ชุดอักขระ ASCII (รหัสมาตรฐานอเมริกันสำหรับการแลกเปลี่ยนข้อมูล) เป็นมาตรฐานการเข้ารหัสอักขระที่ใช้กันอย่างแพร่หลายที่สุด รหัส ASCII แสดงถึงข้อความในคอมพิวเตอร์อุปกรณ์โทรคมนาคมและอุปกรณ์อื่น ๆ ท้าทาย ความท้าทายของคุณคือการพิมพ์แผนที่ของชุดอักขระ ASCII เมื่อผู้ใช้ป้อนข้อมูล GIF: หลังจากผู้ใช้ป้อนอักขระ ASCII ทุกตัวเอาต์พุตควรมีลักษณะดังนี้: การทำแผนที่ ตัวละครแต่ละตัวมีตำแหน่งที่กำหนดไว้ในตารางตรรกะ 16x6 เริ่มต้นด้วยอักขระช่องว่างในตำแหน่งด้านซ้ายด้านบนและการตัดที่ 0 หลักจะปรากฏขึ้นด้านล่าง เมื่อได้รับอินพุต ASCII ที่พิมพ์ได้ให้พิมพ์อักขระ ASCII ที่ตำแหน่งหน้าจอที่กำหนดโดยไม่ต้องลบอักขระใด ๆ บนหน้าจอในปัจจุบัน กฎระเบียบ โปรแกรมของคุณเพียงต้องการที่จะแผนที่ออกอักขระ ASCII พิมพ์ไป0x200x7E โปรแกรมของคุณจะต้องไม่ยุติและดำเนินการแมปอักขระต่อไปยังหน้าจอจนกว่าอักขระ ASCII ที่พิมพ์ได้ทั้งหมดจะถูกป้อนเข้า จากที่นี่โปรแกรมของคุณสามารถยกเลิกหรือวิ่งเข้าไปใน Neverland โปรแกรมของคุณสามารถแมปตัวละครในแบบที่คุณชอบเช่นสเปรดชีตตารางหน้าต่างคอนโซลหรือหน้าต่างกราฟิก ไม่ว่าคุณจะแสดงแผนที่อย่างไรจะต้องอัปเดตตามเวลาจริง (ทันทีที่ได้รับการป้อนข้อมูลจากผู้ใช้) หากโปรแกรมของคุณไม่อ่านอินพุตอย่างเงียบ ๆ มันจะต้องเลื่อนเคอร์เซอร์ไปให้พ้นทางดังนั้นข้อความจะไม่เข้าทางแผนที่ …

30
สามเหลี่ยม ASCII
งานของคุณคือการเขียนโปรแกรมหรือฟังก์ชั่นที่พิมพ์รูปสามเหลี่ยม ASCII พวกเขามีลักษณะเช่นนี้: |\ | \ | \ ---- โปรแกรมของคุณจะมีการป้อนข้อมูลที่เป็นตัวเลขเดียวกับข้อ จำกัดn สามเหลี่ยมดังกล่าวข้างต้นมีมูลค่าของ0 <= n <= 1000n=3 สามเหลี่ยม ASCII จะมีnแบ็กสแลช ( \) และบาร์แนวตั้ง ( |), n+1เส้นและขีดกลาง ( -) และแต่ละบรรทัดจะมีจำนวนช่องว่างเท่ากับหมายเลขบรรทัด (อิงตาม 0, คือบรรทัดแรกคือบรรทัดที่ 0) นอกเหนือจากบรรทัดสุดท้าย . ตัวอย่าง: การป้อนข้อมูล: 4 เอาท์พุท: |\ | \ | \ | \ ----- การป้อนข้อมูล: 0 เอาท์พุท: ในกรณีทดสอบนี้ผลลัพธ์จะต้องว่างเปล่า …
30 code-golf  ascii-art  code-golf  rubiks-cube  code-golf  path-finding  maze  regular-expression  code-golf  math  rational-numbers  code-golf  kolmogorov-complexity  graphical-output  code-golf  tips  code-golf  string  permutations  code-golf  sorting  base-conversion  binary  code-golf  tips  basic  code-golf  number  number-theory  fibonacci  code-golf  date  code-golf  restricted-source  quine  file-system  code-golf  code-golf  math  code-golf  ascii-art  code-golf  math  primes  code-golf  code-golf  math  matrix  code-golf  string  math  logic  factorial  code-golf  palindrome  code-golf  quine  stateful  code-golf  interactive  code-golf  board-game  code-golf  math  arithmetic  code-golf  string  code-golf  math  matrix  code-golf  math  abstract-algebra  polynomials  code-golf  date  code-golf  string  array-manipulation  sorting  code-golf  game  code-golf  string  code-golf  ascii-art  decision-problem  code-golf  number  sequence  code-golf  code-golf  code-golf  sequence  fibonacci  code-golf  math  geometry  random  code-golf  code-golf  math  decision-problem  fractal  rational-numbers  code-golf  number  number-theory  code-golf  combinatorics  permutations  card-games  code-golf  math  sequence  array-manipulation  fibonacci  code-golf  sequence  decision-problem  graph-theory  code-golf  ascii-art  parsing  lisp  code-golf  string  math  natural-language  logic  code-golf  math  logic  code-golf  string  alphabet  code-golf  string  code-golf  string 

14
ระยะทางที่สั้นที่สุดระหว่างสองจุดคือเส้น
กำหนดรหัสโปรแกรมหรือฟังก์ชั่นเพื่อสร้างผืนผ้าใบแบบโต้ตอบบนหน้าจอที่มีขนาดอย่างน้อย 400 พิกเซล x 400 พิกเซล ผ้าใบสามารถเป็นสีใดก็ได้ที่คุณต้องการขอบหรือไม่มีขอบมีหรือไม่มีแถบชื่อเรื่อง ฯลฯ เพียงผ้าใบบางรูปแบบที่ชัดเจน ผู้ใช้จะคลิกบนพื้นที่ที่แตกต่างกันสองส่วนของผืนผ้าใบและโปรแกรมจะต้องส่งออกระยะทางแบบยุคลิด (เป็นพิกเซล) ระหว่างการคลิกสองครั้งในบางแบบ (STDOUT, การแสดงการแจ้งเตือน ฯลฯ ) การคลิกสองครั้งสามารถคลิกซ้ายได้เพียงคลิกขวาคลิกซ้ายสำหรับการคลิกครั้งแรกและคลิกขวาสำหรับการคลิกครั้งที่สองสองครั้งดับเบิลคลิกซ้าย ฯลฯ สามารถใช้ชุดค่าผสมใดก็ได้ หมายเหตุพิเศษ: ไม่อนุญาตให้คลิกและลาก (เช่นใช้ MOUSEUP เป็นจุดที่สอง) โดยเฉพาะ พวกเขาจะต้องคลิกสองครั้งที่แตกต่างกัน ผู้ใช้จะต้องสามารถทำสิ่งนี้ได้หลายครั้งและต้องได้รับผลลัพธ์ในแต่ละครั้งจนกว่าโปรแกรมจะปิด / force-quit / kill / etc คุณสามารถเลือกวิธีการปิด (คลิก X, ctrl-C, ฯลฯ ) สิ่งใดก็ตามที่นักกอล์ฟต้องการรหัสของคุณ กฎระเบียบ ยอมรับได้ทั้งโปรแกรมหรือฟังก์ชั่น หากฟังก์ชั่นอย่างไรก็ตามคุณยังคงต้องแสดงผลให้กับผู้ใช้อย่างใดอย่างหนึ่ง (เพียงแค่คืนค่าไม่เป็นที่ยอมรับ) สามารถส่งออกไปยังคอนโซลแสดงเป็นแจ้งเตือนบรรจุลงบนผืนผ้าใบและอื่น ๆ ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม นี่คือรหัส - กอล์ฟเพื่อให้ใช้กฎการตีกอล์ฟตามปกติทั้งหมดและรหัสที่สั้นที่สุด …

10
มดบนบันทึกธรรมชาติ
นี่เป็นความท้าทายเริ่มต้นที่ดีและเป็นนักฆ่าเวลาที่ดี ฉันเพียงแค่พูดว่า - บันทึก - ธรรมชาติเพราะชื่อสั้นเกินไปนี่ไม่มีส่วนเกี่ยวข้องกับลอการิทึม รับ 2 ตัวแปร: nจำนวนของมด wความกว้างของการเข้าสู่ระบบ การส่งออกเข้าสู่ระบบของความกว้างwกับnมด (ตัวอย่างแสดงให้เห็นw=3,n=6 ) | | | \O/ \O/ \O/ | | -O- -O- -O- | | /o\ /o\ /o\ | | ^ ^ ^ | | | | \O/ \O/ \O/ | | -O- -O- -O- | | /o\ …

17
ใช้นาฬิกาจับเวลา
ติดตั้งนาฬิกาจับเวลาระบบดิจิตอลอย่างง่ายซึ่งจะแสดงเวลาที่ผ่านไปเป็นวินาทีและนาทีตามที่อธิบายไว้ด้านล่าง สิ่งสำคัญ โปรดอ่านทั้งส่วนแสดงผลและส่วนควบคุม ! แสดง เวลาที่ผ่านไปควรแสดงในMM:SSรูปแบบโดยแทนที่สตริงเวลาที่แสดงก่อนหน้านี้ "แทนที่" (ล้างทั้งหมดหรือบางส่วนของหน้าจอได้รับอนุญาตด้วย) นาฬิกาจับเวลาจะต้องอัปเดตอย่างน้อยทุกวินาที ตัวอย่าง: 0 นาที 0 วินาที 00:00 0 นาที 33 วินาที 00:33 1 นาที 50 วินาที 01:50 เริ่มแรกคุณสามารถเริ่มต้นด้วย '00: 00 'หรือด้วยค่าอื่น ๆ ในช่วง [00: 00-59: 59] เมื่อนาฬิกาจับเวลาของคุณมาถึง59:59มันควรรีเซ็ตเป็น00:00และดำเนินการต่ออีกครั้ง คุณสามารถใช้ฐานอื่น (แทนทศนิยม) หรือแม้แต่ระบบตัวเลขอื่นหากคุณต้องการตราบใดที่คุณทำตามรูปแบบทั่วไป ตัวอย่างเช่น13:03สามารถแสดงเป็น: ทศนิยม 13:03 เลขฐานสิบหก 0D:03 Base64 N:D ฐานจินตภาพ 10101:3 ตัวเลขโรมัน XIII:III ระวังว่าหากคุณใช้ระบบ …

15
ความท้าทายทางเรขาคณิต
ทุกคนรักรูปทรงเรขาคณิต เหตุใดเราจึงไม่ลองและเขียนรหัสมัน ความท้าทายนี้เกี่ยวข้องกับการใช้ตัวอักษรและตัวเลขและทำให้รูปร่างขึ้นอยู่กับมัน การป้อนข้อมูล อินพุตจะอยู่ในรูปแบบของ (shapeIdentifier)(size)(inverter)การป้อนข้อมูลจะอยู่ในรูปแบบของ แต่รูปร่างคือตัวระบุขนาดและอินเวอร์เตอร์คืออะไร ตัวระบุรูปร่างเป็นตัวระบุสำหรับประเภทของรูปร่างที่คุณจะทำกับ*s ต่อไปนี้เป็นตัวระบุรูปร่าง: s - จัตุรัส t - สามเหลี่ยม ขนาดจะอยู่ระหว่าง1-20และเป็นขนาดของรูป อินเวอร์เตอร์เป็นหรือไม่รูปร่างจะถูกลงคว่ำซึ่งจะเขียนแทนด้วยหรือ+ -หมายเหตุ: s3-== (เท่ากับ) s3+เพราะกำลังสองเป็นสมมาตร อย่างไรก็ตามt5-! = t5+(ไม่เท่ากับ) ช่องว่างต่อท้ายนั้นไม่เป็นไรในผลลัพธ์ แต่ช่องว่างชั้นนำไม่ ตัวอย่างผลลัพธ์ Input: s3+ Output: *** *** *** Input: t5+ Output: * *** ***** Input: t3- Output: *** * หมายเหตุพิเศษ อินพุตสามเหลี่ยมจะเป็นเลขคี่เสมอดังนั้นสามเหลี่ยมจะลงท้ายด้วย 1 *ที่ด้านบนเสมอ ขนาดของรูปสามเหลี่ยมคือขนาดของฐานถ้าอินเวอร์เตอร์เป็น และมีขนาดของด้านบนถ้าอินเวอร์เตอร์เป็น+-
23 code-golf  string  ascii-art  geometry  code-golf  ascii-art  subsequence  fewest-operations  test-battery  code-golf  array-manipulation  bitwise  code-golf  interactive  code-golf  music  code-golf  string  kolmogorov-complexity  code-golf  string  decision-problem  simulation  code-golf  string  classification  code-golf  sequence  base-conversion  palindrome  code-golf  kolmogorov-complexity  code-golf  date  astronomy  code-golf  sequence  base-conversion  code-golf  geometry  combinatorics  code-golf  string  code-golf  math  array-manipulation  code-challenge  math  code-golf  card-games  code-challenge  array-manipulation  sorting  code-golf  code-golf  math  abstract-algebra  polynomials  code-golf  palindrome  factoring 

30
รับตัวเลขสุ่ม n ตัวเลขด้วยตัวเลขที่แตกต่างกันและไม่ใช่ 0
ฉันอ่านคำถามนี้และคิดว่ามันจะเป็นการท้าทายที่ดี งาน ให้อินพุต0<n<10สร้างตัวเลขสุ่มด้วย ตัวเลขที่แน่นอน ครั้งแรกไม่ได้ 0 ดังนั้น f(n)>10**(n-1)-1 ตัวเลขที่แตกต่างกัน เกณฑ์การชนะ นี่คือรหัส - กอล์ฟเพื่อให้ได้รหัสที่สั้นที่สุด สุ่ม ฉันหมายถึงการกระจายแบบสุ่มอย่างสม่ำเสมอ ดังนั้นจากมุมมองของโปรแกรมแต่ละหมายเลขที่เป็นไปได้มีโอกาสเดียวกัน หากภาษาที่คุณกำลังเขียนมีตัวสร้างตัวเลขสุ่มแปลก ๆ ก็ไม่เป็นไรที่จะใช้มัน ตัวอย่าง รายการค่าที่จะเลือกแบบสุ่มสำหรับn=2คือ: [10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 35, 36, 37, 38, 39, 40, 41, …
22 code-golf  number  random  grid  game  king-of-the-hill  javascript  code-golf  arithmetic  statistics  code-golf  math  code-golf  math  code-golf  string  palindrome  code-golf  string  interactive  code-golf  quine  polyglot  code-golf  string  stack-exchange-api  code-golf  number-theory  decision-problem  code-golf  tips  code-golf  string  internet  code-golf  graphical-output  image-processing  fractal  code-golf  ascii-art  geometry  hexagonal-grid  code-golf  string  restricted-source  hello-world  code-golf  game  code-golf  cipher  code-golf  permutations  cops-and-robbers  permutations  cops-and-robbers  code-golf  internet  stack-exchange-api  code-golf  ascii-art  random  code-golf  tips  code-golf  ascii-art  code-golf  code-golf  kolmogorov-complexity  code-golf  string  unicode  code-golf  number  sequence  primes  palindrome  code-golf  game  decision-problem  code-golf  math  geometry  code-golf  graphical-output  interactive  code-golf  set-partitions  code-golf  number  arithmetic  restricted-source  code-golf  decision-problem  python  recursion  code-golf  ascii-art  code-golf  source-layout  code-golf  function  recursion  functional-programming  code-golf  game  combinatorics  permutations  code-golf  string  file-system  code-golf  string  hashing  code-golf  stack-exchange-api  code-golf  string  code-golf  math  number  arithmetic  polyglot 

23
ยืนยันชื่อไฟล์ใหม่
ที่รันไทม์ให้พร้อมต์บรรทัดอินพุตจนกว่าผู้ใช้อินพุตไม่ใช่ชื่อของไฟล์หรือไดเร็กทอรีที่มีอยู่หรือไอเท็มระบบไฟล์อื่นที่สัมพันธ์กับไดเร็กทอรีการทำงานปัจจุบัน จากนั้นส่งคืน / พิมพ์ชื่อไฟล์ที่ป้อนล่าสุด คุณอาจสมมติว่าอินพุตของผู้ใช้ทั้งหมดจะเป็นชื่อไฟล์ที่ถูกต้อง รหัสหลอก 1 myform = new form("GUI") myform.mytxt = new editfield("") myform.ok = new button("OK") repeat waitfor(myform.ok,"click") until not filesystem.exists(myform.mytxt.content) return(myform.mytxt.content) รหัสหลอก 2 LET TEXT = "." WHILE HASFILE(TEXT) DO TEXT = PROMPT("") ENDWHILE RETURN TEXT ตัวอย่างการป้อนข้อมูลของผู้ใช้ซึ่งจะทำให้เกิดการแจ้งเตือนอีกครั้งเมื่ออยู่ใน TIO . .. .env.tio / /bin/[ /lost+found ตัวอย่างของการป้อนข้อมูลของผู้ใช้ซึ่งจะกลับมาเมื่อ TIO: …

18
สร้างเครื่องมือแก้ไขเส้นอย่างง่าย
ใน:สตริงที่ไม่มีตัวแบ่งบรรทัด * อนุญาตให้ผู้ใช้แก้ไขและส่งบรรทัด ออก:สตริงที่แก้ไข (อาจเป็นทางเลือกที่มีการลากบรรทัดต่อท้าย) ตัวแก้ไขบรรทัดอย่างน้อยต้องอนุญาตให้ผู้ใช้: เลื่อนเคอร์เซอร์ที่มองเห็นไปทางซ้ายและขวา แทรกและ / หรือเขียนทับอักขระที่ตำแหน่งเคอร์เซอร์ ลบอักขระที่ตำแหน่งเคอร์เซอร์ ส่งสตริงใหม่นั่นคือการหยุดแก้ไขทำให้สตริงที่แก้ไขถูกส่งคืน / พิมพ์ / แสดง / บันทึก ... (โดยไม่มีข้อความอื่น) ชื่นชม แต่ไม่จำเป็น: คำอธิบายรหัสของคุณ ลิงก์ไปยังเว็บไซต์ทดสอบออนไลน์ที่สามารถสาธิตโปรแกรม / ฟังก์ชั่นของคุณ ภาพเคลื่อนไหวแสดงการใช้งาน (ตัวอย่างเช่น TIO ไม่อนุญาตการโต้ตอบ) บันทึก: การโยงคีย์เป็นคำแนะนำเท่านั้น ไม่จำเป็นต้องใช้ GUI หรือการออกแบบภาพ ตัวอย่าง _ในต่อไปนี้เคอร์เซอร์จะมีภาพประกอบด้วย ใน: Just some text อนุญาตให้ผู้ใช้แก้ไข: Just some text_ ผู้ใช้กด←(ปุ่มลูกศรซ้าย) เก้าครั้ง Just ̲some text …

15
เครื่องขยายความจริง
หลายคนรู้ว่าเครื่องความจริงในการเขียนโปรแกรมคืออะไร แต่ถึงเวลาแล้วที่เราจะทำทุกอย่างให้เป็นระเบียบ ขอแนะนำเครื่องแห่งความจริงที่ขยายเพิ่ม! เครื่องจักรความจริงแบบขยายใช้สองสิ่งเป็นอินพุตจำนวนเต็มnและสตริงที่ไม่ว่างsเปล่า มันส่งออกs nครั้งด้วยช่องว่างต่อท้ายตัวเลือก อย่างไรก็ตามหากnมีค่าเท่ากับ0คุณจะต้องแสดงผลออกsจนกว่าโปรแกรมจะหยุดทำงานด้วยตนเองเช่นไม่ควรยกเลิก นอกจากนี้หากnเป็นจำนวนลบสตริงจะต้องมีการกลับรายการ ตัวอย่างเช่นมีs=helloและเอาท์พุทจะเป็นn=-1olleh วิธีการอินพุตมาตรฐานเอาต์พุตชนิดใดก็ได้ตราบใดที่สามารถจัดการกับอนันต์ได้ หากคุณมีคำตอบที่ไม่จัดการกับอนันต์คุณสามารถโพสต์ได้ถ้ามันน่าสนใจหรือในภาษาที่ไม่สามารถจัดการกับผลลัพธ์ที่ไม่มีที่สิ้นสุด กรณีทดสอบ n, s, output 5, "hello world", "hello worldhello worldhello worldhello worldhello world" 0, "PPCG", "PPCGPPCGPPCGPPCG..." -2, "truThY", "YhTurtYhTurt" 2000, "o", "oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo" นี่คือรหัส - กอล์ฟดังนั้นรหัสที่สั้นที่สุดชนะ! นี่คือโพสต์ Sandbox ดั้งเดิม ทำการแก้ไขแล้ว ขอบคุณไปที่ @ComparSparklePony สำหรับการสร้างแนวคิดของการท้าทายนี้

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