テーブルの書式を正しく設定して、各列の下の値をその列の最初の文字から始めるようにしています。私は3つの列のフォーマットを成功させましたが、K CountとLM Countの列を整形して整然とした形で印刷する方法を理解することはできません。このテーブルを適切にフォーマットするにはどうすればよいですか?
KカウントとLMカウントの列がきれいに印刷されるように、コードのwhileループ部分に加えることができる修正は何ですか?
void printTable(const vector<int>& z, const vector<long>& x, const
vector<long>& y,
const vector<int>& a, const vector<int>& b)
{
ostringstream ss;
ss << "\n\n\n" << setw(10) << left << "Digits" << "Input Numbers "
<< setw(11) << right << "K Output " << setw(6)
<< right << "K Count " << setw(10) << right << "LM Output " << setw(6)
<< right << "LM Count" << endl;
int i = 0, n = 0;
while (i < 5)
{
string q = to_string(z[2*n]) + " x " + to_string(z[abs(2*n + 1)]);
string r = to_string(x[i]);
string s = to_string(a[i]);
string t = to_string(y[i]);
string u = to_string(b[i]);
ss << setw(10) << left << (i+1) << q
<< setw(16) << right << r
<< setw(11) << right << s
<< setw(12) << right << t
<< setw(10) << right << u << endl;
i++;
n++;
}
string r = ss.str();
cout << r;
}
コードのスクリーンショットではなく、コードを投稿してください。 –
申し訳ありません、できるだけ早く編集を掲載します。 – JURO312
「正しい」とは何ですか? – UKMonkey