国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

UVa1586 - Molar mass還是畫流程圖思路清晰

2019-11-10 17:39:23
字體:
來源:轉載
供稿:網友

上流程圖:

有了流程圖,寫代碼就可以一個分支一個分支地寫了:

#define NDEBUG//這個宏的意思是不要debug,交上去的時候要有這一句。//#define LOCAL//定義了這個宏,就是輸出到本地,否則是輸出到屏幕#include <stdio.h>#include <iomanip>#include <iostream>#include <cmath>#include <ctime>#include <cassert>#include <string>#include <vector>const double C = 12.01, H = 1.008, O = 16.00, N = 14.01;using namespace std;int main(int argc, char* argv[]){#ifdef LOCAL	FILE* newFile;	freopen_s(&newFile, "out.txt", "w", stdout);#endif	cout << setiosflags(ios_base::fixed) << setPRecision(3);	int n; cin >> n;	while (n--)	{		string Word; cin >> word;		double sum = 0;		for (int i = 0; i < word.size(); ++i)		{			int howmany = 0;			if (i + 1 == word.size() || isalpha(word[i + 1]))			{				howmany = 1;				switch (word[i])				{				case 'C':					sum += C * howmany;					break;				case 'H':					sum += H * howmany;					break;					//氧原子				case 'O':					sum += O * howmany;					break;				case 'N':					sum += N * howmany;					break;				}				if (i + 1 == word.size())				{					cout << sum << endl;				}				continue;			}			//得記住讀取數字之前的i值啊……			int j = i;			while (i < word.size() && isdigit(word[i + 1]))			{				howmany *= 10;				howmany += word[i + 1] - '0';				++i;			}			switch (word[j])			{			case 'C':				sum += C * howmany;				break;			case 'H':				sum += H * howmany;				break;				//氧原子			case 'O':				sum += O * howmany;				break;			case 'N':				sum += N * howmany;				break;			}			if (i + 1 == word.size())			{				cout << sum << endl;			}			continue;		}	}	return 0;}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 襄城县| 石渠县| 晋宁县| 德州市| 闸北区| 凭祥市| 札达县| 双城市| 涟源市| 怀安县| 吉水县| 大渡口区| 沽源县| 潮州市| 芜湖市| 垦利县| 右玉县| 沧源| 察隅县| 屏边| 安阳县| 太康县| 渭源县| 开远市| 旌德县| 田阳县| 盐源县| 大关县| 申扎县| 四平市| 榆树市| 景宁| 成都市| 宁河县| 万宁市| 乃东县| 汉沽区| 厦门市| 德州市| 房产| 青龙|