99 ข้อบกพร่องในรหัส
การดัดแปลงของ "99 ขวดเบียร์บนกำแพง" สำหรับวิทยาศาสตร์คอมพิวเตอร์ที่มีข้อบกพร่องเพิ่มขึ้นแทนที่จะลดขวดมักจะโพสต์อีกครั้งในอินเทอร์เน็ต ตัวอย่างเช่นเสื้อยืดที่นี่
ฉันคิดว่ามันน่าสนใจที่จะเห็นการเรียกซ้ำและการสร้างตัวเลขสุ่มในภาษาที่หลากหลายและการค้นหาวิธีที่มีประสิทธิภาพที่สุดในการทำมัน
มีความท้าทายเล็กน้อยอื่น ๆ เกี่ยวกับเบียร์ 99 ขวด แต่ดูเหมือนจะไม่มีอะไรเพิ่มขึ้นและลดลง!
ท้าทาย
โปรแกรมหรือฟังก์ชั่นของคุณไม่ควรป้อนข้อมูลแล้วพิมพ์
99 ข้อบกพร่องในรหัส
99 ข้อบกพร่องในรหัส
เอาหนึ่งและแก้ไขมัน
X ข้อบกพร่องในรหัส
(บรรทัดว่าง)
โดยที่ X คือเลขจำนวนเต็มก่อนหน้าลบ 1 บวกด้วยจำนวนเต็มแบบสุ่มในช่วง [-15,5]
คุณสามารถรวมลบ 1 เข้ากับจำนวนเต็มแบบสุ่มดังนั้นจึงอนุญาตให้มีช่วง [-16,4]
ช่วงสามารถเป็นแบบพิเศษได้ดังนั้นลบหนึ่งบวก (-16,6) หรือ (-17,5)
จำนวนเต็มแบบสุ่มไม่จำเป็นต้องมีการกระจายอย่างเท่าเทียมกันพวกเขาเพียงแค่ต้องเป็นไปได้ทั้งหมด
โปรแกรมเริ่มต้นด้วย 99 บั๊กเสมอ
คุณสามารถละเว้นข้อผิดพลาดทางไวยากรณ์ของ "1 ข้อบกพร่อง"
โปรแกรมควรหยุดเมื่อจำนวนข้อบกพร่องเป็น 0 หรือลบและพิมพ์
0 ข้อบกพร่องในรหัส
ไม่ควรมีจำนวนข้อบกพร่องติดลบ ตอนจบน่าจะดูเหมือน
ข้อบกพร่อง Y ในรหัส
ข้อบกพร่อง Y ในรหัส
เอาหนึ่งและแก้ไขมัน
0 ข้อบกพร่องในรหัส
(บรรทัดว่าง)
0 ข้อบกพร่องในรหัส
บรรทัดใหม่ต่อท้ายเป็นที่ยอมรับ
- รหัสของคุณอาจเป็นโปรแกรมเต็มรูปแบบหรือฟังก์ชั่น
- ไม่มีอินพุต
- เอาต์พุตควรเป็น stdout หรือส่งคืน
- คำเตือน / ข้อผิดพลาดในบันทึก / STDERR นั้นใช้ได้ตราบใดที่ STDOUT มีข้อความที่ต้องการ ดูที่นี่สำหรับข้อมูลเพิ่มเติม
นี่คือโค้ดกอล์ฟเพื่อให้โค้ดที่สั้นที่สุดเป็นไบต์ชนะ