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

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

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

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

上流程圖:

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

#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;}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 高台县| 长兴县| 长海县| 墨玉县| 金川县| 厦门市| 德阳市| 迁安市| 保康县| 山阳县| 赤城县| 平定县| 礼泉县| 阜康市| 张掖市| 玛曲县| 疏勒县| 水富县| 广东省| 张家港市| 英德市| 中牟县| 时尚| 安远县| 磐石市| 台江县| 瑞金市| 梁山县| 南部县| 科技| 敦煌市| 阿勒泰市| 大丰市| 安阳县| 沽源县| 休宁县| 罗田县| 浪卡子县| 辽阳县| 永州市| 大姚县|