Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> прошу помощи по сортировке целочисленных массивовм :dash1 
:(
    Опции темы
drakon803
Дата 16.10.2008, 00:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 8.12.2007

Репутация: нет
Всего: нет



Помогите с решением задачи. smile  smile  smile И так уже 3 недели.
Даны 2 целочисленных массива.Первый 1,2,2,3,4,5,5 и второй 0,2,3,5.Найти элементы,входящие как в первый ,так и во второй массив,но без повторов и вывести их на экран в виде третьего массива.
вот текст проги,но кроме 2,она никакой элемент больше не выводит.
int a[7]={1,2,2,3,4,5,5};
int b[4]={0,2,3,5};
int c;
for (int j=0;j<7;j=j+1)
{
for (int i=0;i<4;i=i+1)
if (a[j]==b[i])
{
c[x]=a[j];
cout << c[x++]<< '\n';
}
}
Удаление одинаковых элементов оформляется через булеву переменную,но как???-не знаю.
PM MAIL   Вверх
eyeofhell
Дата 16.10.2008, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Адепт
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 16.10.2008
Где: Россия, Москва

Репутация: 1
Всего: 1



Цитата

вот текст проги,но кроме 2,она никакой элемент больше не выводит.


Она и не может, код не компилируется:

Код

int c;
c[x]=a[j];


Вообще можно число использовать как адрес, но это совсем-совсем вырожденный случай и работает он совсем-совсем не как ожидается smile. рекомендуется все же написать:

Код

int a[7]={1,2,2,3,4,5,5};
int b[4]={0,2,3,5};
char c[ 1024 ];
int x = 0;
for (int j=0;j<7;j=j+1)
{
for (int i=0;i<4;i=i+1)
if (a[j]==b[i])
{
c[x]=a[j];
cout << c[x++]<< '\n';
}
}


Без повторов:

вместо

Код

c[x]=a[j];
cout << c[x++]<< '\n';


нужно

Код

int nCurResultIdx = 0;
for( ; nCurResultIdx < x; nCurResultIdx ++ )
{
  if( c[ nCurResultIdx ] == a[ j ] )
  {
    break;
  }
}
if( nCurResultIdx >= x )
{
  c[x]=a[j];
  cout << c[x++]<< '\n';
}

PM MAIL ICQ   Вверх
drakon803
Дата 16.10.2008, 22:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 8.12.2007

Репутация: нет
Всего: нет



Спасибо тебе большое за помощь!!!хоть и учусь на программиста,а писать проги так и не научился.никто толком не учит как и что делать надо.у меня к тебе есть еще одна прозьба-посоветуй ,что можно почитать по азам программирования?чтобы было объяснено как строить алгоритм рещения задач.
PM MAIL   Вверх
eyeofhell
Дата 16.10.2008, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Адепт
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 16.10.2008
Где: Россия, Москва

Репутация: 1
Всего: 1



Цитата

чтобы было объяснено как строить алгоритм рещения задач


Этому нельзя научить. Умени приходит само после просмотра 100-1000 уже существующих алгоритмов.

Почитать хорошего сейчас нет в природе. Те кто могут написать действительно хорошую книжку по программированию на С++ - настолько ценные специалисты, что им никто не даст времени книжку написать :(.
PM MAIL ICQ   Вверх
drakon803
Дата 16.10.2008, 23:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 8.12.2007

Репутация: нет
Всего: нет



 smile эх,очень жаль...но все равно СПАСИБО ТЕБЕ!!!
PM MAIL   Вверх
bsa
Дата 17.10.2008, 09:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Цитата(drakon803 @ 16.10.2008,  22:28)
хоть и учусь на программиста,а писать проги так и не научился.никто толком не учит как и что делать надо.у меня к тебе есть еще одна прозьба-посоветуй ,что можно почитать по азам программирования?чтобы было объяснено как строить алгоритм рещения задач.

Хочешь научиться? Тогда идешь в центр помощи и помогаешь людям. Через некоторое время алгоритмы сами начнут рождаться в голове при виде задачи. Затем тебе нужно будет почитать книжки для профессионалов (Мейерс, Александреску и подобные) и начать изучение всяких "профессиональных" приблуд и приемов (шаблоны, STL, boost, например), которые сильно сэкономят твое время при реализации алгоритмов...

Ну и не надо забывать: век живи - век учись. Только тот может быть настоящим программистом, кто не только не боится учиться новому, но и постоянно ищет это новое. Да и опыт показывает, что те "программисты", которые имеют соответствующий диплом (например ВМК МГУ), не являются программистами в принципе, а являются те, у кого диплом не имеет никакого отношения к ИТ (возможно, есть исключения, но я не встречал). Другими словами, программистов нельзя выучить, им можно стать только самостоятельно.
PM   Вверх
drakon803
Дата 17.10.2008, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 8.12.2007

Репутация: нет
Всего: нет



Спасибо за дельный совет!!!На это уйдет время.Пока во всем разберёшься.Вот только преподу не объяснишь,чтобы он подождал,пока я поднатарею в прогах.Он хочет ,чтобы мы проги во всю писали.А у нас вся группа ни бум-бум.Сначало Паскаль изучали,теперь С++,потом опять паскаль будет.А толком объяснить,как ,откуда и что брать и начинать -никто не объясняет.Типа,вы должны уметь.Вот такие издержки обучения вна вечернем отделении универа.
PM MAIL   Вверх
_GRIN_
Дата 19.10.2008, 22:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


одинокий падаван
**


Профиль
Группа: Участник
Сообщений: 272
Регистрация: 18.11.2007
Где: Калуга

Репутация: нет
Всего: 7



drakon803, bsa всё очень правильно расписал.
я тоже курса до третьего ждал что меня в универе кодить научат, пока сам изучать не начал.
дело в том, что в вузе (по крайней мере моём) нет толковых кодеров, т.е. они (преподы) вообще никакие - у них нет практических навыков - почитали книжки, подготовили лекции и гоняют студентов по ним... А самим развиваться им лень (они уже в возрасте) видимо считаю - нафиг и так всё есть.
Я сначала думал это у меня в вузе трабла, но друг (кстати имхо реально гениальный кодер) закончил бауманский, и сказал, что ситуация там такая же.
Хотя я слышал про приятные исключения, но они к сожалению только подчёркивают общее правило.

Вообще практика, практика, практика и помощь другим ;)

Это сообщение отредактировал(а) _GRIN_ - 19.10.2008, 22:34


--------------------
Дорогу осилит идущий
PM MAIL Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0609 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.