COBOL เป็นภาษาที่เก่าแก่มากในขณะที่เขียนมันเป็น 58 ปี อันที่จริงแล้วมันมีความแปลกประหลาดที่น่าสนใจมาก: ตัวละครหกตัวแรกของแต่ละบรรทัดเป็นความคิดเห็น
ทำไมถึงเป็นเช่นนี้คุณถาม เอาล่ะตัวละครทั้ง 6 ตัวนั้นตั้งใจที่จะใช้เป็นหมายเลขบรรทัดย้อนกลับไปในวันที่โปรแกรมไม่ได้พิมพ์แบบดิจิทัลอย่างสมบูรณ์
นอกจากนี้อักขระที่เจ็ดสามารถเป็นส่วนหนึ่งของชุดที่เล็กมากได้ (โดยปกติ*
จะใส่เครื่องหมายบรรทัดหรือช่องว่างเพื่อแยกหมายเลขบรรทัดออกจากโค้ด)
แต่ถ้าคุณใช้ระบบดิจิทัลมากกว่านี้และคุณแค่ต้องการโปรแกรมดิบ
ระบบแสดงความคิดเห็น
ความคิดเห็นใน COBOL มีสองประเภท: ความคิดเห็นในบรรทัดและความคิดเห็น "หมายเลขบรรทัด" ข้างต้น
หมายเลขโทรศัพท์ที่ไม่ได้กล่าวถึงนั้นง่ายมากเพียงแค่ถอดตัวอักษรเจ็ด (หกบวกช่องว่างเดียว) ออกจากแต่ละบรรทัด
000000 apple
000001 banana
celery donuts
จะกลายเป็น:
apple
banana
donuts
ความคิดเห็นในบรรทัดทำให้ยากขึ้นอีกเล็กน้อย ความคิดเห็นบรรทัดเริ่มต้นด้วยเครื่องหมายดอกจันที่*
อยู่ในตำแหน่งอักขระที่เจ็ดของบรรทัดเช่น:
000323* this is a comment
นี่ไม่ใช่ความคิดเห็นของบรรทัด:
*00000 this isn't a comment
หากต้องการยกเลิกการใส่เครื่องหมายข้อคิดเห็นในบรรทัดเพียงลบทั้งบรรทัด
ตัวอย่างความเห็น "โปรแกรม":
000000 blah blah
000001* apples
000002 oranges?
000003* yeah, oranges.
000*04 love me some oranges
รุ่นที่ไม่มีข้อคิดเห็น:
blah blah
oranges?
love me some oranges
ในคำอื่น ๆ หากต้องการยกเลิกการใส่เครื่องหมายสตริงให้ลบอักขระหกตัวแรกของแต่ละบรรทัดจากนั้นส่งคืนทั้งหมดยกเว้นอักขระแรกของทุกบรรทัดที่ไม่ได้ขึ้นต้นด้วยดาว
ความท้าทาย
สร้างโปรแกรมหรือฟังก์ชั่นที่ใช้โปรแกรมที่มีคอมเมนต์และส่งคืนชุดตัวเลือกที่ไม่มีการแบ่งแยก
ชี้แจง
- เครื่องหมายดอกจัน (
*
) จะไม่ปรากฏที่ใดก็ได้นอกเจ็ดอักขระแรกในบรรทัด (เราไม่ได้ขอให้คุณยืนยันไวยากรณ์) - แต่ละบรรทัดจะมีอักขระอย่างน้อย 7 ตัวเสมอ
- คุณอาจสมมติว่าอักขระตัวที่เจ็ดเป็นเครื่องหมายดอกจันหรือเว้นวรรคเสมอ
- อินพุตหรือเอาต์พุตอาจเป็นเมทริกซ์หรือรายการ
- ต้องจัดการอักขระ ASCII ที่พิมพ์ได้ (รวมถึงบรรทัดใหม่)
- คุณสามารถส่งออกด้วยการขึ้นบรรทัดใหม่ คุณอาจสันนิษฐานว่าอินพุตจะมีการขึ้นบรรทัดใหม่หากคุณเลือก
เกณฑ์การให้คะแนน
เนื่องจากนี่คือโค้ดกอล์ฟคำตอบที่มีจำนวนไบต์น้อยที่สุดจะเป็นผู้ชนะ!
การปฏิเสธความรับผิด: ฉันไม่รู้จริง ๆ ภาษาโคบอลและไม่เรียกร้อง หากการอ้างสิทธิ์ใด ๆ เกี่ยวกับ COBOL ที่ฉันทำในคำถามนี้ไม่ถูกต้องฉันจะไม่รับผิดชอบ
*
ตัวอย่างทั้งหมดของคุณมีช่องว่างหลังที่ นี่เป็นเรื่องบังเอิญหรือไม่?
key:{key:{key:length,key:length}}
JSON แยกข้อมูลการจัดรูปแบบทั้งหมดและพิมพ์ข้อมูลแม้ว่า