Another great job interview question. Get somebody to write a function that will generate a list of Fibonacci numbers and calculate the sum of the values that do not exceed four million.

In case you are not aware the Fibonacci sequence is generated by adding the previous two terms of the sequence. So a basic sequence of the numbers looks like. 1, 2, 3, 5, 8, 13, 21, 34, 55, 89 ...

static void Main(string[] args)
{
    DateTime Start = DateTime.Now;
    UInt64 Total = 0;
    UInt64 Fib = 1;
    UInt64 Last = 0;

    do
    {
        UInt64 tmp = Fib;
        Fib = Fib + Last;
        Last = tmp;
        Console.WriteLine(Fib);

        if (Fib % 2 == 0 && Fib <= 4000000)
            Total += Fib;
    } while (Fib <= 4000000);

    Console.WriteLine("Answer: {0}", Total);

    Console.WriteLine("Time Taken: {0}", DateTime.Now - Start);
    Console.ReadLine();
}

Something that an interviewed should not do here is ask you to do something with the sequence and not provide you with enough information to generate the sequence. If they do you should probably come back with a question of. do you
expect your employee's to know all mathematical sequences of numbers?



Did You find this page useful?

Yes No



Last Modified: 21 December 2016

Releated Posts


2012-01-30 - C - The string reverse
2012-01-27 - C - Palindrome
2011-10-27 - CSharp - Number Of Cores and Processors
2011-10-04 - CSharp - Thread Queue Example
2011-09-29 - CSharp - Background Thread / Task
2011-09-17 - CSharp - Lookup Hostname
2011-08-29 - C Sharp - StopWatch, The high resolution timer
2011-08-29 - CSharp - IsGuid
2011-08-26 - CSharp - Convert Between Meters and Feet
2011-08-23 - CSharp - ThreadPool and Windows Forms
2011-08-10 - C Sharp - MD5Sum / SHASum
2011-07-22 - CSharp - Fibonacci sum
2011-07-13 - CSharp - Palindrome
2011-07-11 - CSharp - The string Reverse
2011-07-10 - CSharp - Interviews FizzBuzz
2011-06-27 - CSharp - HowTo Parse a URL
2011-06-22 - CSharp - Extending any class
2011-06-13 - ASPNET - Login by username or email
2011-05-12 - CSharp - ASPNET Logoff
2011-03-07 - C Sharp - Windows Logoff
2011-03-02 - ASPNET - Dynamic Controls
2011-03-01 - C Sharp - Resize an image by size of height
2011-02-23 - C Sharp / MSSQL Get inserted value of NEWSEQUENTIALID()
2011-02-10 - CSharp - Shutdown or reboot windows
2011-02-10 - CSharp - Wake on Lan (WOL) Packet
2011-02-06 - C Sharp - Gridview Bound Yes No
2011-02-05 - MSSQL - Levenshtein
2011-01-30 - MSSQL - Adding MD5 checksum support
2011-01-30 - MSSQL - RegEx Support
2011-01-30 - MSSQL - Adding SHASum support
2011-01-30 - MSSQL - Enabling CLR Functions