Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,903 questions

51,834 answers

573 users

How to delete duplicate elements (set them to zero) from one dimensional int array in C++

1 Answer

0 votes
#include <iostream>
#include <iomanip>
using namespace std;

int main()
{
	int arr[] = { 1, 2, 3, 2, 5, 6, 6, 2 };
	int i, j, k, size;

	size = sizeof(arr) / sizeof(int);

	for (i = 0; i < size; i++)
	{
		for (j = i + 1; j < size;)
		{
			if (arr[j] == arr[i])
			{
				for (k = j; k < size - 1; k++)
				{
					arr[k] = arr[k + 1];
				}
				size--;
				arr[k] = 0;
			}
			else
				j++;
		}
	}

	cout << "Array without duplicate elements:\n";
	for (i = 0; i < size; i++)
		cout << arr[i] << setw(3);

		cout << endl;

	printf("Array with zero set elements instead the duplicate elements:\n");
	size = sizeof(arr) / sizeof(int);
	for (i = 0; i < size; i++)
		cout << arr[i] << setw(3);
	
	return 0;
}

/*
run: 

Array without duplicate elements:
1  2  3  5  6
Array with zero set elements instead the duplicate elements:
1  2  3  5  6  0  0  0

*/

 



answered Feb 11, 2016 by avibootz
...