delegate double DoubleOp(double x);
public static void Main()
DoubleOp multiply = MathOperations.MultiplyByTwo;
Console.WriteLine("Calling the Multiply method through a delegate: {0}", multiply(2.0));
DoubleOp square = MathOperations.Square;
Console.WriteLine("Calling the Square method through a delegate: {0}",square(3.0));
static void ProcessAndDisplayNumber(DoubleOp action, double value)
double result = action(value);
"Value is {0}, result of operation is {1}", value, result);
public static class MathOperations
public static double MultiplyByTwo(double value)
public static double Square(double value)