![]() |
|
Модераторы: bsa |
![]()
|
|
| drakon803 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 8.12.2007 Репутация: нет Всего: нет |
Помогите с решением задачи.
Даны 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'; } } Сначало формируется массив с из элементов,которые есть и в массиве а и в массиве в.Удаление одинаковых элементов оформляется через булеву переменную.Но как??? все это объяснить компу на С++ - не знаю. |
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 27 Всего: 154 |
Это сообщение отредактировал(а) Lazin - 19.10.2008, 10:29 |
|||
|
||||
| drakon803 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 8.12.2007 Репутация: нет Всего: нет |
а как вывести результат на экран? я через cout и cin пробовал-не выводится.
|
|||
|
||||
| DRUID3 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 463 Регистрация: 20.6.2005 Где: Kyyiv Репутация: нет Всего: 9 |
Вам дали рабочий пример... -------------------- Every time if you use Linux, you are joined to the communism... практика - критерий истины ... отделенной от нас пропастью субъективного восприятия... |
|||
|
||||
| _GRIN_ |
|
||||
![]() одинокий падаван ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 18.11.2007 Где: Калуга Репутация: нет Всего: 7 |
Lazin, твой метод не универсален (но прост и быстр
(т.е. двойку повторить два раза, то он и выведет ёё два раза) , т.е. если копировать в другой массив, то он и скопирует её два раза. а в задании сказано
на скорую руку набросал такой вариант, думаю при желании код можно упростить
*второй массив сделал с двумя двойками для демонстрации Это сообщение отредактировал(а) _GRIN_ - 19.10.2008, 12:04 -------------------- Дорогу осилит идущий |
||||
|
|||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 27 Всего: 154 |
bugfix^^^ |
|||
|
||||
| taiven |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 302 Регистрация: 30.6.2008 Репутация: 2 Всего: 9 |
Что за мода новичков всякикми STL`ами кормить?
Не ручаюсь, что работает |
|||
|
||||
| drakon803 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 8.12.2007 Репутация: нет Всего: нет |
Господа эксперты!
Объясните,как заставить прогу выводить результат пересечения?Я забиваю код,на секунду появляется черный экран(пустой) и исчезает.Как это прописать в проге? |
|||
|
||||
| _GRIN_ |
|
|||
![]() одинокий падаван ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 18.11.2007 Где: Калуга Репутация: нет Всего: 7 |
taiven, согласен, может и не стоит, но так и тянет (нативно) к тому же динамический массив - если использовать через указатель и длину - то имхо ещё более мудрёно для новичка получится, а так и пример вполне читаемый и алгоритм достаточно универсален в плане размера выходного массива (можно конечно и на отдельную темплейт-функцию завести, но удержался но пофиксинный пример Lazin'а и впраду лучше моего - респект Это сообщение отредактировал(а) _GRIN_ - 19.10.2008, 13:11 -------------------- Дорогу осилит идущий |
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 27 Всего: 154 |
программа выводит результат и сразу закрывается, что-бы этого не происходило, можно в ф-ю main добавить system("pause");, а можно запустить прогу из консоли |
|||
|
||||
| taiven |
|
||||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 302 Регистрация: 30.6.2008 Репутация: 2 Всего: 9 |
Кроме
можно еще
|
||||||||
|
|||||||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 27 Всего: 154 |
у тебя без STL-ов сложность O(M*N), а у меня с STL-ами O(M*ln(M) + N*ln(N)) |
|||
|
||||
| _GRIN_ |
|
|||
![]() одинокий падаван ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 18.11.2007 Где: Калуга Репутация: нет Всего: 7 |
drakon803, допиши
getchar(); в конец main() - тогда пока не нажмёшь чё-нить на клаве - не выйдешь -------------------- Дорогу осилит идущий |
|||
|
||||
| drakon803 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 8.12.2007 Репутация: нет Всего: нет |
Я,видимо,очень тупой студент.Но ниодна прога,что здесь выложена,у меня не работает.Или выдает ошибки и не запускается,или не показывает результата.вот.
|
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 27 Всего: 154 |
ты каким компилятором пользуешься?
|
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |