Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.12.2014, 00:24   #1
sergeymalcow
Пользователь
 
Регистрация: 01.12.2014
Сообщений: 13
По умолчанию дан целочисленный массив размера n . Удалить из массива все соседние одинаковые элементы

дан целочисленный массив размера n . Удалить из массива все соседние одинаковые элементы , оставив их прежние вхождения.
sergeymalcow вне форума Ответить с цитированием
Старый 01.12.2014, 00:34   #2
Вадим Мошев

Старожил
 
Аватар для Вадим Мошев
 
Регистрация: 12.11.2010
Сообщений: 8,568
По умолчанию

Что значит "соседние одинаковые"? А если одинаковые встречаются через несколько других элементов, например, 1 2 3 4 1 1 1 7 8 1 1?
____________
А вообще, что не получается, в чём проблемы?
Вадим Мошев вне форума Ответить с цитированием
Старый 01.12.2014, 00:39   #3
sergeymalcow
Пользователь
 
Регистрация: 01.12.2014
Сообщений: 13
По умолчанию

соседние одинаковые -это серии - подряд идущие одинаковые элементы элементы
sergeymalcow вне форума Ответить с цитированием
Старый 01.12.2014, 00:49   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
соседние одинаковые -это серии - подряд идущие одинаковые элементы элементы
угу. но тогда непонятно, что нужно оставить, что это за "прежние вхождения." ?

например, дан массив:
1 2 1 1 1 2 2 1

что должно остаться после обработки (выполнения задания)?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 01.12.2014, 01:02   #5
sergeymalcow
Пользователь
 
Регистрация: 01.12.2014
Сообщений: 13
По умолчанию

не знаю .наверное не удаляя их .По моему.
sergeymalcow вне форума Ответить с цитированием
Старый 01.12.2014, 08:19   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от sergeymalcow Посмотреть сообщение
не знаю .наверное не удаляя их .По моему.
не удаляя что?!! Ничего не удаляя?
Т.е. если на вход программы подать массив, заполненный так:
1 2 1 1 1 2 2 1

то и на выходе программы должен быть массив,
заполненный точно так же (1 2 1 1 1 2 2 1) ?!!

Вы явно заблуждаетесь.
Но, пока Вы не разберётесь (хоть самостоятельно, хоть с преподавателем) что именно Вам нужно сделать.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 01.12.2014, 08:31   #7
sergeymalcow
Пользователь
 
Регистрация: 01.12.2014
Сообщений: 13
По умолчанию

Я тут написал программу но она не правильно работает
Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication346
{
    class Program
    {
        static void Main(string[] args)
        {
            int N = 0;
            Console.WriteLine("Введите значение переменной N");
            N = Convert.ToInt32(Console.ReadLine());
            double [] a = new double[N];
            for (int i = 0; i < N; ++i)
            {
                a[i] = int.Parse(Console.ReadLine());
            }

            for (int i = 0; i < N; i++)
            {
                for (int j = 0; j < N;j++ )
                {
                    if (a[i] == a[j] && i != j) { a[i] = Double.PositiveInfinity; a[j] = Double.PositiveInfinity; }
                    if (a[i] != a[j] && i != j) {  }
                }
            }
            int x = 0;
            for (int i = 0; i < N; i++)
            {
                if (a[i] != Double.PositiveInfinity)
                {
                    x++;
                }
            }
            double[] b = new double[x];
            Console.WriteLine("Length of array without extra elements: " + x);
            int z = 0;
            for (int i = 0; i < a.Length; i++)
            {
                if (a[i] != Double.PositiveInfinity) { b[z] = a[i]; z++; }
            }
            Console.WriteLine("Output array: ");
            for (int i = 0; i < b.Length; i++)
            {
                Console.WriteLine(b[i]);
            }
        }
    }
}



___________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(кнопочка на панели форматирования с решёточкой #)
Не забывайте об этом!

Модератор.


Я так думаю что там нужно удалить серии с одинаковыми элементами.

Последний раз редактировалось Stilet; 01.12.2014 в 11:40.
sergeymalcow вне форума Ответить с цитированием
Старый 01.12.2014, 08:52   #8
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Удалить из массива все соседние одинаковые элементы , оставив их прежние вхождения
Все таки так наверно
1 2 1 1 1 2 2 1
1 2 1 2 1
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 01.12.2014, 09:07   #9
sergeymalcow
Пользователь
 
Регистрация: 01.12.2014
Сообщений: 13
По умолчанию

Я так думаю что например дан массив 00011101
а вывод должен быть 01 а то что подчёркнутым удаляется
sergeymalcow вне форума Ответить с цитированием
Старый 01.12.2014, 09:12   #10
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
оставив их прежние вхождения
Что значит эта фраза?
Выяснить у препода тайный смысл невмоготу?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
в Delphi решить задачу: Дан одномерный массив Zn. Удалить все элементы массива с четными индексами. Алексей 21 Помощь студентам 2 10.11.2014 21:50
Дан массив размера N, все элементы которого, кроме последнего, упорядочены по возрастанию. Сделать массив упорядоченным. nadyaH Помощь студентам 31 26.03.2014 11:15
Дан числовой массив А, состоящий из n целых чисел . Если все элементы массива являютя чётными, то увеличьте положительные элементы Pantiks Паскаль, Turbo Pascal, PascalABC.NET 1 24.10.2013 16:59
Дан массив из n элементов. Удалить из массива все элементы, встречающиеся ровно два раза Koroleva_E Помощь студентам 0 02.05.2013 13:50
дан целочисленный массив N. Удалить из массива все элементы,встречающиеся [менее двух раз]1 Zevsnet Паскаль, Turbo Pascal, PascalABC.NET 6 16.01.2011 18:01