An algorithm is a sequence of steps that need to be applied to achieve a certain outcome. It can depend on a lot of things, like the input (for example a mathematical algorithm might have different steps depending on whether the input is positive or negative). The most important attribute is that it is well-defined and that the steps are this way too. It is not enough to be of a general advisory nature; the steps must be clear. While A is a good business plan, no specific plan is introduced to achieve buying. Similarly, C is a good rule of hand, but there are no instructions on how to implement plan A. Again D is good advice but it only describes an effect, it does not give you an algorithm regarding how to be nice. However B, suits the definition of an algorithm. It gives you clear instructions on what to do, that depend on your customers input. This is the correct choice and this is the way most machines are processing data.