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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.02.2009, 21:43   #1
leshax
 
Регистрация: 17.01.2009
Сообщений: 6
По умолчанию Перенести общие елементы двух массивов в другой.

Вот есть код:
Код:
#include <iostream>
#include <math.h>
#include <time.h>
using namespace std;



void main()
{
	srand(time(0));
	int a;
	int b;

	cin>>a;
	cin>>b;
cout<<endl;
int size=a;
int size2=b;
int *arr=new int [size];
int *arr2=new int [size2];
int size3=size+size2;
int *arr3=new int [size3];



int c=0;


for(int i=0; i<size; i++)
{
	arr[i]=rand()%10;
	cout<<arr[i]<<endl;
	
	
}
cout<<endl;
for(int i=0; i<size2; i++)
{
	arr2[i]=rand()%10;
	cout<<arr2[i]<<endl;
}

for(int i=0; i<size; i++)
{
	for(int j=0; j<size2; j++)
	{
		if(arr[i]==arr2[j])
		{
			
				arr3[c]=arr[i];
				c++;
			}
		
	}
}
cout<<endl;

for(int i=0; i<c; i++)
{
cout<<arr3[i]<<endl;
}
}
Как сделать чтобы в третий массив не вводились одни и те же елменты когда он сверяет на идентичность?
leshax вне форума Ответить с цитированием
Старый 04.02.2009, 20:57   #2
AlexDX
Пользователь
 
Регистрация: 04.02.2009
Сообщений: 10
По умолчанию

Вот тебе, посмотри может быть так:

Код:
int a;
			int b;


			cin>>a;
			cin>>b;
		cout<<endl;
		int size=a;
		int size2=b;
		int *arr=new int [size];
		int *arr2=new int [size2];
		int size3=size+size2;
		int *arr3=new int [size3];



		int c=0;


		for(int i=0; i<size; i++)
		{
			arr[i]=rand()%10;
			cout<<arr[i]<<endl;
			
			
		}
		cout<<endl;
		for(i=0; i<size2; i++)
		{
			arr2[i]=rand()%10;
			cout<<arr2[i]<<endl;
		}

		for(i=0; i<size; i++)
		{
			for(int j=0; j<size2; j++)
			{
				if(arr[i]==arr2[j])
				{
// начало моего кода ----------------------------------------------------
						bool  check = false;	
						for(int f = 0;f < c; f++) {
							if(arr3[f] == arr[i]) {
									check = true;
									break;
							}
						}
						if(! check) {
							arr3[c]=arr[i];
							c++;
						}
// конец моего кода
					}
				
			}
		}
		cout<<endl;

		for( i=0; i<c; i++)
		{
		cout<<arr3[i]<<endl;
		}
Модератор: тег CODE

Последний раз редактировалось MaTBeu; 04.02.2009 в 21:23.
AlexDX вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить из двух заданных массивов третий? + см. тему. (Delphi) Kawun Помощь студентам 11 16.11.2008 16:49
из двух заданных массивов В и С одинаковой длины построить новый массив Absent Помощь студентам 4 11.03.2008 21:38
Выбрать из двух массивов совпадение. *Иван* Microsoft Office Excel 7 22.11.2007 21:10
Администрирование\управление компьютером\Общие папки\Общие ресурсы\прекратить общий доступ lm_strj Безопасность, Шифрование 2 13.10.2007 21:28
как из двух отсортированных по возрастанию одномерных массивов сформировать третий Тоха Рыжов Общие вопросы C/C++ 1 07.10.2007 01:43