or, for completeness sake and because it's frequently used:
($b) = @_;
This will be useful once you need more than one value off the list, as you can do
($a, $b, $c) = @_;
Some additional advice: get into the habit of using "strict" and "warnings" in every Perl script you write and declare variables with "my" or "our" (which should be the exception). You can quickly create a mess in a longer script simply with typos in variable names, which are not caught without using "strict". Using "warnings" will help you, among other things, to find variables you are using but have never assigned anything to. What you do in the Perl script is to put this in the top of the script:
Your code tries to keep a balance but there is no way of accessing it. What you are really trying to write is a "Checking" class. BTW: the name seems a bit awkward (it's not checking, it's making a transaction), always try to find a descriptive name for your packages and subroutines, if you can't find one then this might indicate that its task isn't well defined. You could explore object oriented coding to handle this in a better way or let your main script keep the balance. I hope this isn't too confusing.