Recursion - Return 1 versus Return Variable
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace SoloLearn { class Program { static int Fact(int num) { if (num == 1) { return 1; } return num * Fact(num - 1); } static void Main(string[] args) { Console.WriteLine(Fact(6)); } } } I understand that return 1; is the exit for the recursion. static int Fact(int num) { if (num == 1) { return 1; I don't understand how using 1 returns the value of num to the caller. Wouldn't it make more sense to return num explicitly like below? static int Fact(int num) { if (num == 1) { return num;