高中生程式解題系統:字串讀取練習

若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。


題目連結 https://zerojudge.tw/ShowProblem?problemid=d018

此題為字串處理的題目,用C++ sstream 裡的 istringstream 來處理。

將字串切割成
序號(整數):(字元)實數(浮點數)
用 istringstream buffer(str);  int serial; char dummy; double real; 等變數。
最後變成  buffer >> serial >> dummy >> real

程式碼:
#include <iostream>
#include <sstream>

using namespace std;

int main()
{
    string str;

    while(getline(cin, str))
    {
        int serial;
        char dummy;
        double real;
        double result = 0;

        istringstream buffer(str);

        while(buffer >> serial >> dummy >> real)
        {
            //cout << serial << dummy << real << " ";
            if( serial & 1 )
                result += real;
            else
                result -= real;

            //cout << result << endl;
        }

        cout << result << endl;
    }

    return 0;
}

沒有留言: