10.04.2017

Rút tiền máy ATM

(Olympic Bắc Giang 2011 - Bảng B). Một người đi rút tiền tại một máy rút tiền ATM, người này cần rút một khoản tiền là N ( đơn vị tính: Nghìn đồng; N<= 10000). Tại máy ATM ở thời điểm đó có 3 loại tiền là: x, y, z (đơn vị tính: Nghìn đồng; x, y, z <= 500). Viết chương trình liệt kê tất cả các cách mà máy rút tiền ATM có thể trả tiền cho khách hàng và cho biết có bao nhiêu cách trả.
                                                                 Giải
Var
   i,j,k,n,x,y,z,dem: integer;
Begin
   Write('Nhap so tien can rut ( n<= 10000): '); readln(n);
   Write('Nhap 3 loai tien ma may co (x,y,z<=500) : '); readln(x,y,z);
   For i:=0 to n div x do
       for j:=0 to n div y do
           for k:=0 to n div z do
               If i * x + j * y + k * z = n Then
                   begin
                       Dem:=dem+1;
                       Writeln('Cach ',dem,': So tien loai ',x,'; ',y,'; ',z,'; lan luot la: ',i*x,'; ',j*y,'; ',k*z,'.');
                   end;
   if dem= 0 then Write('Khong co cach nao de rut dung so tien yeu cau')
   else Writeln('Co tat ca ',dem,' cach rut tien');
   readln;
END.

No comments:

Post a Comment

Cảm ơn bạn đã nhận xét