IUPACในภูมิปัญญาที่ไม่สามารถทำได้ของพวกเขาได้สร้างชื่อองค์ประกอบที่เป็นระบบสำหรับองค์ประกอบที่สร้างขึ้นใหม่ นี่คือชื่อชั่วคราวขององค์ประกอบจนกว่าพวกเขาจะตัดสินใจเกี่ยวกับชื่อจริง มันทำงานได้เช่น: แต่ละหลักของหมายเลของค์ประกอบจะถูกกำหนดคำนำหน้าตามค่าของมัน คำนำหน้าจะถูกรวมเข้ากับ 'ium' ในตอนท้าย เมื่อดำเนินการเสร็จแล้วและหากคุณได้รับ double i's (ii) หรือ triple n's (nnn) ให้แทนที่พวกเขาด้วย single i's และ double n's สัญลักษณ์สำหรับองค์ประกอบคือตัวอักษรตัวแรกของคำนำหน้าแต่ละคำที่ใช้ต่อกันและผลลัพธ์เป็นตัวพิมพ์ใหญ่ คำนำหน้าใช้อยู่ด้านล่าง
0 nil 5 pent
1 un 6 hex
2 bi 7 sept
3 tri 8 oct
4 quad 9 enn
ดังนั้นสำหรับกอล์ฟนี้รหัสของคุณจำเป็นต้องสร้างทั้งชื่อองค์ประกอบและสัญลักษณ์ของมันสำหรับจำนวนเต็มบวกที่กำหนด ดังนั้นหากรหัสของคุณได้รับ 137 ก็ควรพิมพ์ที่ stdout หรือกลับทั้งสองและuntriseptium
Uts
มันควรจะถูกต้องอย่างน้อยที่จะ 118 558 สิ่งที่สูงกว่านั้นใช้ได้หากไม่เพิ่มความยาวรหัส
ตัวอย่าง Python แสดงวิธีการ:
def elename(n):
'''Return name and symbol of new element for given element number.'''
prefixes=['nil','un','bi','tri','quad','pent','hex','sept','oct','enn']
nmeFixes, symFixes = [], []
while n: # each digit of element number is assigned a prefix
n, i = divmod(n, 10)
pf = prefixes[i]
symFixes.append(pf[0]) # symbol uses only first letter of prefix
nmeFixes.append(pf)
# loop assembled prefixes in reverse order
nmeFixes.reverse()
symFixes.reverse()
nmeFixes.append('ium') # suffix
name = ''.join(nmeFixes)
symb = ''.join(symFixes).capitalize()
# apply rule about too many n's or i's
name = name.replace('nnn','nn') # can happen with -90-
name = name.replace('ii','i') # -2ium or -3ium
return name, symb
Eric Towersชนะด้วยแคดเมียมไบต์!