Как сравнить число в массиве введенное с клавиатуры? - C#

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

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

Выполнил задание, но очень коряво
Листинг программы
  1. {
  2. class Program
  3. {
  4. int[] a = new int[10];
  5. public void genRand()
  6. {
  7. Random r = new Random();
  8. for (int i = 0; i < a.Length; i++)
  9. {
  10. a[i] = r.Next(0, 100);
  11. Console.Write(a[i] + " ");
  12. }
  13. }
  14. public void Bubble()
  15. {
  16. for (int i = 0; i < a.Length; i++)
  17. {
  18. for (int j = i + 1; j < a.Length; j++)
  19. {
  20. if (a[i] > a[j])
  21. {
  22. int rez = a[i];
  23. a[i] = a[j];
  24. a[j] = rez;
  25. }
  26. }
  27. Console.Write(a[i] + " ");
  28. }
  29. Console.WriteLine();
  30. }
  31. public void search()
  32. {
  33. {
  34. string firstString = Console.ReadLine();
  35. int firstArg = Convert.ToInt32(firstString);
  36. for (int mass = 0; mass < a.Length; mass++)
  37. {
  38. if (mass > firstArg)
  39. {
  40. mass = firstArg;
  41. }
  42. else
  43. {
  44. Console.WriteLine("Такого числа нет");
  45. }
  46. }
  47. {
  48. Console.WriteLine("Число '" + firstArg + "' содержится в массиве");
  49. }
  50. }
  51. }
  52. static void Main(string[] args)
  53. {
  54. Program sort = new Program();
  55. sort.genRand();
  56. Console.WriteLine();
  57. Console.ReadKey();
  58. sort.Bubble();
  59. Console.WriteLine("Введите число и нажмите клавишу Enter: ");
  60. sort.search();
  61. Console.ReadKey();
  62. }
  63. }
  64. }
При проверке цикл обходит массив, и выдает ответ сравнения с каждым элементом в массиве, а если такого числа нет, то программа не закрывает себя. Хочу привести к вменяемому виду, чтобы если число содержится в массиве, выдавалось сообщение 1 раз и не больше, что такое число есть, либо если его нету, то так же 1 раз сказала что такого числа нет. Думаю можно попробовать через bool, но компилятор говорит об ошибке, тип данных int32 не возможно преобразовать в bool. Сам только учусь писать на C#, может кто помочь с решением проблемы?

Решение задачи: «Как сравнить число в массиве введенное с клавиатуры?»

textual
Листинг программы
  1. bool math = false;
  2.  
  3.             int number = Int32.Parse(Console.ReadLine());
  4.  
  5.             int[] myLovelyArray = new int[10];
  6.             Random r = new Random();
  7.             for (int i = 0; i < myLovelyArray.Length; ++i)
  8.                 myLovelyArray[i] = r.Next(0, 100);
  9.  
  10.             foreach (int a in myLovelyArray)
  11.             {
  12.                 if (a == number) math = true;
  13.             }
  14.  
  15.             if (math) Console.WriteLine("Число {0} есть в массиве", number);
  16.             else Console.WriteLine("Числа {0} нет в массиве", number);
  17.  
  18.             Console.WriteLine(String.Join(" ", myLovelyArray));

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


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

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

10   голосов , оценка 3.7 из 5

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

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

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