(나는 화학자가 아니야! 어떤 것에 잘못되었을 수도있다. 나는 고등학교에서 배운 것을 쓰고있다)
탄소 원자는 특별한 특성을 가지고 있습니다 : 그것들은 4 개의 다른 원자 (특별하지 않은)에 결합 할 수 있으며 매우 독특한 긴 사슬에서도 안정적으로 유지됩니다. 그것들은 많은 다른 방법으로 연결되고 결합 될 수 있기 때문에, 그것들을 명명하기 위해서는 일종의 명명 규칙이 필요합니다.
이것은 우리가 만들 수있는 가장 작은 분자입니다.
CH4
메탄이라고합니다. 그것은 하나의 탄소와 4 개의 수소 원자로 구성됩니다. 다음은
CH3 - CH3
이것을 에탄이라고합니다. 2 개의 탄소와 6 개의 수소 원자로 구성되어 있습니다.
다음 2 개는 다음과 같습니다.
CH3 - CH2 - CH3
CH3 - CH2 - CH2 - CH3
그들은 프로판과 부탄입니다. 문제는 두 가지 다른 방식으로 만들어 질 수 있기 때문에 탄소 원자가 4 개인 사슬에서 시작됩니다. 하나는 위에 나와 있고 다른 하나는 다음과 같습니다.
CH3 - CH - CH3
|
CH3
이것은 분명히 다른 것과 동일하지 않습니다. 원자의 수와 결합이 다릅니다. 물론 바인딩을 접고 분자를 회전시키는 것만으로는 다른 것이 아닙니다! 그래서 이건:
CH3 - CH2 - CH2 - CH3
이:
CH3 - CH2
|
CH3 - CH2
동일합니다 (그래프 이론에 따르면 두 분자 사이에 동형이 존재하면 동일하다고 말할 수 있습니다). 지금부터 나는이 도전에 필수적이지 않기 때문에 수소 원자를 쓰지 않을 것입니다.
유기 화학을 싫어하고 많은 다른 탄소 원자를 지명함에 따라이를위한 프로그램을 작성하기로 결정합니다. 하드 드라이브 공간이 충분하지 않으므로 프로그램 크기가 최대한 작아야합니다.
도전
여러 줄로 된 텍스트를 입력 (탄소 사슬)으로 받아 탄소 사슬의 이름을 출력하는 프로그램을 작성하십시오. 입력은 공백, 대문자 'c'문자 및 '|'만 포함합니다. 및 '-'는 결합을 나타낸다. 입력 체인에는 사이클이 포함되지 않습니다! 예:
입력:
C-C-C-C-C-C
| |
C C-C
산출:
4- 에틸 -2- 메틸 헥산
사람이 읽을 수 있고 본질적으로 동일한 경우 모든 출력을 사용할 수 있습니다 (예를 들어 원하는 경우 다른 구분 기호를 사용할 수 있음).
명명 규칙 :
( IUPAC 규칙 참조 )
가장 긴 탄소 사슬을 확인하십시오. 이 체인을 부모 체인이라고합니다.
모든 치환기 (모체 사슬에서 추가 된 그룹)를 식별하십시오.
치환체에 가장 낮은 수를 부여하는 말단에서 모 사슬의 탄소 수를 계산하십시오. 일련의 숫자를 비교할 때 "가장 낮은"계열은 첫 번째 차이가있을 때 가장 낮은 수가 포함 된 계열입니다. 두 개 이상의 사이드 체인이 동등한 위치에 있으면 가장 낮은 번호를 이름에서 첫 번째 번호로 지정하십시오.
동일한 치환기가 두 번 이상 발생하면, 치환기가 발생하는 각 지점의 위치가 주어진다. 또한, 치환기가 발생하는 횟수는 접두사 (di, tri, tetra 등)로 표시된다.
두 개 이상의 다른 치환기가있는 경우 기본 이름을 사용하여 사전 순으로 나열됩니다 (접두사 무시). 알파벳 순서로 치환기를 넣을 때 사용되는 유일한 접두사는 이소 프로필 또는 이소 부틸에서와 같이 이소이다. 접두사 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- 메틸 프로판
입력:
C-C-C-C
|
C
|
C-C
산출:
3- 메틸 헥산
입력:
C-C-C-C-C
|
C
|
C
산출:
3- 메틸 헥산
입력:
C
|
C
|
C-C-C-C
|
C-C-C
|
C-C
산출:
3,4- 디메틸 -5- 에틸 헵탄
편집 : 잘못된 예에 대해 죄송합니다. 나는 좋은 학생이 아니었다 :(. 그들은 지금 고쳐야한다.
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- 디 메틸 -5- 에틸 헵탄 이라고해서는 안 됩니까? (우리는 방금 유기 화학을 시작하고 있습니다. 틀렸을 수도 있습니다 : P)