C++ 笔记:习题 3.13 (3.3.2)

/* C++ Primer 3.3.2 習題 3.13
 * 題目: 讀一組整數到 vector 對象,計算每隊相鄰元素的和,頭尾元素兩兩配對求和,並輸出。若元素為奇數,提示最後一個元素未求和。
 * 使用 文件結束符結束輸入。參見 https://ceeji.net/blog/cpp-learn-io/。
 */
 
#include <iostream>
#include <vector>
 
using std::cin;
using std::cout;
using std::endl;
using std::vector;
 
int main()
{
	int tmp;
	vector<int> list;
	while (cin >> tmp)
	{
		list.push_back(tmp);
	}
	vector<int>::size_type i;
	for (i = 0; i + 1 < list.size(); i += 2) // 建議使用 vector<int>::size_type 而不是 int。
	{
		cout << "Sum of number " << i + 1 << " & " << i + 2 << ": " << (list[i] + list[i+1]) << endl;
	}
	if (i < list.size())
		cout << "The last value is not sumed." << endl;
	for (i = 0; i < list.size() && (list.size() -  i - 1> i); ++i) // 建議使用 vector<int>::size_type 而不是 int。
	{
		cout << "Sum of number " << i + 1 << " & " << list.size() -  i << ": " << (list[i] + list[list.size() - i - 1]) << endl;
	}
}

本文版权遵循 CC BY-NC-SA 4.0发布,转载需附带本文链接。

当前页阅读量为: