DEV Community

Discussion on: Daily Challenge #240 - ATM

Collapse
 
patricktingen profile image
Patrick Tingen

Progress 4GL solution:

FUNCTION solve RETURNS INTEGER (amount AS INTEGER):
  DEFINE VARIABLE bill   AS INTEGER EXTENT 6 INITIAL [500,200,100,50,20,10] NO-UNDO.
  DEFINE VARIABLE needed AS INTEGER NO-UNDO.
  DEFINE VARIABLE i      AS INTEGER NO-UNDO.

  DO i = 1 TO EXTENT(bill):
    needed = needed + TRUNCATE(amount / bill[i],0).
    amount = amount - (bill[i] * TRUNCATE(amount / bill[i],0)).
  END.

  RETURN needed.
END FUNCTION. 

MESSAGE 
  solve(1250) SKIP
  solve(1500)
  VIEW-AS ALERT-BOX INFORMATION BUTTONS OK.