Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- using namespace std;
- #define MAX 20
- struct TIEN{
- int soto;
- int menhgia;
- };
- int a[]={500,200,100,50,20,10};
- int n = 6;
- //số lượng tờ tiền của mỗi mệnh giá là không hạn chế.
- void ruttien(int a[], int n, int k, TIEN b[],int &nb)
- {
- nb = 0;
- int st,i = 0;
- do{
- if(k >= a[i]){
- st = (int)k/a[i];
- b[nb].soto = st;
- b[nb++].menhgia = a[i];
- k -= a[i]*st;
- }
- i++;
- }while(k>0 && i<n);
- }
- //hàm ko trả về số tờ, chỉ trả về dãy các tờ tiền
- bool tratien(int kq[], int &n, int k)
- {
- int t[] = {500,200,100,50,20,10};
- n = 0;
- while (k>0) {
- int i=0;
- while (i<6 && t[i]>k) i++;//tìm tờ tiền có thể rút
- if (i>=6) return false;
- kq[n++] = t[i]; //thêm tờ tiền thứ i vào kq
- k -= t[i]; //số tiền cần rút giảm đi
- }
- return true;
- }
- int main()
- {
- TIEN b[MAX];
- int k,nb;
- do{
- cout <<"Nhap so tien can rut (boi so cua 10):";
- cin >>k;
- }while (k<=0 || k%10);
- ruttien(a,n,k,b,nb);
- cout<<"so to tien va menh gia can tra la:\n";
- for(int i = 0; i < nb; i++)
- cout<<b[i].soto<<" to "<<b[i].menhgia<<endl;
- system("pause");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement