.NET 2.x Random: случайный выбор чисел в диапазоне, и вводом - C#

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

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

RANDOM СЛУЧАЙНЫЙ ВЫБОР ЧИСЕЛ В ДИАПАЗОНЕ, И ВВОДОМ Вот код в котором ошибка N[myArray[j]] где myArray[j] случайно подобранные не повторяющийся числа, что были введены , и хранятся в массиве Ошибка находиться в static void RANDOM_NUMBER_2 (int[] N)
Листинг программы
  1. using System;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using System.Text;
  5. namespace RANDOM_ASCII
  6. {
  7. class Program
  8. {
  9. static void Main(string[] args)
  10. {
  11. int exit = 1;
  12. string com = "";
  13. while (exit>0)
  14. {
  15. int number_start = 0, number_end = 0;
  16. Title_color("Случайный Выбор ASCII");
  17. Console.WriteLine("\t\t\tСлучайный Выбор\n\n");
  18. Console.WriteLine("Выберете вариант подбора (y/n).....");
  19. com = Console.ReadLine();
  20. if (com=="y" || com=="Y")
  21. {
  22. Console.WriteLine("Выберете начальную нумерацию....");
  23. number_start = Convert_to_int(Console.ReadLine());
  24. Console.WriteLine("Выберете конечную нумерацию....");
  25. number_end = Convert_to_int(Console.ReadLine());
  26. Console.WriteLine("Список номеров Подбора:....\n");
  27. spisok(number_start, number_end);
  28. Console.WriteLine("\n");
  29. Console.WriteLine("Список Случайного Подбора:....\n");
  30. RANDOM_NUMBER(number_start, number_end);
  31. }
  32. if (com=="n" || com=="N")
  33. {
  34. int counts = 0;
  35. Console.WriteLine("Введите количество случайных чисел.....");
  36. counts = Convert_to_int(Console.ReadLine());
  37. int[] mass = new int[counts];
  38. Console.WriteLine("\n");
  39. for (int i=0;i<mass.Length;i++)
  40. {
  41. Console.WriteLine("Введите "+i+ " ...");
  42. mass[i] = Convert_to_int(Console.ReadLine());
  43. Console.WriteLine("Номер: "+mass[i]+"\n");
  44. }
  45. RANDOM_NUMBER_2(mass);
  46. }
  47. else if (com != "y" || com != "Y" && com != "n" || com != "N")
  48. {
  49. Console.WriteLine("ОШИБКА НЕ ВЕРНО ВВЕДЕНА КОМАНДА ВЫБОРА......");
  50. }
  51. Console.ReadKey(true);
  52. }
  53. }
  54. static void spisok (int start,int end)
  55. {
  56. int couts = 0;
  57. couts = (end) - (start);
  58. for (int i= start; i<= end; i++)
  59. {
  60. Console.WriteLine("номера: "+i);
  61. }
  62. }
  63. static int Convert_to_int (string str)
  64. {
  65. int n = 0;
  66. try
  67. {
  68. n = Convert.ToInt32(str);
  69. }
  70. catch (Exception ex)
  71. {
  72. Console.WriteLine(ex.Message);
  73. }
  74. return n;
  75. }
  76. static void Title_color (string titles)
  77. {
  78. Console.BackgroundColor = ConsoleColor.DarkCyan;
  79. Console.Clear();
  80. Console.ForegroundColor = ConsoleColor.White;
  81. Console.Title = titles;
  82. }
  83. static void RANDOM_NUMBER_2 (int[] N)
  84. {
  85. ArrayList myArray = new ArrayList();
  86. Random ran = new Random();
  87. int k = 0;
  88. // добавление неповторяющихся элементов
  89. for (int i = 0; i < 100; i++)
  90. {
  91. int temp = ran.Next(N.Length);
  92. if (!myArray.Contains(temp))
  93. myArray.Add(temp);
  94. }
  95. for (int j = 0; j < myArray.Count; j++)
  96. {
  97. // Тут ошибка N[myArray[j]]
  98. Console.WriteLine("Символ " + j + " ASCII : " + "{0}", N[myArray[j]]); // Тут ошибка N[myArray[j]]
  99. }
  100.  
  101. }
  102. static void RANDOM_NUMBER (int start,int end)
  103. {
  104. int couts = 0;
  105. int random0 = 0,random1=0;
  106. ArrayList myArray = new ArrayList();
  107. Random ran = new Random();
  108. if (end>start)
  109. {
  110. couts = (end) - (start);
  111. // добавление неповторяющихся элементов
  112. for (int i = 0; i < 100; i++)
  113. {
  114. int temp = ran.Next(start, end+1);
  115. if (!myArray.Contains(temp))
  116. myArray.Add(temp);
  117. }
  118. //foreach (int i in myArray)
  119. for (int j=0;j < myArray.Count;j++)
  120. {
  121. Console.WriteLine("Символ " + j + " ASCII : " + "{0}", myArray[j] );
  122. }
  123.  
  124. }
  125. else
  126. {
  127. Console.WriteLine("ОШИБКА: начальную нумерацию > конечную нумерацию");
  128. }
  129. }
  130. }
  131. }
