国产探花免费观看_亚洲丰满少妇自慰呻吟_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;}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 东辽县| 汨罗市| 平度市| 绥中县| 南丹县| 枝江市| 利辛县| 隆子县| 彭山县| 文山县| 广州市| 象州县| 上犹县| 尼勒克县| 贵港市| 西峡县| 东港市| 万荣县| 巴里| 扶沟县| 平定县| 通许县| 保山市| 永宁县| 肃南| 光泽县| 洪江市| 双柏县| 安塞县| 平塘县| 老河口市| 获嘉县| 罗城| 板桥市| 图木舒克市| 涪陵区| 且末县| 根河市| 敦化市| 大悟县| 奎屯市|