Users Online

· Guests Online: 159

· Members Online: 0

· Total Members: 188
· Newest Member: meenachowdary055

Forum Threads

Newest Threads
No Threads created
Hottest Threads
No Threads created

Latest Articles

C# Program to Call Math Operations using Delegates

C# Program to Call Math Operations using Delegates

 

This is a C# Program to call math operations using delegates.

Problem Description

This C# Program Calls Math Operations using Delegates.

Problem Solution

Here the Delegates are used to encapsulate functions into callable function objects that are used much as function pointers are used in C, C++, and other languages. Like function pointers, delegates enable you to separate a function reference from its implementation, allowing the implementation to exist in a separate module.

Program/Source Code

Here is source code of the C# Program to Call Math Operations using Delegates. The C# program is successfully compiled and executed with Microsoft Visual Studio. The program output is also shown below.

/*
 *  C# Program to Call Math Operations using Delegates
 */
 
using System;
public class MathOperations
{
    public static double Multiply(double value)
    {
        return value * 2;
    }
 
    public static double Square(double value)
    {
        return value * value;
    }
}
 
 
delegate double DoubleOp(double x);
 
class Application
{
    static void Main()
    {
        DoubleOp[] operations =
            {
               MathOperations.Multiply,
               MathOperations.Square
            };
 
        for (int i = 0; i < operations.Length; i++)
        {
            Console.WriteLine("Operation[{0}]:", i);
            ProcessAndDisplayNumber(operations[i], 5.0);
            ProcessAndDisplayNumber(operations[i], 13.55);
            ProcessAndDisplayNumber(operations[i], 1.732);
            Console.WriteLine();
        }
        Console.ReadLine();
    }
 
    static void ProcessAndDisplayNumber(DoubleOp action, double value)
    {
        double result = action(value);
        Console.WriteLine(
           "Value : {0}  Result : {1}", value, result);
    }
}
Program Explanation

This C# program is used to call math operations using delegates. A delegate is a reference type variable that holds the reference to a method. The reference can be changed at runtime. Using for loop perform different functions by calling the function using delegate object variable.

 

Here the Delegates are used to encapsulate functions into callable function objects that are used much as function pointers. Like Function pointers, delegates enable to separate a function reference from its implementation, allowing the implementation to exist in a separate module.

Runtime Test Cases
 
Operation[0]:
Value : 5  Result : 10
Value : 13.55  Result : 27.1
Value : 1.732  Result : 3.464
 
Operation[1]:
Value : 5  Result : 25
Value : 13.55  Result : 183.6025
Value : 1.732  Result : 2.999824

 

Comments

No Comments have been Posted.

Post Comment

Please Login to Post a Comment.

Ratings

Rating is available to Members only.

Please login or register to vote.

No Ratings have been Posted.
Render time: 0.87 seconds
10,812,665 unique visits