Дополнить приложение кодом формирования псевдослучайной последовательности - C#

Узнай цену своей работы

Формулировка задачи:

Дополнить приложение таким образом, чтобы имелась возможность формирования исходной числовой последовательности состоящих из чисел сформированных генератором случайных чисел.
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace практ_задание__3_1
  7. {
  8. class Exceptions
  9. {
  10. public bool pr;
  11. public Exceptions(string[] xp)
  12. {
  13. pr = true;
  14. try
  15. {
  16. for (int i = 0; i < xp.Length; i++)
  17. {
  18. if (double.Parse(xp[i]) % 1 == 0)
  19. pr = true;
  20. else
  21. { pr = false; break; }
  22. }
  23. }
  24. catch
  25. {
  26. Exception error = new Exception("Введенные данные не являются типами Integer или Double!!!");
  27. throw error;
  28. }
  29. }
  30. public static int getSumNumbers(int[] numbers)
  31. {
  32. int sum = 0;
  33. for (int i = 0; i < numbers.Length; i++)
  34. {
  35. sum += numbers[i];
  36. }
  37. return sum;
  38. }
  39. public static double getSumNumbers(double[] numbers)
  40. {
  41. double sum = 0;
  42. for (int i = 0; i < numbers.Length; i++)
  43. {
  44. sum += numbers[i];
  45. }
  46. return sum;
  47. }
  48. public static int getSrednNumbers(int[] numbers)
  49. {
  50. int sred = 0;
  51. for (int i = 0; i < numbers.Length; i++)
  52. {
  53. sred += numbers[i];
  54. }
  55. return sred / numbers.Length;
  56. }
  57. public static double getSrednNumbers(double[] numbers)
  58. {
  59. double sred = 0;
  60. for (int i = 0; i < numbers.Length; i++)
  61. {
  62. sred += numbers[i];
  63. }
  64. return sred / numbers.Length;
  65. }
  66. public static int getMinNumbers(int[] numbers)
  67. {
  68. int min = numbers[0];
  69. for (int i = 0; i < numbers.Length; i++)
  70. {
  71. if (min > numbers[i]) min = numbers[i];
  72. }
  73. return min;
  74. }
  75. public static double getMinNumbers(double[] numbers)
  76. {
  77. double min = numbers[0];
  78. for (int i = 0; i < numbers.Length; i++)
  79. {
  80. if (min > numbers[i]) min = numbers[i];
  81. }
  82. return min;
  83. }
  84. public static int getMaxNumbers(int[] numbers)
  85. {
  86. int max = numbers[0];
  87. for (int i = 0; i < numbers.Length; i++)
  88. {
  89. if (max < numbers[i]) max = numbers[i];
  90. }
  91. return max;
  92. }
  93. public static double getMaxNumbers(double[] numbers)
  94. {
  95. double max = numbers[0];
  96. for (int i = 0; i < numbers.Length; i++)
  97. {
  98. if (max < numbers[i]) max = numbers[i];
  99. }
  100. return max;
  101. }
  102. public static int getProizNumbers(int[] numbers)
  103. {
  104. int pr = 1;
  105. for (int i = 0; i < numbers.Length; i++)
  106. {
  107. pr *= numbers[i];
  108. }
  109. return pr;
  110. }
  111. public static double getProizNumbers(double[] numbers)
  112. {
  113. double pr = 1;
  114. for (int i = 0; i < numbers.Length; i++)
  115. {
  116. pr *= numbers[i];
  117. }
  118. return pr;
  119. }
  120. }
  121. class Program
  122. {
  123. static void Main(string[] args)
  124. {
  125. string[] str = null;
  126. if (args.Length != 0)
  127. {
  128. Console.WriteLine("Введенная последовательность чисел: " + args.ToString());
  129. str = args;
  130. }
  131. else
  132. if (args.Length == 0)
  133. {
  134. Console.WriteLine("Введите последовательность чисел через пробел: ");
  135. str = Console.ReadLine().Split(' ');
  136. }
  137. int[] mas = new int[str.Length];
  138. double[] mass = new double[str.Length];
  139. try
  140. {
  141. Exceptions ex = new Exceptions(str);
  142. bool pr = ex.pr;
  143. if (pr == false)
  144. {
  145. for (int i = 0; i < str.Length; i++)
  146. {
  147. mass[i] = double.Parse(str[i]);
  148. }
  149. Console.WriteLine("Сумма чисел = " + Exceptions.getSumNumbers(mass));
  150. Console.WriteLine("Произведение чисел = " + Exceptions.getProizNumbers(mass));
  151. Console.WriteLine("Минимальное число = " + Exceptions.getMinNumbers(mass));
  152. Console.WriteLine("Максимальное число = " + Exceptions.getMaxNumbers(mass));
  153. Console.WriteLine("Среднее значение = " + Exceptions.getSrednNumbers(mass));
  154. }
  155. else
  156. {
  157. for (int i = 0; i < str.Length; i++)
  158. {
  159. mas[i] = int.Parse(str[i]);
  160. }
  161. Console.WriteLine("Сумма чисел = " + Exceptions.getSumNumbers(mas));
  162. Console.WriteLine("Произведение чисел = " + Exceptions.getProizNumbers(mas));
  163. Console.WriteLine("Минимальное число = " + Exceptions.getMinNumbers(mas));
  164. Console.WriteLine("Максимальное число = " + Exceptions.getMaxNumbers(mas));
  165. Console.WriteLine("Среднее значение = " + Exceptions.getSrednNumbers(mas));
  166. }
  167. }
  168. catch (Exception err)
  169. {
  170. Console.WriteLine(err.Message);
  171. }
  172. Console.ReadKey();
  173. }
  174. }
  175. }

