Дан массив. Удалить из него второй положительный элемент - C#
Формулировка задачи:
Здравствуйте, помогите пожалуйста найти ошибку. Задание: Дан массив. Удалить из него второй положительный элемент.
using System; namespace Prog1 { class Program { static int[] a = new int[100]; static int n; static void inp() { int i; Console.WriteLine("Количество элементов массива?"); n = Convert.ToInt32(Console.ReadLine()); Random r = new Random(); for (i = 0; i < n; i++) a[i] = r.Next(-100, 101); } static void outp() { int i; for (i = 0; i < n; i++) Console.Write(" {0} ", a[i]); Console.WriteLine(); Console.WriteLine(); } static int Del(ref int n, ref int k, ref int[] a) { for (int i = k; i < n-1; i++) { a[i] = a[i+1]; } a[n] = 0; n = n - 1; return n; } static int soLution(ref int n, ref int[] a) { bool L = false; int i = 1; while ((i<=n) && (a[i]<=0) ) { i = i + 1; } i = i + 1; while ((i <= n) && (!L)) { if (a[i] > 0) { L =true; } else { i = i + 1; } } if (L) { Del(ref n, ref i, ref a); } else { Console.WriteLine(" Элемент не найден"); } return n; } static void Main() { inp(); outp(); soLution(ref n, ref a); outp(); Console.ReadKey(); } } }
Решение задачи: «Дан массив. Удалить из него второй положительный элемент»
textual
Листинг программы
using System; namespace Prog1 { class Program { static int[] array = new int[100]; static int n; static bool deleted; static void Input() { int i; Console.WriteLine("Количество элементов массива?"); n = Convert.ToInt32(Console.ReadLine()); Random r = new Random(); for (i = 0; i < n; i++) array[i] = r.Next(-100, 101); } static void Output() { int i; for (i = 0; i < n; i++) Console.Write("{0,4}", array[i]); Console.WriteLine(); Console.WriteLine(); } static void Del(int k) { for (int i = k; i < n - 1; i++) { array[i] = array[i + 1]; } array[n] = 0; n = n - 1; deleted = true; } static void Solution() { int j = 0; for (int i = 0; i < array.Length; i++) { if (array[i] % 2 == 0) j++; if (j == 2) { Del(i); break; } } if (!deleted) Console.WriteLine(" Элемент не найден"); } static void Main() { deleted = false; Input(); Output(); Solution(); Output(); Console.ReadKey(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д