.NET 2.x Random: случайный выбор чисел в диапазоне, и вводом - C#
Формулировка задачи:
RANDOM СЛУЧАЙНЫЙ ВЫБОР ЧИСЕЛ В ДИАПАЗОНЕ, И ВВОДОМ
Вот код
в котором ошибка N[myArray[j]]
где myArray[j] случайно подобранные не повторяющийся числа, что были введены , и хранятся в массиве
Ошибка находиться в static void RANDOM_NUMBER_2 (int[] N)
Кто нибудь знает как поправить N[myArray[j]] ?
Листинг программы
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.Text;
- namespace RANDOM_ASCII
- {
- class Program
- {
- static void Main(string[] args)
- {
- int exit = 1;
- string com = "";
- while (exit>0)
- {
- int number_start = 0, number_end = 0;
- Title_color("Случайный Выбор ASCII");
- Console.WriteLine("\t\t\tСлучайный Выбор\n\n");
- Console.WriteLine("Выберете вариант подбора (y/n).....");
- com = Console.ReadLine();
- if (com=="y" || com=="Y")
- {
- Console.WriteLine("Выберете начальную нумерацию....");
- number_start = Convert_to_int(Console.ReadLine());
- Console.WriteLine("Выберете конечную нумерацию....");
- number_end = Convert_to_int(Console.ReadLine());
- Console.WriteLine("Список номеров Подбора:....\n");
- spisok(number_start, number_end);
- Console.WriteLine("\n");
- Console.WriteLine("Список Случайного Подбора:....\n");
- RANDOM_NUMBER(number_start, number_end);
- }
- if (com=="n" || com=="N")
- {
- int counts = 0;
- Console.WriteLine("Введите количество случайных чисел.....");
- counts = Convert_to_int(Console.ReadLine());
- int[] mass = new int[counts];
- Console.WriteLine("\n");
- for (int i=0;i<mass.Length;i++)
- {
- Console.WriteLine("Введите "+i+ " ...");
- mass[i] = Convert_to_int(Console.ReadLine());
- Console.WriteLine("Номер: "+mass[i]+"\n");
- }
- RANDOM_NUMBER_2(mass);
- }
- else if (com != "y" || com != "Y" && com != "n" || com != "N")
- {
- Console.WriteLine("ОШИБКА НЕ ВЕРНО ВВЕДЕНА КОМАНДА ВЫБОРА......");
- }
- Console.ReadKey(true);
- }
- }
- static void spisok (int start,int end)
- {
- int couts = 0;
- couts = (end) - (start);
- for (int i= start; i<= end; i++)
- {
- Console.WriteLine("номера: "+i);
- }
- }
- static int Convert_to_int (string str)
- {
- int n = 0;
- try
- {
- n = Convert.ToInt32(str);
- }
- catch (Exception ex)
- {
- Console.WriteLine(ex.Message);
- }
- return n;
- }
- static void Title_color (string titles)
- {
- Console.BackgroundColor = ConsoleColor.DarkCyan;
- Console.Clear();
- Console.ForegroundColor = ConsoleColor.White;
- Console.Title = titles;
- }
- static void RANDOM_NUMBER_2 (int[] N)
- {
- ArrayList myArray = new ArrayList();
- Random ran = new Random();
- int k = 0;
- // добавление неповторяющихся элементов
- for (int i = 0; i < 100; i++)
- {
- int temp = ran.Next(N.Length);
- if (!myArray.Contains(temp))
- myArray.Add(temp);
- }
- for (int j = 0; j < myArray.Count; j++)
- {
- // Тут ошибка N[myArray[j]]
- Console.WriteLine("Символ " + j + " ASCII : " + "{0}", N[myArray[j]]); // Тут ошибка N[myArray[j]]
- }
- }
- static void RANDOM_NUMBER (int start,int end)
- {
- int couts = 0;
- int random0 = 0,random1=0;
- ArrayList myArray = new ArrayList();
- Random ran = new Random();
- if (end>start)
- {
- couts = (end) - (start);
- // добавление неповторяющихся элементов
- for (int i = 0; i < 100; i++)
- {
- int temp = ran.Next(start, end+1);
- if (!myArray.Contains(temp))
- myArray.Add(temp);
- }
- //foreach (int i in myArray)
- for (int j=0;j < myArray.Count;j++)
- {
- Console.WriteLine("Символ " + j + " ASCII : " + "{0}", myArray[j] );
- }
- }
- else
- {
- Console.WriteLine("ОШИБКА: начальную нумерацию > конечную нумерацию");
- }
- }
- }
- }
Решение задачи: «.NET 2.x Random: случайный выбор чисел в диапазоне, и вводом»
textual
Листинг программы
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.Text;
- namespace RANDOM_ASCII
- {
- class Program
- {
- static void Main(string[] args)
- {
- int exit = 1;
- string com = "";
- while (exit>0)
- {
- int number_start = 0, number_end = 0;
- Title_color("Случайный Выбор ASCII");
- Console.WriteLine("\t\t\tСлучайный Выбор\n\n");
- Console.WriteLine("Выберете вариант подбора (y/n).....");
- com = Console.ReadLine();
- if (com=="y" || com=="Y")
- {
- Console.WriteLine("Выберете начальную нумерацию....");
- number_start = Convert_to_int(Console.ReadLine());
- Console.WriteLine("Выберете конечную нумерацию....");
- number_end = Convert_to_int(Console.ReadLine());
- Console.WriteLine("Список номеров Подбора:....\n");
- spisok(number_start, number_end);
- Console.WriteLine("\n");
- Console.WriteLine("Список Случайного Подбора:....\n");
- RANDOM_NUMBER(number_start, number_end);
- }
- if (com=="n" || com=="N")
- {
- int counts = 0;
- Console.WriteLine("Введите количество случайных чисел.....");
- counts = Convert_to_int(Console.ReadLine());
- int[] mass = new int[counts];
- Console.WriteLine("\n");
- for (int i=0;i<mass.Length;i++)
- {
- Console.WriteLine("Введите "+i+ " ...");
- mass[i] = Convert_to_int(Console.ReadLine());
- Console.WriteLine("Номер: "+mass[i]+"\n");
- }
- Console.WriteLine("Список номеров Подбора:....\n");
- spisok2(mass);
- Console.WriteLine("\n");
- Console.WriteLine("Список Случайного Подбора:....\n");
- RANDOM_NUMBER_2(mass);
- }
- else if (com != "y" && com != "Y" && com != "n" && com != "N")
- {
- Console.WriteLine("ОШИБКА НЕ ВЕРНО ВВЕДЕНА КОМАНДА ВЫБОРА......");
- }
- Console.ReadKey(true);
- }
- }
- static int k_tmp { get; set; }
- static void spisok2(int[] mass)
- {
- int k = 0;
- for(int i=0;i<mass.Length;i++)
- {
- k = k + 1;
- Console.WriteLine(k + " номера: " + mass[i]);
- }
- k_tmp = k;
- }
- static void spisok (int start,int end)
- {
- int couts = 0;
- int k = 0;
- couts = (end) - (start);
- for (int i= start; i<= end; i++)
- {
- k = k + 1;
- Console.WriteLine(k+" номера: "+i);
- }
- k_tmp = k;
- }
- static int Convert_to_int (string str)
- {
- int n = 0;
- try
- {
- n = Convert.ToInt32(str);
- }
- catch (Exception ex)
- {
- Console.WriteLine(ex.Message);
- }
- return n;
- }
- static void Title_color (string titles)
- {
- Console.BackgroundColor = ConsoleColor.DarkCyan;
- Console.Clear();
- Console.ForegroundColor = ConsoleColor.White;
- Console.Title = titles;
- }
- static void RANDOM_NUMBER_2 (int[] N)
- {
- ArrayList myArray = new ArrayList();
- Random ran = new Random();
- int k = 0;
- // добавление неповторяющихся элементов
- for (int i = 0; i < 100; i++)
- {
- int temp = ran.Next(N.Length);
- if (!myArray.Contains(temp))
- myArray.Add(temp);
- }
- foreach (int i in myArray) //for (int j = 0; j < myArray.Count; j++)
- {
- k = k + 1;
- Console.WriteLine("Символ " + k + " ASCII : " + "{0}", N[i]);
- }
- Console.WriteLine("\nНе попали: " + (k_tmp - k));
- }
- static void RANDOM_NUMBER (int start,int end)
- {
- int couts = 0;
- int random0 = 0,random1=0;
- ArrayList myArray = new ArrayList();
- int k = 0;
- Random ran = new Random();
- if (end>start)
- {
- couts = (end) - (start);
- // добавление неповторяющихся элементов
- for (int i = 0; i < 100; i++)
- {
- int temp = ran.Next(start, end+1);
- if (!myArray.Contains(temp))
- myArray.Add(temp);
- }
- foreach (int i in myArray)
- //for (int j=0;j < myArray.Count;j++)
- {
- k = k+1;
- Console.WriteLine("Символ " + k + " ASCII : " + "{0}", i );
- }
- Console.WriteLine("\nНе попали: " + (k_tmp - k));
- }
- else
- {
- Console.WriteLine("ОШИБКА: начальную нумерацию > конечную нумерацию");
- }
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д