天天看點

第三章 3.25 3.26

3.3.3劃分數段的程式是使用下标運算符實作的,請利用疊代器改寫程式并實作完全相同的功能。

#include <iostream>
#include <vector>

using namespace std;

int main(){
    vector<unsigned> scores(, );
    unsigned grade;
    while (cin >> grade)
    {
        if (grade <= )
        {
            ++*(scores.begin() + (grade / ));
        }
    }
    for (auto s : scores)
    {
        cout << s << " ";
    }
    return ;
}
           

3.26 在100頁的二分搜尋程式中,為什麼用的是mid = beg + (end - beg) / 2,而非mid = (beg + end) / 2;?

原因:疊代器運算沒有定義兩個疊代器加的運算。

繼續閱讀