Friday, 5 December 2014

How do I sum even numbers between two numbers

How do I sum even numbers between two numbers

I have three textboxes, and one button . 

The first txtbox is where the first number is entered by the user

The second txtbox is where the second number is entered by the user

The third txtbox is where the even sum will appear at. 

And a enter button is also on the form. 

MSDN wrote:
public void Linq65()
{
    var numbers =
        from n in Enumerable.Range(100, 50)
 
        select new { Number = n, OddEven = n % 2 == 1 ? "odd" : "even" };
 
    foreach (var n in numbers)
    {
        Console.WriteLine("The number {0} is {1}.", n.Number, n.OddEven);
    }
}
This sample uses Range to generate a sequence of numbers from 100 to 149 that is used to find which numbers in that range are odd and even.

The number 100 is even.
The number 101 is odd.
The number 102 is even.
The number 103 is odd.
The number 104 is even.
The number 105 is odd.
The number 106 is even.
...
The number 149 is odd.

 
Based on above example, you can achieve that in two ways (using Linq):
 int fromNumber = 10;
 int toNumber = 30;
    //1. querable method
    var SumOfEvenNumbersInRange = (from n in Enumerable.Range(fromNumber, toNumber - fromNumber +1)
   where(n%2==0)
   select n).Sum();
    //2. Lambda expressions   
    int res = Enumerable.Range(fromNumber, toNumber - fromNumber +1).Where(n=>n%2==0).Sum();
 
In both cases result is the same: 220.

No comments:

Post a Comment