Кто нибудь знает как поправить N[myArray[j]] ?

Решение задачи: «.NET 2.x Random: случайный выбор чисел в диапазоне, и вводом»

textual
Листинг программы
  1. using System;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using System.Text;
  5.  
  6. namespace RANDOM_ASCII
  7. {
  8.     class Program
  9.     {
  10.         static void Main(string[] args)
  11.         {
  12.             int exit = 1;
  13.             string com = "";
  14.             while (exit>0)
  15.                 {
  16.                 int number_start = 0, number_end = 0;
  17.                
  18.                 Title_color("Случайный Выбор ASCII");
  19.                 Console.WriteLine("\t\t\tСлучайный Выбор\n\n");
  20.                 Console.WriteLine("Выберете вариант подбора (y/n).....");
  21.                 com = Console.ReadLine();
  22.                 if (com=="y" || com=="Y")
  23.                 {
  24.                     Console.WriteLine("Выберете начальную нумерацию....");
  25.                     number_start = Convert_to_int(Console.ReadLine());
  26.                     Console.WriteLine("Выберете конечную нумерацию....");
  27.                     number_end = Convert_to_int(Console.ReadLine());
  28.  
  29.                     Console.WriteLine("Список номеров Подбора:....\n");
  30.                     spisok(number_start, number_end);
  31.                     Console.WriteLine("\n");
  32.                     Console.WriteLine("Список Случайного Подбора:....\n");
  33.                     RANDOM_NUMBER(number_start, number_end);
  34.                 }
  35.                
  36.                 if (com=="n" || com=="N")
  37.                 {
  38.                     int counts = 0;
  39.                     Console.WriteLine("Введите количество случайных чисел.....");
  40.                     counts = Convert_to_int(Console.ReadLine());
  41.                     int[] mass = new int[counts];
  42.                     Console.WriteLine("\n");
  43.                     for (int i=0;i<mass.Length;i++)
  44.                     {
  45.                         Console.WriteLine("Введите "+i+ " ...");
  46.                         mass[i] = Convert_to_int(Console.ReadLine());
  47.                         Console.WriteLine("Номер: "+mass[i]+"\n");
  48.                     }
  49.                     Console.WriteLine("Список номеров Подбора:....\n");
  50.                     spisok2(mass);
  51.                     Console.WriteLine("\n");
  52.  
  53.                     Console.WriteLine("Список Случайного Подбора:....\n");
  54.                     RANDOM_NUMBER_2(mass);
  55.                    
  56.                 }
  57.                 else  if (com != "y" && com != "Y" && com != "n" && com != "N")
  58.                 {
  59.                     Console.WriteLine("ОШИБКА НЕ ВЕРНО ВВЕДЕНА КОМАНДА ВЫБОРА......");
  60.                 }
  61.                 Console.ReadKey(true);
  62.             }
  63.            
  64.         }
  65.  
  66.         static int k_tmp { get; set; }
  67.         static void spisok2(int[] mass)
  68.         {
  69.             int k = 0;
  70.             for(int i=0;i<mass.Length;i++)
  71.             {
  72.                 k = k + 1;
  73.                 Console.WriteLine(k + " номера: " + mass[i]);
  74.             }
  75.             k_tmp = k;
  76.         }
  77.  
  78.         static void spisok (int start,int end)
  79.         {
  80.             int couts = 0;
  81.             int k = 0;
  82.             couts = (end) - (start);
  83.             for (int i= start; i<= end; i++)
  84.             {
  85.                 k = k + 1;
  86.                 Console.WriteLine(k+" номера: "+i);
  87.             }
  88.             k_tmp = k;
  89.         }
  90.  
  91.         static int Convert_to_int (string str)
  92.         {
  93.            
  94.             int n = 0;
  95.             try
  96.             {
  97.                 n = Convert.ToInt32(str);
  98.             }
  99.             catch (Exception ex)
  100.             {
  101.                 Console.WriteLine(ex.Message);
  102.             }
  103.             return n;
  104.         }
  105.  
  106.         static void Title_color (string titles)
  107.         {
  108.             Console.BackgroundColor = ConsoleColor.DarkCyan;
  109.             Console.Clear();
  110.             Console.ForegroundColor = ConsoleColor.White;
  111.             Console.Title = titles;
  112.         }
  113.  
  114.         static void RANDOM_NUMBER_2 (int[] N)
  115.         {
  116.             ArrayList myArray = new ArrayList();
  117.             Random ran = new Random();
  118.             int k = 0;
  119.             // добавление неповторяющихся элементов
  120.             for (int i = 0; i < 100; i++)
  121.             {
  122.                
  123.                     int temp = ran.Next(N.Length);
  124.                     if (!myArray.Contains(temp))
  125.                         myArray.Add(temp);
  126.                
  127.             }
  128.             foreach (int i in myArray) //for (int j = 0; j < myArray.Count; j++)
  129.             {
  130.                 k = k + 1;
  131.                 Console.WriteLine("Символ " + k + " ASCII : " + "{0}", N[i]);
  132.             }
  133.             Console.WriteLine("\nНе попали: " + (k_tmp - k));
  134.  
  135.         }
  136.  
  137.         static void RANDOM_NUMBER (int start,int end)
  138.         {
  139.             int couts = 0;
  140.             int random0 = 0,random1=0;
  141.             ArrayList myArray = new ArrayList();
  142.             int k = 0;
  143.             Random ran = new Random();
  144.             if (end>start)
  145.             {
  146.                 couts = (end) - (start);
  147.  
  148.                 // добавление неповторяющихся элементов
  149.                 for (int i = 0; i < 100; i++)
  150.                 {
  151.                     int temp = ran.Next(start, end+1);
  152.                     if (!myArray.Contains(temp))
  153.                         myArray.Add(temp);
  154.                 }
  155.                 foreach (int i in myArray)
  156.                 //for (int j=0;j < myArray.Count;j++)
  157.                 {
  158.                     k = k+1;
  159.                     Console.WriteLine("Символ " + k + " ASCII : " + "{0}", i );
  160.                 }
  161.                 Console.WriteLine("\nНе попали: " + (k_tmp - k));
  162.  
  163.  
  164.  
  165.             }
  166.             else
  167.             {
  168.                 Console.WriteLine("ОШИБКА: начальную нумерацию > конечную нумерацию");
  169.             }          
  170.            
  171.         }
  172.  
  173.     }
  174. }

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


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

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

12   голосов , оценка 4 из 5

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

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

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