C# Exercise: 109 Function Fibonacci

In this C# exercise, you are asked to write a program that uses recursion to calculate a number in the Fibonacci series. The Fibonacci series is a sequence of numbers where the first two elements are 1, and for the subsequent elements, each one is the sum of the two preceding ones. For example, the first numbers in the series are 1, 1, 2, 3, 5, 8, 13, etc. This exercise is a great way to learn and apply the concept of recursion in C#. Instead of using iterative structures, you will need to implement a function that recursively calculates the number at the desired position in the series. Through this exercise, you will gain a deeper understanding of how to use recursion to solve mathematical problems and work with numerical sequences in C#.

 Lesson

Functions

 Exercise

Function Fibonacci

 Objetive

Write a C# program that uses recursion to calculate a number in the Fibonacci series (in which the first two items are 1, and for the other elements, each one is the sum of the preceding two).

 Example Code

// Importing the System namespace to access basic system functions
using System;

class Program
{
    // Recursive function to calculate the Fibonacci number at a given position
    public static int Fibonacci(int n)
    {
        // Base case: The first and second Fibonacci numbers are 1
        if (n == 1 || n == 2)
        {
            return 1;
        }

        // Recursive case: The Fibonacci number is the sum of the previous two Fibonacci numbers
        return Fibonacci(n - 1) + Fibonacci(n - 2);
    }

    // Main method where the Fibonacci function is called
    public static void Main()
    {
        // Declare an integer for the position in the Fibonacci series
        int position = 6; // Example: We want to calculate the 6th Fibonacci number

        // Call the recursive Fibonacci function and print the result
        Console.WriteLine("The Fibonacci number at position {0} is: {1}", position, Fibonacci(position));
    }
}

More C# Exercises of Functions

 Functions: greeting + farewell
Write a C# program whose Main must be like this: public static void Main() { SayHello(); SayGoodbye(); } SayHello and SayGoodbye are functio...
 Function with parameters
Write a C# program whose Main must be like this: public static void Main() { SayHello("John"); SayGoodbye(); } SayHello and SayGoodbye are f...
 Function returning a value
Write a C# program whose Main must be like this: public static void Main() { int x= 3; int y = 5; Console.WriteLine( Sum(x,y) ); } "Sum" is...
 Function returning a value V2
Write a C# program whose Main must be like this: public static void Main() { __Console.WriteLine("\"Hello, how are you\" contains {0} spaces", __...
 Function write centered
Write a C# function to write centered on screen the text that is indicated as a parameter (supposing a screen width of 80 characters): WriteCentere...
 Function write underlined
Write a C# function able to write centered on screen the text that is indicated as a parameter (supposing a screen width of 80 characters) and then un...
 Function sum of array
Write a C# program to calculate the sum of the elements in an array. "Main" should be like this: public static void Main() { int[] example = {20, ...
 Function double
Write a C# function named "Double" to calculate and return an integer number doubled. For example. Double(7) should return 14....
 Function Double reference parameter
Write a C# function named "Double" to calculate the double of an integer number, and modify the data passed as an argument. It must be a "void" functi...
 Function swap reference parameters
Write a C# function named "Swap" to swap the values of two integer numbers, which are passed by reference. An example of use might be: int x=5, ...
 Function power local variables
Write a C# function named "Power" to calculate the result of raising an integer number to another (positive integer) number. It must return another in...
 Function recursive power
Write a C# function that calculates the result of raising an integer to another integer (eg 5 raised to 3 = 53 = 5 × 5 × 5 = 125). This function must ...
 Function modify a letter in a string
Write a C# function named "ChangeChar" to modify a letter in a certain position (0 based) of a string, replacing it with a different letter: string...
 Function IsPrimeTarea
Write a C# function named "IsPrime", which receives an integer number and retuns true if it is prime, or false if it is not: if (isPrime(127)) ......
 Function Parameters of Main, Sum
Write a C# program named "sum", which receives two integer numbers in the command line and displays their sum, as in this example: sum 5 3 8...
 Function SumDigits
Write a C# function SumDigits that receives a number and returns any results in the sum of its digits. For example, if the number is 123, the sum woul...
 Function Factorial
The factorial of a number is expressed as follows: n! = n · (n-1) · (n-2) · (n-3) · ... · 3 · 2 · 1 For example, 6! = 6·5·4·3·2·1 Create a r...
 Function Parameters of Main, Reverse
Write a C# program named "reverse", which receives several words in the command line and displays them in reverse order, as in this example: revers...
 Function GetInt
Write a C# function named "GetInt", which displays on screen the text received as a parameter, asks the user for an integer number, repeats if the num...
 Function tasks database
Write in C# an improved version of the "tasks database", splitting it into functions....
 Function Greatest value in a array
Write a C# function which returns the greatest value stored in an array of real numbers which is specified as parameter: float[] data={1.5f, 0.7f, ...
 Function factorial (iterative)
Write an C# iterative (non-recursive) function to calculate the factorial of the number specified as parameter: Console.Write ( Factorial (6) ); ...
 Function WriteTitle
Write a C# function named "WriteTitle" to write a text centered on screen, uppercase, with extra spaces and with a line over it and another line under...
 Function return value for Main
Write a C# program in which you write a title (using the previous WriteTitle function) which the user will specify in command line. If no text is spec...
 Function CountDV
Write a C# function that calculates the amount of numeric digits and vowels that a text string contains. It will accept three parameters: the string t...
 Function IsAlphabetic
Write a C# function that tells if a character is alphabetic (A through Z) or not. It should be used like this: if (IsAlphabetic ("a")) System.Cons...
 Function IsNumber
Write a C# function that tells if a string is an intenger number. It should be used like this: if (IsNumber ("1234")) System.Console.WriteLine ("I...
 Function calculator, params of Main
Write a C# program to calculate a sum, subtraction, product or division, analyzing the command line parameters: calc 5 + 379 (Parameters must be...
 Function calculator, params and return value of Main
Write a C# program to calculate a sum, subtraction, product or division, analyzing the command line parameters: calc 5 + 379 (Parameters must be...
 Function MinMaxArray
Write a C# function named MinMaxArray, to return the minimum and maximum values stored in an array, using reference parameters: float[] data={1.5f,...
 Function Reverse, recursive
Write a C# program that uses recursion to reverse a string of characters (for example, from "Hello" it would return "olleH")....
 Function WriteRectangle
Write a C# function WriteRectangle to display a (filled) rectangle on the screen, with the width and height indicated as parameters, using asterisks. ...
 Function Palindrome, iterative
Write an C# iterative function to say whether a string is symmetric (a palindrome). For example, "RADAR" is a palindrome....
 Function Palindrome, recursive
Write a C# recursive function to say whether a string is symmetric (a palindrome). For example, "RADAR" is a palindrome....
 Function GetMinMax
Write a C# function named "GetMinMax", which will ask the user for a minimum value (a number) and a maximum value (another number). It should be calle...
 Function Multiply & MultiplyR
Write two C# functions, Multiply and MultiplyR, to calculate the product of two numbers using sums. T he first version must be iterative, and the seco...