HP charges for printing because it costs them money to do so. Printing is an important part of HP's business, and they want to make sure that they are able to recoup their costs from customers.