เจ้านายของฉัน * ไม่เข้าใจว่าเพราะเหตุใดโปรแกรมเมอร์ของเธอตอบสนองเชิงลบต่อผู้ใช้ที่เปลี่ยนแปลงข้อกำหนดของโปรแกรม ช่วยเธอเข้าใจ! ในทุกคำตอบให้สร้างข้อกำหนดใหม่ จากนั้นเขียนโปรแกรม / ฟังก์ชั่นที่แก้ปัญหาความต้องการนั้นและข้อกำหนดก่อนหน้าทั้งหมดขณะที่อยู่ในภาษาการเขียนโปรแกรมใหม่
ตัวอย่าง
ผู้ใช้ 1 โพสต์คำตอบแรก เขาระบุว่าโปรแกรมจะต้องส่งออก "Hello, World" เขาสร้างโปรแกรมใน Java ที่แสดงผล "Hello, World"
ผู้ใช้ 2 โพสต์คำตอบที่สอง เธอระบุว่าโปรแกรมจะต้องยอมรับอินพุตnและส่งออกค่านายกลำดับที่nจนถึงจำนวนสูงสุดของภาษา เธอสร้างโปรแกรมใน C ++ ที่ยอมรับใส่nและออกผลลัพธ์เป็นn THนายกรัฐมนตรีและเอาท์พุท "Hello, world." เธอไม่สามารถสร้างโปรแกรมใน Java
ผู้ใช้ 3 โพสต์คำตอบที่สาม เขาระบุว่าแหล่งโปรแกรมไม่สามารถมีข้อความ "Hello" พระองค์ทรงสร้างฟังก์ชั่นในหลามที่ยอมรับการป้อนnและออกผลลัพธ์เป็นn THนายกรัฐมนตรีและ "Hello, world." ในขณะที่ไม่ได้ใช้ข้อความ "Hello" ในแหล่งที่มาของเขา เขาไม่สามารถสร้างโปรแกรมใน Java หรือ C ++
รูปแบบคำตอบ
#Answer # - <language name> [version, if pertinent]
Requirement: <rule>.
<code>
[explanations, encoding, TIO link, etc.]
ตอบกฎ
คำตอบจะต้องเป็นไปตามรูปแบบข้างต้นหรือคล้ายกัน
คำตอบอาจเป็นโปรแกรมหรือฟังก์ชั่น
คำตอบจะต้องตอบสนองความต้องการทั้งหมดจนถึงและรวมถึงคำตอบปัจจุบัน
ผู้ใช้เดียวกันไม่สามารถโพสต์คำตอบสองคำในหนึ่งแถว
หากคำตอบสองคำตอบถูกโพสต์ด้วยหมายเลขเดียวกันคำตอบที่โพสต์ในภายหลังควรถูกลบ
อย่าแก้ไขความต้องการของคุณจนกว่าคุณจะทำใจไม่ดีและไม่มีคำตอบอื่นใดโพสต์
หากคำตอบของคุณไม่สอดคล้องกับกฎของคุณและกฎอื่น ๆ ทั้งหมดแสดงว่าไม่ถูกต้อง ลองแก้ไขก่อนที่จะมีใครโพสต์คำตอบถัดไป
รุ่นเดียวกันของภาษาเดียวกันจะนับเป็นภาษาที่ต่างกันหากโปรแกรมหรือฟังก์ชั่นที่สร้างขึ้นในเวอร์ชันใดเวอร์ชันหนึ่งจะทำงานต่างกันในเวอร์ชันอื่น
คำตอบอาจไม่ยอมรับการป้อนข้อมูลใด ๆ ที่ไม่จำเป็นและอาจไม่ส่งออกสิ่งที่ไม่จำเป็นยกเว้นช่องว่างที่จำเป็น อย่างไรก็ตามแม้ว่าเบื้องหลังโปรแกรมจะต้องปฏิบัติตามข้อกำหนด "ที่ซ่อนอยู่" (จากผู้ใช้) แต่ก็อาจทำทุกอย่างที่คุณต้องการโดยเฉพาะอย่างยิ่งหากคุณต้องปฏิบัติตามข้อกำหนดเรื่องเวลาดำเนินการ
กฎความต้องการ
ความต้องการจะต้องระบุเพียงหนึ่งความต้องการ ข้อกำหนดนี้อาจมีเงื่อนไขและหากข้อกำหนดนี้ต้องการอินพุตและ / หรือเอาท์พุทอาจรวมอยู่ด้วย
ข้อกำหนดอาจไม่ลบหรือปรับเปลี่ยนข้อกำหนดก่อนหน้าหรือขัดแย้งกับข้อกำหนดดังกล่าว แต่อาจขยายได้อีกหนึ่งข้อกำหนด (ระบุว่า)
หากต้องการ จำกัด แหล่งที่มา ( จำกัด แหล่งที่มา ) หรือต้องมีข้อความในแหล่งที่มาของมันอาจจะเป็นเพียงเอาสายเดียว (เช่น
0
,Hello
) หรือต้องใช้ตัวอักษรตัวเดียวข้อกำหนดไม่สามารถกำหนดแหล่งที่มาให้มีขนาดต่ำกว่า 100 ไบต์ต้องการการเข้ารหัสที่เฉพาะเจาะจงหรือในตัวของมันเองและต้องออกกฎส่วนใหญ่ของภาษาทั่วไป
ข้อกำหนดอาจไม่บังคับแหล่งที่มาให้สอดคล้องกับรูปแบบที่แน่นอน (ตัวอย่างเช่นการเริ่มแต่ละบรรทัดด้วยอักขระบางตัวหรือ (@Conor) การแปลงค่าเป็นค่าที่แน่นอน) นอกเหนือจากที่ระบุในแหล่งที่ จำกัด
นี่คือการผูกมัดคำตอบดังนั้นคำตอบทั้งหมดสร้างขึ้นจากคำตอบก่อนหน้า ฉันและคนอื่น ๆ อาจพยายามเก็บรายการข้อกำหนดทั้งหมดไว้ หากต้องการดูคำตอบตามลำดับคุณสามารถเรียงลำดับตามเก่าที่สุด หากต้องการดูคำตอบล่าสุดให้เรียงลำดับที่เก่าที่สุดจากนั้นไปที่ส่วนท้ายของรายการ
วิธีชนะ (เปลี่ยนเพื่อระงับการโหวต):
เมื่อไม่มีคำตอบโพสต์เป็นเวลาสองสัปดาห์ความท้าทายจะจบลงและคะแนนจะถูกคำนวณ คะแนนจะถูกคำนวณโดยการรวมจำนวนคำตอบทั้งหมดของผู้ใช้แต่ละคน แต่การโพสต์น้ำหนักตามห่วงโซ่พวกเขาอยู่ไกลแค่ไหน (เนื่องจากโพสต์ในภายหลังมีความต้องการมากขึ้นพวกเขาจะยากขึ้น)
pseudocode:
for each answer in user.Answers {
score += 1 + (answer.number / 100)
}
ตัวอย่าง:
แซลลี่มีสามคำตอบ เธอโพสต์คำตอบ 5 คำตอบ 7 และตอบ 20
1.05 + 1.07 + 1.2 = 3.32
คะแนนของเธอจะเป็น หากเป็นผลรวมของคำตอบแบบตรงคะแนนของเธอจะเป็น 3 แต่การถ่วงน้ำหนักของความลึกของโซ่ตอบแทนคำตอบที่ยากขึ้น
เริ่ม:
นี่เป็นข้อกำหนดแรกที่หัวหน้าของฉันมอบให้:
ข้อกำหนดที่ 0: โปรแกรมจะต้องส่งออก 0 ก่อนสิ่งอื่นใด
* สมมุติ
รายการข้อกำหนดและภาษา
โปรดทราบว่านี่อาจจะล้าสมัย - โปรดดูคำตอบที่โพสต์ล่าสุดทันทีก่อนโพสต์คำตอบของคุณเพื่อให้แน่ใจว่าคุณปฏิบัติตามข้อกำหนดทุกประการ ฉันเสียใจมากถ้าคุณสร้างโปรแกรมที่ยอดเยี่ยมเฉพาะสำหรับใครบางคนที่จะพูดพานอรามา - ถ้าคุณต้องการโพสต์มันจริงๆให้ระบุว่าไม่ใช่การแข่งขัน
เต็มรูปแบบ ( แต่อาจจะไม่ได้ในปัจจุบัน) ที่ต้องการ: ไม่สามารถมี
0
,*
หรือ]
ในรหัสที่มาและไม่สามารถใช้ร่วม-on-ขึ้นบรรทัดใหม่ในตัว เอาท์พุ0
ทจากนั้นรับอินพุทเลขจำนวนเต็มที่ไม่เป็นลบn
และขึ้นบรรทัดใหม่ตามด้วยn
หมายเลขฟิโบน่าชี0 ดัชนี(อาจถูก1
ทำดัชนี) ตามด้วยบรรทัดใหม่ตามด้วยอินพุทเดียวกัน n กำลังสองตามด้วยการขึ้นบรรทัดใหม่ตามด้วยn
ทวีคูณ โดยอินพุตใหม่m
, ตามด้วย newline, ตามด้วย10^B
, ที่ไหนB
คือจำนวนไบต์ในซอร์สโค้ด, ตามด้วย newline, ตามด้วยn
th0
-indexed (อาจเป็น1
-exexed) Prime number, ตามด้วย newline, ตามด้วยตัวหารสามัญที่ยิ่งใหญ่ที่สุดของ n และ m0: โปรแกรมจะต้องส่งออก
0
ก่อนสิ่งอื่นใดภาษา: N / A
1:0
แหล่งที่มาของโปรแกรมไม่สามารถมี ภาษา: 05AB1E
2: โปรแกรมรับอินพุตที่ไม่เป็นลบจำนวนเต็มn
และแสดงบรรทัดใหม่ตามด้วยหมายเลข0
-indexed n'th Fibonacci (อาจถูก1
ทำดัชนี) ภาษา: dc
3: โปรแกรมเอาต์พุตบรรทัดใหม่ตามด้วยอินพุตn
กำลังสองเดียวกัน ภาษา: J
4: โปรแกรมส่งเอาต์พุตขึ้นบรรทัดใหม่ตามด้วยn
คูณด้วยอินพุตใหม่m
คูณด้วยการป้อนข้อมูลใหม่ภาษา: Ohm
5: โปรแกรมไม่สามารถมี*
(รหัส ASCII0x2A
) ภาษา: Python 3
6: โปรแกรมส่งเอาต์พุตขึ้นบรรทัดใหม่ตามด้วยโดย10^B
ที่B
จำนวนไบต์ในซอร์สโค้ด ภาษา: Mathematica
7: โปรแกรมจะแสดงบรรทัดใหม่ตามด้วยหมายเลขเฉพาะn
th0
-indexed (อาจจะเป็น1
-exexed) ภาษา: JavaScript (ES6)
8: โปรแกรมไม่ได้ใช้การรวมเข้ากับสายอักขระใหม่ในตัว แต่สามารถใช้การรวมเข้าด้วยกันอื่น ๆ ได้ ภาษา: Jelly
9: โปรแกรมแสดงบรรทัดใหม่ตามด้วยตัวหารสามัญที่ยิ่งใหญ่ที่สุดของ n และ m ภาษา: สกาลา
10: โปรแกรมไม่สามารถมี]
ได้ ภาษา: Pyth
คะแนนปัจจุบัน (เรียงตามโพสต์แรก)
Okx : 1.01
R. Kap : 2.09
Conor O'Brien : 1.03
Nick Clifford : 1.04
Eric Rose : 1.05
Greg Martin : 1.06
Erik the Outgolfer : 2.18
math_junkie : 1.09