Giving money, or even buying a cup of tea, whilst it may feel like the right thing to do, often isn't.
By giving money you're possibly helping them get another can of Special Brew. Whilst there's an argument that if someone is on the streets a beer could make it more bearable, and I do have some sympathy with that view, it does make it harder the the individual to get help from the services geared to help them. If they've had a drink, most hostels and shelters won't allow them in until they sober up again. If you buy a beggar a cup of tea or a steak bake, that's at best another thing stopping them going to a shelter or soup kitchen (where other support is often available). At worst they've already been bought half a dozen that morning and it'll just go in the bin.
Ask yourself why you're giving them a 50p/buying them a cuppa or a sausage roll, and be honest with yourself. If you're doing it just to make yourself feel less guilty (which is understandable, I've definitely done so) you need to ask yourself if it's really the best way to help. Many of these well-intentioned acts can make it harder for these people to turn things around. This may sound harsh, but many who work with homeless people will say much the same things. If ever there was a situation that exemplifies the old saying about the road to hell being paved with good intentions, it's the way people react to the unhoused.