30/09/2018, 21:36

Liệt kê phần tử xuất hiện đúng 2 lần trong dãy

Làm sao để cái output không bị lặp lại? Mọi người giúp e với.

#include<iostream>

using namespace std;

void solan1(float a[], int n, float a1[], int &m)
{
	int s; 
	m = 0;
	for(int i = 0; i < n; i++)
	{
		s = 0;
		for(int j = 0; j < n; j++)
		{
			if(a[i] == a[j])
			s++;
		}
		if(s == 2)
		{
			a1[m] = a[i];
			m++;
		}
	}
}

int main()
{
	float a[10] = {2, 1, 3, 3, 2, 3, 1, 9, 12, 15}, a1[10];
	int n = 10, m;
	solan1(a, n, a1, m);
	for(int i = 0; i < m; i++)
	cout << a1[i] << " ";
	return 0;
}
Gió viết 23:51 ngày 30/09/2018

Tìm dc số phù hợp thì kết thúc chương trình luôn thôi. Bổ sung exit(0); sau khi in ra là xong

Tuấn Anh Lê viết 23:51 ngày 30/09/2018

bạn nói rõ hơn được ko?

mt viết 23:38 ngày 30/09/2018

Bạn cho biết output của bạn hiện tại là gì và output bạn mong muốn là gì

Tuấn Anh Lê viết 23:37 ngày 30/09/2018

Output là 2 1 2 1. Mình muốn là 2 1

Biên Nhút viết 23:39 ngày 30/09/2018

thêm vào dòng code này nữa b nhé. thêm vào ở chỗ hàm solan1 ấy.
for(int i = 0; i < m - 1;i++) {
for(int j = i+1; j < m; j++) {
if( a2[i ]== a2[j] ) {
int t=a2[j];
for(int k = j; k < m-1; k++)
a2[k]=a2[k+1];
m–;
}
}
}

// bài tập thầy hiến ptit

Bài liên quan
0