問題:1、2、5、10、20、50、100ドルの請求書の数を入力するようにユーザーに促すプログラムを作成します。各サイズのドルの数について、ユーザーに個別に問い合わせます。
コードはかなり完成したと思いますが、質問の最後の部分には次のように記載されています。ベクトルの初期化子リストを使用するようにプログラムを変更し、範囲ベースのforステートメントを使用してベクトルをトラバースします。注:これらのC ++ 11機能は、g++-4.6およびVisualStudio 2012で使用できますが、他のコンパイラでは使用できない場合があります。
最後の部分が何を求めているのかわかりません。うまくいけば、ここの誰かが私を正しい方向に向けることができます。これはC++クラスであり、私の本には最新バージョンがありません。
私のコードフォーマットに対する批評も素晴らしいでしょう!
これが私のコードです:
#include "std_lib_facilities_3.h"
vector<int>bills;
int bill;
int bill_tot(){
int sum =
1*bills[0]+2*bills[1]+5*bills[2]+10*bills[3]+20*bills[4]+50*bills[5]+100*bills[6];
return sum;
}
int main()
try{
cout << "Enter the number of One Dollar Bills you have: ";
cin >> bill;
cout << '\n';
bills.push_back(bill);
if (bill<0)
error("You can't have a negative value.\n");
cout << "Enter the number of Two Dollar Bills you have: ";
cin >> bill;
cout << '\n';
bills.push_back(bill);
if (bill<0)
error("You can't have a negative value.\n");
cout << "Enter the number of Five Dollar Bills you have: ";
cin >> bill;
cout << '\n';
bills.push_back(bill);
if (bill<0)
error("You can't have a negative value.\n");
cout << "Enter the number of Ten Dollar Bills you have: ";
cin >> bill;
cout << '\n';
bills.push_back(bill);
if (bill<0)
error("You can't have a negative value.\n");
cout << "Enter the number of Twenty Dollar Bills you have: ";
cin >> bill;
cout << '\n';
bills.push_back(bill);
if (bill<0)
error("You can't have a negative value.\n");
cout << "Enter the number of Fifty Dollar Bills you have: ";
cin >> bill;
cout << '\n';
bills.push_back(bill);
if (bill<0)
error("You can't have a negative value.\n");
cout << "Enter the number of One Hundred Dollar Bills you have: ";
cin >> bill;
cout << '\n';
bills.push_back(bill);
if (bill<0)
error("You can't have a negative value.\n");
cout << "You have " << bills[0] <<" One Dollar Bills.\n";
cout << "You have " << bills[1] <<" Two Dollar Bills.\n";
cout << "You have " << bills[2] <<" Five Dollar Bills.\n";
cout << "You have " << bills[3] <<" Ten Dollar Bills.\n";
cout << "You have " << bills[4] <<" Twenty Dollar Bills.\n";
cout << "You have " << bills[5] <<" Fifty Dollar Bills.\n";
cout << "You have " << bills[6] <<" One Hundred Dollar Bills.\n";
cout << "The value of all your Dollar Bills are $" << bill_tot() << endl;
keep_window_open();
}
catch (runtime_error e) {
cout << e.what() << '\n';
keep_window_open();
}