ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 탄화수소 계산
    algorism 2020. 1. 15. 16:46

    탄소(C)와 수소(H)로만 이루어진 화합물을 탄화수소라고 합니다.
    탄소(C) 한 개의 질량은 12g, 수소(H) 한 개의 질량은 1g입니다.
    에틸렌(C2H4)의 질량은 12*2+1*4=28g입니다.
    메탄(CH4)의 질량은 12*1+1*4=16g입니다.
    탄화수소식이 주어지면 해당 화합물의 질량을 구하는 프로그램을 작성하세요.


    입력설명
    첫 줄에 탄화수소식이 주어집니다. 식의 형태는 CaHb 형태이며 (1<=a, b<=100)이다.
    단 a 나 b 가 1이면 숫자가 식에 입력되지 않는다. 예) CH4


    출력설명
    첫 줄에 탄화수소의 질량을 출력합니다.


    입력예제 1
    C2H4
    출력예제 1
    28

     

    입력예제 2
    CH4
    출력예제 2
    16

     

    #include<iostream>
    using namespace std;
    //\0 = null
    int main()
    {
    	int i = 0;
    	int j = 0;
    	int C = 0;
    	int H = 0;
    	int pos;
    	char arr[10];
    	cin >> arr;
    
    
    	if (arr[1] == 'H')//C 즉 탄소갯수가 1개일때C다음 바로 H가 나왔을때를 말함
    	{
    		C = 1;
    		pos = 1;
    	}
    
    	else
    	{
    		for (i = 1; arr[i]!='H'; i++)//H가 나올때까지 반복
    		{
    			C = C * 10 + (arr[i] - 48);//숫자 구하기
    		}
    		pos = i;//자리수 확인을 위해 
    	}
    	if (arr[pos + 1] == '\0')H = 1;//H다음 NULL값이면 H가 1개라는 뜻
    	else
    	{
    		for (j = pos + 1; arr[j] != '\0'; j++)
    		{
    			H = H * 10 + (arr[j] - 48);
    		}
    	}
    	cout << C * 12 + H;
    }

    'algorism' 카테고리의 다른 글

    연속 자연수 합  (0) 2020.01.19
    교집합  (0) 2020.01.18
    병합정렬 알고리즘  (0) 2020.01.15
    3의 갯수 구하기  (0) 2020.01.14
    카드게임  (0) 2020.01.14
Designed by Tistory.