Решение задачи: «Дополнить приложение кодом формирования псевдослучайной последовательности»

textual
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace практ_задание__3_1
  8. {
  9.     class Exceptions
  10.     {
  11.         public bool pr;
  12.         public Exceptions(string[] xp)
  13.         {
  14.             pr = true;
  15.             try
  16.             {
  17.                 for (int i = 0; i < xp.Length; i++)
  18.                 {
  19.                     if (double.Parse(xp[i]) % 1 == 0)
  20.                         pr = true;
  21.                     else
  22.                     { pr = false; break; }
  23.                 }
  24.             }
  25.             catch
  26.             {
  27.                 Exception error = new Exception("Введенные данные не являются типами Integer или Double!!!");
  28.                 throw error;
  29.             }
  30.         }
  31.  
  32.         public static int getSumNumbers(int[] numbers)
  33.         {
  34.             int sum = 0;
  35.             for (int i = 0; i < numbers.Length; i++)
  36.             {
  37.                 sum += numbers[i];
  38.             }
  39.             return sum;
  40.         }
  41.  
  42.         public static double getSumNumbers(double[] numbers)
  43.         {
  44.             double sum = 0;
  45.             for (int i = 0; i < numbers.Length; i++)
  46.             {
  47.                 sum += numbers[i];
  48.             }
  49.             return sum;
  50.         }
  51.  
  52.         public static int getSrednNumbers(int[] numbers)
  53.         {
  54.             int sred = 0;
  55.             for (int i = 0; i < numbers.Length; i++)
  56.             {
  57.                 sred += numbers[i];
  58.             }
  59.             return sred / numbers.Length;
  60.         }
  61.  
  62.         public static double getSrednNumbers(double[] numbers)
  63.         {
  64.             double sred = 0;
  65.             for (int i = 0; i < numbers.Length; i++)
  66.             {
  67.                 sred += numbers[i];
  68.             }
  69.             return sred / numbers.Length;
  70.         }
  71.  
  72.         public static int getMinNumbers(int[] numbers)
  73.         {
  74.             int min = numbers[0];
  75.             for (int i = 0; i < numbers.Length; i++)
  76.             {
  77.                 if (min > numbers[i]) min = numbers[i];
  78.             }
  79.             return min;
  80.         }
  81.  
  82.         public static double getMinNumbers(double[] numbers)
  83.         {
  84.             double min = numbers[0];
  85.             for (int i = 0; i < numbers.Length; i++)
  86.             {
  87.                 if (min > numbers[i]) min = numbers[i];
  88.             }
  89.             return min;
  90.         }
  91.  
  92.         public static int getMaxNumbers(int[] numbers)
  93.         {
  94.             int max = numbers[0];
  95.             for (int i = 0; i < numbers.Length; i++)
  96.             {
  97.                 if (max < numbers[i]) max = numbers[i];
  98.             }
  99.             return max;
  100.         }
  101.  
  102.         public static double getMaxNumbers(double[] numbers)
  103.         {
  104.             double max = numbers[0];
  105.             for (int i = 0; i < numbers.Length; i++)
  106.             {
  107.                 if (max < numbers[i]) max = numbers[i];
  108.             }
  109.             return max;
  110.         }
  111.  
  112.         public static int getProizNumbers(int[] numbers)
  113.         {
  114.             int pr = 1;
  115.             for (int i = 0; i < numbers.Length; i++)
  116.             {
  117.                 pr *= numbers[i];
  118.             }
  119.             return pr;
  120.         }
  121.  
  122.         public static double getProizNumbers(double[] numbers)
  123.         {
  124.             double pr = 1;
  125.             for (int i = 0; i < numbers.Length; i++)
  126.             {
  127.                 pr *= numbers[i];
  128.             }
  129.             return pr;
  130.         }
  131.     }
  132.  
  133.     class Program
  134.     {
  135.         static void Main(string[] args)
  136.         {
  137.             int ch;
  138.             do
  139.             {
  140.                 Console.WriteLine("Способ ввода:\n1.Рандом\n2.Вручную");
  141.                 ch = int.Parse(Console.ReadLine());
  142.             } while (ch != 1 && ch != 2);
  143.             bool b = (ch == 1 ? false : true);
  144.             string[] str = null;
  145.             if (b)
  146.             {
  147.                 if (args.Length != 0)
  148.                 {
  149.                     Console.WriteLine("Введенная последовательность чисел: " + args.ToString());
  150.                     str = args;
  151.                 }
  152.                 else
  153.                     if (args.Length == 0)
  154.                 {
  155.                     Console.WriteLine("Введите последовательность чисел через пробел: ");
  156.                     str = Console.ReadLine().Split(' ');
  157.                 }
  158.             } else
  159.             {
  160.                 if (args.Length != 0)
  161.                 {
  162.                     Console.WriteLine("Введенная последовательность чисел: " + args.ToString());
  163.                     str = args;
  164.                 }
  165.                 else
  166.                     if (args.Length == 0)
  167.                 {
  168.                     Random rnd = new Random();
  169.                     Console.Write("Количество чисел: "); int st = int.Parse(Console.ReadLine());
  170.                     int type;
  171.                     do
  172.                     {
  173.                         Console.WriteLine("Тип:\n1.Integer\n2.Double");
  174.                         type = int.Parse(Console.ReadLine());
  175.                     } while (type != 1 && type != 2);
  176.                     if (type == 1)
  177.                     {
  178.                         str = Enumerable.Range(0, st).Select(v => rnd.Next(0, 100).ToString()).ToArray();
  179.                         Console.Write($"Последовательность: {String.Join(" ", str)}\n");
  180.                     }
  181.                     else
  182.                     {
  183.                         str = Enumerable.Range(0, st).Select(v => (1 + (100 - 1) * rnd.NextDouble()).ToString()).ToArray();
  184.                         Console.Write($"Последовательность: {String.Join(" ", str)}\n");
  185.                     }
  186.  
  187.                 }
  188.             }
  189.             int[] mas = new int[str.Length];
  190.             double[] mass = new double[str.Length];
  191.             try
  192.             {
  193.                 Exceptions ex = new Exceptions(str);
  194.                 bool pr = ex.pr;
  195.                 if (pr == false)
  196.                 {
  197.                     for (int i = 0; i < str.Length; i++)
  198.                     {
  199.                         mass[i] = double.Parse(str[i]);
  200.                     }
  201.                     Console.WriteLine("Сумма чисел = " + Exceptions.getSumNumbers(mass));
  202.                     Console.WriteLine("Произведение чисел = " + Exceptions.getProizNumbers(mass));
  203.                     Console.WriteLine("Минимальное число = " + Exceptions.getMinNumbers(mass));
  204.                     Console.WriteLine("Максимальное число = " + Exceptions.getMaxNumbers(mass));
  205.                     Console.WriteLine("Среднее значение = " + Exceptions.getSrednNumbers(mass));
  206.                 }
  207.                 else
  208.                 {
  209.                     for (int i = 0; i < str.Length; i++)
  210.                     {
  211.                         mas[i] = int.Parse(str[i]);
  212.                     }
  213.                     Console.WriteLine("Сумма чисел = " + Exceptions.getSumNumbers(mas));
  214.                     Console.WriteLine("Произведение чисел = " + Exceptions.getProizNumbers(mas));
  215.                     Console.WriteLine("Минимальное число = " + Exceptions.getMinNumbers(mas));
  216.                     Console.WriteLine("Максимальное число = " + Exceptions.getMaxNumbers(mas));
  217.                     Console.WriteLine("Среднее значение = " + Exceptions.getSrednNumbers(mas));
  218.                 }
  219.             }
  220.             catch (Exception err)
  221.             {
  222.                 Console.WriteLine(err.Message);
  223.             }
  224.             Console.ReadKey();
  225.         }
  226.     }
  227. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.857 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы