-1

現在のプログラムでベクトルをどのように使用しますか。「ベクトルで米ドル単位 1、2、5、10、20、50、および 100 を使用します。」

int main()
{

    int i, dollar[7] = {0}, denom[7] = {1,2,5,10,20,50,100}, total = 0;
    string names[7] = {
        "1-Dollar bill",
        "2-Dollar bill",
        "5-Dollar bill",
        "10-Dollar bill",
        "20-Dollar bill",
        "50-Dollar bill",
        "100-Dollar bill"
    };

    for(i = 0; i < 7; i++)
    {
        cout << "How many " << setw(5) << names[i];
        if(i == 0)
            cout << "s";
        else  
            cout << "s";
        cout << " do you have? ";
        cin >> dollar[i];
    }

    for(i = 0; i < 7; i++)
    {
        cout <<  "You have" << setw(5) << dollar[i] << " " << names[i] << right;
        if(i == 0)
            if(dollar[i] == 1)
                cout << " ";
            else  
                cout << "s ";    
        else if(dollar[i] != 1) 
            cout << "s ";
        total += dollar[i] * denom[i];
        cout << endl;
    }

    cout << "The value of all your bills is $" << total << endl;
    return 0;
}

基本的に私の出力は次のようになります

私は自分の本を読み、YouTube を使用しましたが、この割り当てでベクトルを使用する方法を完全には理解できません。また、setw(5) で「右揃え」を正しく使用していますか?

4

2 に答える 2

2

それははるかに簡単ではありませんでした、交換してください

string names[7]= {
    "1-Dollar bill",
    "2-Dollar bill",
    "5-Dollar bill",
    "10-Dollar bill",
    "20-Dollar bill",
    "50-Dollar bill",
    "100-Dollar bill"
};

vector<string> names(7); /* note round brackets not square brackets */
names[0] = "1-Dollar bill";
names[1] = "2-Dollar bill";
names[2] = "5-Dollar bill";
names[3] = "10-Dollar bill";
names[4] = "20-Dollar bill";
names[5] = "50-Dollar bill";
names[6] = "100-Dollar bill";

dollarandと同じで、denom完了です。

于 2012-09-14T19:44:16.317 に答える
0
int main()
{
    std::vector<int>dollar;             //This makes an empty vector of ints
    std::vector<int>denom;              //so does this. 
    int total = 0;

    std::vector<std::string> names;     //this makes an empty vector of strings.
    names.push_back("1-Dollar bill");    //push_back means add to the end of the vector
    names.push_back("2-Dollar bill");
    names.push_back("5-Dollar bill");
    names.push_back("10-Dollar bill");
    names.push_back("20-Dollar bill");
    names.push_back("50-Dollar bill");
    names.push_back("100-Dollar bill");

    cout << names[0]; //This prints "1-Dollar bill"
}

うまくいけば、これで始めることができます。

于 2012-09-14T19:50:21.960 に答える