Дан массив. Удалить из него второй положительный элемент - C#

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

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

Здравствуйте, помогите пожалуйста найти ошибку. Задание: Дан массив. Удалить из него второй положительный элемент.
Листинг программы
  1. using System;
  2. namespace Prog1
  3. {
  4. class Program
  5. {
  6. static int[] a = new int[100];
  7. static int n;
  8. static void inp()
  9. {
  10. int i;
  11. Console.WriteLine("Количество элементов массива?");
  12. n = Convert.ToInt32(Console.ReadLine());
  13. Random r = new Random();
  14. for (i = 0; i < n; i++)
  15. a[i] = r.Next(-100, 101);
  16. }
  17. static void outp()
  18. {
  19. int i;
  20. for (i = 0; i < n; i++) Console.Write(" {0} ", a[i]);
  21. Console.WriteLine(); Console.WriteLine();
  22. }
  23. static int Del(ref int n, ref int k, ref int[] a)
  24. {
  25. for (int i = k; i < n-1; i++)
  26. {
  27. a[i] = a[i+1];
  28. }
  29. a[n] = 0;
  30. n = n - 1;
  31. return n;
  32. }
  33. static int soLution(ref int n, ref int[] a)
  34. {
  35. bool L = false;
  36. int i = 1;
  37. while ((i<=n) && (a[i]<=0) )
  38. {
  39. i = i + 1;
  40. }
  41. i = i + 1;
  42. while ((i <= n) && (!L))
  43. {
  44. if (a[i] > 0)
  45. {
  46. L =true;
  47. }
  48. else
  49. {
  50. i = i + 1;
  51. }
  52. }
  53. if (L)
  54. {
  55. Del(ref n, ref i, ref a);
  56. }
  57. else
  58. {
  59. Console.WriteLine(" Элемент не найден");
  60. }
  61. return n;
  62. }
  63. static void Main()
  64. {
  65. inp();
  66. outp();
  67. soLution(ref n, ref a);
  68. outp();
  69. Console.ReadKey();
  70. }
  71. }
  72. }

Решение задачи: «Дан массив. Удалить из него второй положительный элемент»

textual
Листинг программы
  1. using System;
  2.  
  3. namespace Prog1
  4. {
  5.     class Program
  6.     {
  7.         static int[] array = new int[100];
  8.         static int n;
  9.         static bool deleted;
  10.  
  11.         static void Input()
  12.         {
  13.             int i;
  14.             Console.WriteLine("Количество элементов массива?");
  15.             n = Convert.ToInt32(Console.ReadLine());
  16.             Random r = new Random();
  17.             for (i = 0; i < n; i++)
  18.                 array[i] = r.Next(-100, 101);
  19.         }
  20.         static void Output()
  21.         {
  22.             int i;
  23.             for (i = 0; i < n; i++) Console.Write("{0,4}", array[i]);
  24.                 Console.WriteLine(); Console.WriteLine();
  25.         }
  26.         static void Del(int k)
  27.         {
  28.             for (int i = k; i < n - 1; i++)
  29.             {
  30.                 array[i] = array[i + 1];
  31.             }
  32.             array[n] = 0;
  33.             n = n - 1;
  34.             deleted = true;
  35.         }
  36.         static void Solution()
  37.         {
  38.             int j = 0;
  39.             for (int i = 0; i < array.Length; i++)
  40.             {
  41.                 if (array[i] % 2 == 0)
  42.                     j++;
  43.                 if (j == 2)
  44.                 {
  45.                     Del(i);
  46.                     break;
  47.                 }
  48.             }
  49.  
  50.             if (!deleted)
  51.                 Console.WriteLine(" Элемент не найден");
  52.         }
  53.         static void Main()
  54.         {
  55.             deleted = false;
  56.  
  57.             Input();
  58.             Output();
  59.             Solution();
  60.             Output();
  61.             Console.ReadKey();
  62.         }
  63.     }
  64. }

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


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

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

8   голосов , оценка 4.125 из 5

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

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

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