When you consider that you still have to pay for all the 0845 and 0870 numbers......
I refuse point blank to dial 0870 or 0845 numbers, Lona, because no matter what discount package you use, they are always excluded. If everyone refused to dial them, they would soon be consigned to history.
A tip. If you are given either an 0870 or an 0845 number to dial on (say) a bank statement, have a look on the back at the drivel. They often give an "if dialling from overseas" number. Remove the country code and you then have a normal geographical number to use, which will be discounted using your preferred cheap provider.