diff --git a/vs4win/Chapter04/WritingFunctions/Program.Functions.cs b/vs4win/Chapter04/WritingFunctions/Program.Functions.cs index 8f10cc6..4b27129 100644 --- a/vs4win/Chapter04/WritingFunctions/Program.Functions.cs +++ b/vs4win/Chapter04/WritingFunctions/Program.Functions.cs @@ -97,8 +97,8 @@ if (number < 0) { throw new ArgumentException(message: - "The factorial function is defined for non-negative integers only.", - paramName: "number"); + $"The factorial function is defined for non-negative integers only. Input: {number}", + paramName: nameof(number)); } else if (number == 0) { @@ -115,16 +115,20 @@ static void RunFactorial() { - for (int i = 1; i <= 14; i++) + for (int i = -2; i <= 14; i++) { try { WriteLine($"{i}! = {Factorial(i):N0}"); } - catch (System.OverflowException) + catch (OverflowException) { WriteLine($"{i}! is too big for a 32-bit integer."); } + catch (Exception ex) + { + WriteLine($"{ex.GetType()}: {ex.Message}."); + } } } diff --git a/vscode/Chapter04/WritingFunctions/Program.Functions.cs b/vscode/Chapter04/WritingFunctions/Program.Functions.cs index 8f10cc6..4b27129 100644 --- a/vscode/Chapter04/WritingFunctions/Program.Functions.cs +++ b/vscode/Chapter04/WritingFunctions/Program.Functions.cs @@ -97,8 +97,8 @@ if (number < 0) { throw new ArgumentException(message: - "The factorial function is defined for non-negative integers only.", - paramName: "number"); + $"The factorial function is defined for non-negative integers only. Input: {number}", + paramName: nameof(number)); } else if (number == 0) { @@ -115,16 +115,20 @@ static void RunFactorial() { - for (int i = 1; i <= 14; i++) + for (int i = -2; i <= 14; i++) { try { WriteLine($"{i}! = {Factorial(i):N0}"); } - catch (System.OverflowException) + catch (OverflowException) { WriteLine($"{i}! is too big for a 32-bit integer."); } + catch (Exception ex) + { + WriteLine($"{ex.GetType()}: {ex.Message}."); + } } }