2013年11月18日 星期一

分子量計算

#include <iostream>
#include <map>
#include <string>
using namespace std;
int main ()
{
  map <char,int> pt;
  char ch,pch;
  pt['H']=1;
  pt['O']=16;
  pt['C']=12;
  //'x'
  int q=0;
  while(cin>>ch && ch!='x'){
   if (ch >='2' && ch<='9'){
  q+=pt[pch]*(ch-'0'-1);
   }
   else{
  q+= pt[ch];
  pch=ch;
   }   
  }
  cout << q;
  system("pause");
return 0;
}
/*
以x標示分子式的結束
CH3COOHx  =>60
CH3CH2COOHx => 74

題目二
輸入資料: 
3 <= 構成原子數量
H 1
O 16
C 12
2 <= 分子式數量
CH3COOHx
CH3CH2COOHx
輸出
60
74
*/

沒有留言:

張貼留言