"""Bepaal voor alle bedragen in het opgegeven tekstbestand een minimale gepaste betaling als lijst van munten. """ ## Definieer constanten munten = [ 200, 100, 50, 20, 10, 5, 2, 1 ] # munten in dalende volgorde ## Vraag naam van invoerbestand op en open het voor lezen via inp bestandsnaam = raw_input ( 'Geef naam van tekstbestand met bedragen: ' ) inp = file ( bestandsnaam, 'r' ) #@ inp is geopend voor lezen ## Verwerk alle regels uit tekstbestand inp for regel in inp : # print repr ( regel ) # alleen voor foutendiagnose bedrag = eval ( regel ) # het bedrag op de regel print '%3d:' % bedrag, ## Bepaal minimale betaling van bedrag betaling = [ ] # reeds gevonden deel van de betaling restbedrag = bedrag # resterende te passen bedrag #@ inv: sum(betaling) + restbedrag = bedrag for munt in munten : while restbedrag >= munt : betaling.append ( munt ) restbedrag = restbedrag - munt assert restbedrag == 0 # dus sum(betaling) = bedrag ## Schrijf minimale betaling print betaling