Дополнить приложение кодом формирования псевдослучайной последовательности - C#
Формулировка задачи:
Дополнить приложение таким образом, чтобы имелась возможность формирования исходной числовой последовательности состоящих из чисел сформированных генератором случайных чисел.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace практ_задание__3_1 { class Exceptions { public bool pr; public Exceptions(string[] xp) { pr = true; try { for (int i = 0; i < xp.Length; i++) { if (double.Parse(xp[i]) % 1 == 0) pr = true; else { pr = false; break; } } } catch { Exception error = new Exception("Введенные данные не являются типами Integer или Double!!!"); throw error; } } public static int getSumNumbers(int[] numbers) { int sum = 0; for (int i = 0; i < numbers.Length; i++) { sum += numbers[i]; } return sum; } public static double getSumNumbers(double[] numbers) { double sum = 0; for (int i = 0; i < numbers.Length; i++) { sum += numbers[i]; } return sum; } public static int getSrednNumbers(int[] numbers) { int sred = 0; for (int i = 0; i < numbers.Length; i++) { sred += numbers[i]; } return sred / numbers.Length; } public static double getSrednNumbers(double[] numbers) { double sred = 0; for (int i = 0; i < numbers.Length; i++) { sred += numbers[i]; } return sred / numbers.Length; } public static int getMinNumbers(int[] numbers) { int min = numbers[0]; for (int i = 0; i < numbers.Length; i++) { if (min > numbers[i]) min = numbers[i]; } return min; } public static double getMinNumbers(double[] numbers) { double min = numbers[0]; for (int i = 0; i < numbers.Length; i++) { if (min > numbers[i]) min = numbers[i]; } return min; } public static int getMaxNumbers(int[] numbers) { int max = numbers[0]; for (int i = 0; i < numbers.Length; i++) { if (max < numbers[i]) max = numbers[i]; } return max; } public static double getMaxNumbers(double[] numbers) { double max = numbers[0]; for (int i = 0; i < numbers.Length; i++) { if (max < numbers[i]) max = numbers[i]; } return max; } public static int getProizNumbers(int[] numbers) { int pr = 1; for (int i = 0; i < numbers.Length; i++) { pr *= numbers[i]; } return pr; } public static double getProizNumbers(double[] numbers) { double pr = 1; for (int i = 0; i < numbers.Length; i++) { pr *= numbers[i]; } return pr; } } class Program { static void Main(string[] args) { string[] str = null; if (args.Length != 0) { Console.WriteLine("Введенная последовательность чисел: " + args.ToString()); str = args; } else if (args.Length == 0) { Console.WriteLine("Введите последовательность чисел через пробел: "); str = Console.ReadLine().Split(' '); } int[] mas = new int[str.Length]; double[] mass = new double[str.Length]; try { Exceptions ex = new Exceptions(str); bool pr = ex.pr; if (pr == false) { for (int i = 0; i < str.Length; i++) { mass[i] = double.Parse(str[i]); } Console.WriteLine("Сумма чисел = " + Exceptions.getSumNumbers(mass)); Console.WriteLine("Произведение чисел = " + Exceptions.getProizNumbers(mass)); Console.WriteLine("Минимальное число = " + Exceptions.getMinNumbers(mass)); Console.WriteLine("Максимальное число = " + Exceptions.getMaxNumbers(mass)); Console.WriteLine("Среднее значение = " + Exceptions.getSrednNumbers(mass)); } else { for (int i = 0; i < str.Length; i++) { mas[i] = int.Parse(str[i]); } Console.WriteLine("Сумма чисел = " + Exceptions.getSumNumbers(mas)); Console.WriteLine("Произведение чисел = " + Exceptions.getProizNumbers(mas)); Console.WriteLine("Минимальное число = " + Exceptions.getMinNumbers(mas)); Console.WriteLine("Максимальное число = " + Exceptions.getMaxNumbers(mas)); Console.WriteLine("Среднее значение = " + Exceptions.getSrednNumbers(mas)); } } catch (Exception err) { Console.WriteLine(err.Message); } Console.ReadKey(); } } }
Решение задачи: «Дополнить приложение кодом формирования псевдослучайной последовательности»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace практ_задание__3_1 { class Exceptions { public bool pr; public Exceptions(string[] xp) { pr = true; try { for (int i = 0; i < xp.Length; i++) { if (double.Parse(xp[i]) % 1 == 0) pr = true; else { pr = false; break; } } } catch { Exception error = new Exception("Введенные данные не являются типами Integer или Double!!!"); throw error; } } public static int getSumNumbers(int[] numbers) { int sum = 0; for (int i = 0; i < numbers.Length; i++) { sum += numbers[i]; } return sum; } public static double getSumNumbers(double[] numbers) { double sum = 0; for (int i = 0; i < numbers.Length; i++) { sum += numbers[i]; } return sum; } public static int getSrednNumbers(int[] numbers) { int sred = 0; for (int i = 0; i < numbers.Length; i++) { sred += numbers[i]; } return sred / numbers.Length; } public static double getSrednNumbers(double[] numbers) { double sred = 0; for (int i = 0; i < numbers.Length; i++) { sred += numbers[i]; } return sred / numbers.Length; } public static int getMinNumbers(int[] numbers) { int min = numbers[0]; for (int i = 0; i < numbers.Length; i++) { if (min > numbers[i]) min = numbers[i]; } return min; } public static double getMinNumbers(double[] numbers) { double min = numbers[0]; for (int i = 0; i < numbers.Length; i++) { if (min > numbers[i]) min = numbers[i]; } return min; } public static int getMaxNumbers(int[] numbers) { int max = numbers[0]; for (int i = 0; i < numbers.Length; i++) { if (max < numbers[i]) max = numbers[i]; } return max; } public static double getMaxNumbers(double[] numbers) { double max = numbers[0]; for (int i = 0; i < numbers.Length; i++) { if (max < numbers[i]) max = numbers[i]; } return max; } public static int getProizNumbers(int[] numbers) { int pr = 1; for (int i = 0; i < numbers.Length; i++) { pr *= numbers[i]; } return pr; } public static double getProizNumbers(double[] numbers) { double pr = 1; for (int i = 0; i < numbers.Length; i++) { pr *= numbers[i]; } return pr; } } class Program { static void Main(string[] args) { int ch; do { Console.WriteLine("Способ ввода:\n1.Рандом\n2.Вручную"); ch = int.Parse(Console.ReadLine()); } while (ch != 1 && ch != 2); bool b = (ch == 1 ? false : true); string[] str = null; if (b) { if (args.Length != 0) { Console.WriteLine("Введенная последовательность чисел: " + args.ToString()); str = args; } else if (args.Length == 0) { Console.WriteLine("Введите последовательность чисел через пробел: "); str = Console.ReadLine().Split(' '); } } else { if (args.Length != 0) { Console.WriteLine("Введенная последовательность чисел: " + args.ToString()); str = args; } else if (args.Length == 0) { Random rnd = new Random(); Console.Write("Количество чисел: "); int st = int.Parse(Console.ReadLine()); int type; do { Console.WriteLine("Тип:\n1.Integer\n2.Double"); type = int.Parse(Console.ReadLine()); } while (type != 1 && type != 2); if (type == 1) { str = Enumerable.Range(0, st).Select(v => rnd.Next(0, 100).ToString()).ToArray(); Console.Write($"Последовательность: {String.Join(" ", str)}\n"); } else { str = Enumerable.Range(0, st).Select(v => (1 + (100 - 1) * rnd.NextDouble()).ToString()).ToArray(); Console.Write($"Последовательность: {String.Join(" ", str)}\n"); } } } int[] mas = new int[str.Length]; double[] mass = new double[str.Length]; try { Exceptions ex = new Exceptions(str); bool pr = ex.pr; if (pr == false) { for (int i = 0; i < str.Length; i++) { mass[i] = double.Parse(str[i]); } Console.WriteLine("Сумма чисел = " + Exceptions.getSumNumbers(mass)); Console.WriteLine("Произведение чисел = " + Exceptions.getProizNumbers(mass)); Console.WriteLine("Минимальное число = " + Exceptions.getMinNumbers(mass)); Console.WriteLine("Максимальное число = " + Exceptions.getMaxNumbers(mass)); Console.WriteLine("Среднее значение = " + Exceptions.getSrednNumbers(mass)); } else { for (int i = 0; i < str.Length; i++) { mas[i] = int.Parse(str[i]); } Console.WriteLine("Сумма чисел = " + Exceptions.getSumNumbers(mas)); Console.WriteLine("Произведение чисел = " + Exceptions.getProizNumbers(mas)); Console.WriteLine("Минимальное число = " + Exceptions.getMinNumbers(mas)); Console.WriteLine("Максимальное число = " + Exceptions.getMaxNumbers(mas)); Console.WriteLine("Среднее значение = " + Exceptions.getSrednNumbers(mas)); } } catch (Exception err) { Console.WriteLine(err.Message); } Console.ReadKey(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д