Удаление элементов из массива - C# (181812)

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

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

Дан целочисленный массив размера N. Удалить из массива все одинаковые элементы, оставив их первые вхождения.
    int n,i,j,k;
Console.Write("n=");
n = Convert.ToInt32(Console.ReadLine());
 int [] a = new int[n];
Console.WriteLine("Исходный массив:");
for( i=0; i<n; i++) {
  Console.Write("Элемент",a[i]);
     a[i]= Convert.ToInt32(Console.ReadLine());}
Console.WriteLine();
                        do{j=i+1;
do {
    if (a[j] == a[i])
    {
        for (k = j; k < n - 1; k++) { a[k] = a[k + 1]; n = n - 1; }
    }
    else j = j + 1;
} while (j <= n);
   i = i + 1; 
                        }
while (i<=n);
Console.WriteLine("Массив без повторений");
for (i = 1; i < n; i++) { Console.Write("{0}", a[i]); }
Console.ReadKey();
Суть: Ругается на фрагмент
if (a[j] == a[i])

Решение задачи: «Удаление элементов из массива»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
 
 
            int n, i, j, k, c;
            Console.Write("Кол-во элементов n= ");
            n = Convert.ToInt32(Console.ReadLine());
            int[] a = new int[n];
           
            Console.WriteLine("Исходный массив:");
            for (i = 0; i < n; i++)
            {
                Console.Write("Элемент ", a[i]);
                a[i] = Convert.ToInt32(Console.ReadLine());
            }
            j = 1;
           
            for (i = 1; i < n; i++)// сравнение каждого отдельно взятого элемента по отдельности
            {
 
 
                for (c = 2; c <= n; c = c + i)/*пробегаем по каждому элементу*/ {  if (a[j] == a[i - 1]) {  for (k = j; k < n - 1; k++) { a[k] = a[k + 1]; } n = n - 1; } else j = j + 1; }//формируем новый массив уменьшая последовательно кол-во повторяющихся элементов
                
                j = i+1;
               
 
               
            }
 
 
          
 
 
 
            Console.WriteLine("Массив без повторений");
             for (i = 0; i < n; i++)   { Console.Write("{0}", a[i]); }
            Console.ReadKey();
 
 
 
        }
    }
}

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


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

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

6   голосов , оценка 4.167 из 5
Похожие ответы