(ฉันไม่ใช่นักเคมี! ฉันอาจจะผิดบางอย่างฉันเขียนสิ่งที่ฉันเรียนรู้ในโรงเรียนมัธยม)
อะตอมของคาร์บอนมีคุณสมบัติพิเศษ: พวกมันสามารถผูกกับอะตอมอื่นอีก 4 อะตอม (ซึ่งไม่ได้เป็นพิเศษนั้น) และพวกมันจะมีความเสถียรแม้ในโซ่ยาวซึ่งเป็นเอกลักษณ์มาก เนื่องจากพวกเขาสามารถถูกล่ามโซ่และรวมกันได้หลายวิธีเราจึงจำเป็นต้องมีการตั้งชื่อแบบแผนการตั้งชื่อพวกเขา
นี่เป็นโมเลกุลที่เล็กที่สุดที่เราสามารถสร้าง:
CH4
มันเรียกว่ามีเธน ประกอบด้วยอะตอมของคาร์บอนเพียงหนึ่งเดียวและไฮโดรเจน 4 อะตอม สิ่งต่อไปคือ:
CH3 - CH3
นี่เรียกว่าอีเธน มันประกอบไปด้วยคาร์บอน 2 อะตอมและไฮโดรเจน 6 อะตอม
2 ต่อไปคือ:
CH3 - CH2 - CH3
CH3 - CH2 - CH2 - CH3
พวกเขาเป็นโพรเพนและบิวเทน ปัญหาเริ่มต้นด้วยโซ่ที่มีอะตอมของคาร์บอน 4 ตัวเนื่องจากสามารถสร้างขึ้นได้ 2 วิธี อันหนึ่งถูกแสดงไว้ด้านบนและอีกอันคือ:
CH3 - CH - CH3
|
CH3
เห็นได้ชัดว่าไม่เหมือนกัน จำนวนอะตอมและการผูกต่างกัน แน่นอนว่าการพับการผูกและการหมุนโมเลกุลจะไม่ทำให้มันแตกต่าง! ดังนั้นนี่คือ:
CH3 - CH2 - CH2 - CH3
และนี่:
CH3 - CH2
|
CH3 - CH2
เหมือนกัน (หากคุณเข้าสู่ทฤษฎีกราฟคุณอาจพูดได้ว่าหากมีมอร์ฟอสฟิซึมระหว่าง 2 โมเลกุลก็เหมือนกัน) จากนี้ไปฉันจะไม่เขียนอะตอมไฮโดรเจนเนื่องจากไม่จำเป็นสำหรับความท้าทายนี้
เมื่อคุณเกลียดเคมีอินทรีย์และคุณมีอะตอมของคาร์บอนแตกต่างกันมากมายคุณตัดสินใจที่จะเขียนโปรแกรมที่ทำเพื่อคุณ คุณไม่มีที่ว่างบนฮาร์ดไดร์ฟของคุณมากเกินไปดังนั้นโปรแกรมต้องมีขนาดเล็กที่สุดเท่าที่จะเป็นไปได้
ความท้าทาย
เขียนโปรแกรมที่เขียนด้วยข้อความหลายบรรทัดเป็นอินพุต (โซ่คาร์บอน) และส่งชื่อของโซ่คาร์บอน ข้อมูลที่ป้อนจะมีช่องว่างเฉพาะอักขระตัวพิมพ์ใหญ่ 'c' และ '|' และ '-' ซึ่งแสดงถึงการเชื่อมโยง ห่วงโซ่อินพุตจะไม่มีรอบ! ตัวอย่าง:
การป้อนข้อมูล:
C-C-C-C-C-C
| |
C C-C
เอาท์พุท:
4 เอทิล-2-methylhexane
เอาท์พุทใด ๆ ที่เป็นที่ยอมรับตราบเท่าที่มันเป็นมนุษย์อ่านและเป็นหลักเดียวกัน (เพื่อให้คุณสามารถใช้ตัวแยกที่แตกต่างกันเช่นถ้าคุณต้องการ)
แบบแผนการตั้งชื่อ:
(ดู: กฎ IUPAC )
ระบุโซ่คาร์บอนที่ยาวที่สุด ห่วงโซ่นี้เรียกว่าห่วงโซ่ผู้ปกครอง
ระบุองค์ประกอบย่อยทั้งหมด (กลุ่มที่ต่อท้ายจากเชนพาเรนต์)
หมายเลข carbons ของสายโซ่จากปลายที่ให้ substituents ตัวเลขต่ำสุด เมื่อเปรียบเทียบชุดของตัวเลขชุดที่เป็น "ต่ำสุด" คือหมายเลขที่มีตัวเลขต่ำที่สุดในโอกาสที่มีความแตกต่างครั้งแรก หากเชนข้างสองข้างขึ้นไปอยู่ในตำแหน่งที่เท่ากันให้กำหนดจำนวนต่ำสุดให้กับโซ่ที่จะมาก่อนในชื่อ
หากเกิด substituent เดียวกันมากกว่าหนึ่งครั้งจะมีการระบุตำแหน่งของแต่ละจุดที่เกิด substituent นอกจากนี้จำนวนครั้งที่กลุ่ม substituent เกิดขึ้นถูกระบุด้วยคำนำหน้า (di, tri, tetra เป็นต้น)
หากมีองค์ประกอบย่อยที่แตกต่างกันสองรายการขึ้นไปรายการเหล่านั้นจะถูกเรียงลำดับตามตัวอักษรโดยใช้ชื่อฐาน (ละเว้นคำนำหน้า) คำนำหน้าเท่านั้นที่ใช้เมื่อวาง substituents ตามลำดับตัวอักษรคือ iso ใน isopropyl หรือ isobutyl คำนำหน้า sec- และ tert- ไม่ได้ใช้ในการกำหนดลำดับตัวอักษรยกเว้นเมื่อเปรียบเทียบกัน
หากเชนที่มีความยาวเท่ากันกำลังแข่งขันเพื่อเลือกเป็นพาเรนต์โซ่ตัวเลือกจะเป็นชุด:
- โซ่ที่มีโซ่ข้างจำนวนมากที่สุด
- ห่วงโซ่ที่มีองค์ประกอบย่อยมีตัวเลขต่ำสุด
- โซ่ที่มีจำนวนคาร์บอนมากที่สุดในห่วงโซ่ด้านที่เล็กที่สุด
- โซ่ที่มีโซ่ด้านข้างที่แยกย่อยน้อยที่สุด (กราฟที่มีจำนวนใบน้อยที่สุด
สำหรับเชนพาเรนต์การตั้งชื่อคือ:
Number of carbons Name
1 methane
2 ethane
3 propane
4 butane
5 pentane
6 hexane
7 heptane
8 octane
9 nonane
10 decane
11 undecane
12 dodecane
โซ่จะไม่ยาวกว่า 12 ดังนั้นจะเพียงพอ สำหรับกลุ่มย่อยมันเหมือนกัน แต่แทนที่จะเป็น 'ane' ในตอนท้ายเรามี 'yl'
คุณสามารถสันนิษฐานได้ว่าC
s อยู่ในคอลัมน์คี่และการผูก ( |
และ-
ตัวอักษร) นั้นยาว 1 ระหว่างอะตอมของคาร์บอน
กรณีทดสอบ:
การป้อนข้อมูล:
C-C-C-C
เอาท์พุท:
บิวเทน
การป้อนข้อมูล:
C-C-C
|
C
เอาท์พุท:
2 methylpropane
การป้อนข้อมูล:
C-C-C-C
|
C
|
C-C
เอาท์พุท:
3 methylhexane
การป้อนข้อมูล:
C-C-C-C-C
|
C
|
C
เอาท์พุท:
3 methylhexane
การป้อนข้อมูล:
C
|
C
|
C-C-C-C
|
C-C-C
|
C-C
เอาท์พุท:
3,4-dimethyl-5-ethylheptane
แก้ไข: ขออภัยสำหรับตัวอย่างที่ผิด ฉันไม่ใช่นักเรียนที่ดี :( ตอนนี้พวกเขาควรได้รับการแก้ไขแล้ว
If the same substituent occurs more than once, the location of each point on which the substituent occurs is given. In addition, the number of times the substituent group occurs is indicated by a prefix (di, tri, tetra, etc.).
ตัวอย่างสุดท้ายไม่ควรเรียกว่า 3,4- di methyl-5-ethylheptane? (เราเพิ่งเริ่มต้นเคมีอินทรีย์ฉันอาจผิด: P)