Replace Conditional Logic with Strategy

Conditional logic in a method controls which
of several variants of a calculation are executed.

Create a Strategy for each variant and make the method
delegate the calculation to a Strategy instance.