Hi,

I agree with Jacob, the time cost of the difference in efficiency in this case is likely to be negligible (if you were doing a loop with thousands of iterations, for example, then you'd want to get the efficiency right).

That said, as you've asked for opinions, I feel it is 'better' to pass arguments to routines rather than using global/public variables. It just makes for safer, more self-contained code which will provide you with less headaches in the long run.