OJ第三批——Problem R:P3 數錢是件愉快的事

問題及代碼:

Problem R: P3 數錢是件愉快的事

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 356  Solved: 189
[Submit][Status][Web Board]

Description

超市收銀員的錢盒裏,各種鈔票總是按照面額分類整理,這樣做可以提高效率,保證工作質量。
我們就要製造這個分面額整理鈔票的錢盒。爲簡單起見,只支持百元、拾元和壹元三種紙幣。一個錢盒中有4張百元、16張拾元、14張一元鈔票,沒錯,一共574元;另一個錢盒中,12張百元、17張拾元、9張一元鈔票,你知道有多少元;將這兩個錢盒中的鈔票放在同一個盒子裏,嘿嘿,這是件愉快的事。
下面的程序,就完成這件事。不過,設計師寫好了類聲明,測試員做好了測試函數,錢盒的功能,體現爲Money類的構造函數,就等着程序員你來完成了。
請在begin到end部分寫上你該實現的函數,並提交這一部分代碼。
#include<iostream>
using namespace std;
class Money
{
private:
    int hundred;   //百元張數
    int ten;       //拾百元張數
    int one;       //壹元張數
public:
    Money(int h=0,int t=0, int o=0);
    Money operator+(const Money &m);
    friend ostream &operator<<(ostream &out,Money m);
};
//************* begin *****************
//************* end *****************
int main()
{
    int mh1, mt1, mo1, mh2, mt2,mo2;
    cin>>mh1>>mt1>>mo1;
    cin>>mh2>>mt2>>mo2;
    Money m1(mh1, mt1, mo1), m2(mh2, mt2,mo2);
    cout<<m1<<endl;
    cout<<m2<<endl;
    Money m3;
    m3=m1+m2;
    cout<<m3<<endl;
    return 0;
}

Input

2行,每行3個數字,分別表示2個錢盒中百、拾、壹元鈔票的張數

Output

輸出3行,分別表示前面輸入的2個錢盒的情況,以及將2個錢盒相加後的情況
每個錢盒的輸出格式是:
總面額<-->百元張數*100+拾元張數*10+壹元張數

Sample Input

4 16 14
12 17 9

Sample Output

574<-->4*100+16*10+14
1379<-->12*100+17*10+9
1953<-->16*100+33*10+23

HINT

 

#include<iostream>
using namespace std;
class Money
{
private:
    int hundred;   //百元張數
    int ten;       //拾百元張數
    int one;       //壹元張數
public:
    Money(int h=0,int t=0, int o=0);
    Money operator+(const Money &m);
    friend ostream &operator<<(ostream &out,Money m);
};
//************* begin *****************
Money ::Money(int h,int t,int o)
{
    hundred=h;
    ten=t;
    one=o;
}

Money Money::operator+(const Money &m)
{
    return Money(hundred+m.hundred,ten+m.ten,one+m.one);
}

ostream &operator << (ostream &out,Money m)
{
    out<<m.hundred*100+m.ten*10+m.one<<"<-->"<<m.hundred<<"*100+"<<m.ten<<"*10+"<<m.one;
    return out;
}
//************* end *****************
int main()
{
    int mh1, mt1, mo1, mh2, mt2,mo2;
    cin>>mh1>>mt1>>mo1;
    cin>>mh2>>mt2>>mo2;
    Money m1(mh1, mt1, mo1), m2(mh2, mt2,mo2);
    cout<<m1<<endl;
    cout<<m2<<endl;
    Money m3;
    m3=m1+m2;
    cout<<m3<<endl;
    return 0;
}


 

運行結果:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章