Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,884 questions

51,810 answers

573 users

How to use recursive function in class with C#

1 Answer

0 votes
using System;
 
namespace Class_Recursive
{
    class CRecursive
    {
        public decimal RecursiveFib(decimal num) {
            if (num <= 2) {
                return 1;
            }
            else {
                return RecursiveFib(num - 1) + RecursiveFib(num - 2);
            }
        }
        public int RecursiveFact(int n) {
            if (n == 0) {
                return 1;
            }
            return n * RecursiveFact(n - 1);
        }
        public int RecursiveCountDigits(int n) {
            if (n == 0) {
                return 0;
            }
            return (1 + RecursiveCountDigits(n / 10));
        }
        public decimal IterationFib(decimal num) {
            int num1 = 0;
            int num2 = 1;
 
            if (num <= 2) {
                return 1;
            }
            for (int i = 1; i < num; i++) {
                int tmp = num1;
                num1 = num2;
                num2 = tmp+num2;
            }
            return num2;
        }
    }
    class Class1
    {
        static void Main(string[] args)
        {
            CRecursive cr = new CRecursive();
 
            Console.WriteLine("RecursiveFact 5: " + cr.RecursiveFact(5)); 
            
            Console.WriteLine("RecursiveCountDigits 123456: " + cr.RecursiveCountDigits(123456));

            Console.WriteLine("RecursiveFib 20: " + cr.RecursiveFib(20)); 
 
            Console.WriteLine("IterationFib 20: " + cr.IterationFib(20)); 
        }
    }
}


 
/*
run:
 
RecursiveFact 5: 120
RecursiveCountDigits 123456: 6
RecursiveFib 20: 6765
IterationFib 20: 6765
 
*/


answered Jul 17, 2014 by avibootz
edited Apr 6, 2025 by avibootz
...