ellapt

T12.2.TenLimitedIntNumbers

Jan 25th, 2013
41
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.47 KB | None | 0 0
  1. using System;
  2.  
  3. class TenLimitedIntNumbers
  4. {
  5. /* Write a method ReadNumber(int start, int end) that enters an integer number in given range [start…end].
  6. If an invalid number or non-number text is entered, the method should throw an exception.
  7. Using this method write a program that enters 10 numbers:
  8. a1, a2, … a10, such that 1 < a1 < … < a10 < 100 */
  9.  
  10. static int ReadNumber(int start, int end)
  11. {
  12. int number = 0;
  13. if (!int.TryParse(Console.ReadLine(), out number))
  14. {
  15. throw new FormatException("Not an integer!");
  16. }
  17. if (number <= start || number >= end)
  18. {
  19. throw new ArgumentOutOfRangeException(String.Format("Number out of range ({0}, {1}):", start, end));
  20. }
  21. return number;
  22. }
  23.  
  24. static void Main()
  25. {
  26. Console.WriteLine("Enter 10 int numbers such that 1 < a1 < … < a10 < 100 and method to check them");
  27. Console.WriteLine("and throw exception when invalid number or non-number text entered\n");
  28. int start = 1;
  29. int end = 100;
  30. int[] intNumbers = new int[10];
  31. int correct = 0;
  32. string numbersToPrint="";
  33. Console.WriteLine("\nEnter 10 integer numbers between:");
  34. for (int i = 0; i < 10; i++)
  35. {
  36. Console.WriteLine("{0} and {1}:", start, end);
  37. try
  38. {
  39. intNumbers[i] = ReadNumber(start, end);
  40. start = intNumbers[i];
  41. numbersToPrint=numbersToPrint+intNumbers[i]+" ";
  42. correct++;
  43. }
  44. catch (FormatException)
  45. {
  46. Console.WriteLine("Invalid number: Not an integer!");
  47. }
  48. catch (ArgumentOutOfRangeException orex)
  49. {
  50. Console.Error.WriteLine("Invalid number: " + orex.Message);
  51. }
  52. finally
  53. {
  54.  
  55. }
  56. }
  57. if (correct > 0)
  58. {
  59. Console.WriteLine("\nYou entered the following increasing numbers from 1 to 100:");
  60. Console.WriteLine(numbersToPrint);
  61. if (correct < 10)
  62. {
  63. Console.WriteLine("{0} inputs were wrong.", 10 - correct);
  64. }
  65. }
  66. else
  67. {
  68. Console.WriteLine("Sorry, no one input was correct!");
  69. }
  70. }
  71. }
Advertisement
Add Comment
Please, Sign In to add comment