Skip to content

Commit 4880573

Browse files
authored
Update 04.c
1 parent 5dc94fb commit 4880573

File tree

1 file changed

+22
-28
lines changed

1 file changed

+22
-28
lines changed

lista2/04.c

Lines changed: 22 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,35 @@
11
#include <stdio.h>
22

3-
int removeDuplicates(int arr[], int Size);
3+
#define size 10
44

55
int main() {
6-
int arr[10], i, Size = 10;
6+
int sequencia[size];
7+
int diferentes[size] = {0};
8+
int i, j, contDiferentes = 0;
79

8-
printf("Digite 10 números inteiros: ");
9-
for (i = 0; i < Size; i++) {
10-
while (scanf("%d", &arr[i]) != 1) {
11-
printf("Entrada inválida. Digite um número inteiro: ");
12-
while (getchar() != '\n');
13-
}
10+
printf("Digite a sequencia de numeros (10 numeros separados por espaco):\n");
11+
for(i = 0; i < size; i++) {
12+
scanf("%d", &sequencia[i]);
1413
}
1514

16-
Size = removeDuplicates(arr, Size);
15+
for(i = 0; i < size; i++) {
16+
int repetido = 0;
17+
for(j = i + 1; j < size; j++) {
18+
if(sequencia[i] == sequencia[j]) {
19+
repetido = 1;
20+
break;
21+
}
22+
}
23+
if(!repetido) {
24+
diferentes[contDiferentes++] = sequencia[i];
25+
}
26+
}
1727

18-
printf("Os números únicos são: ");
19-
for (i = 0; i < Size; i++) {
20-
printf("%d ", arr[i]);
28+
printf("Numeros diferentes: ");
29+
for(i = 0; i < contDiferentes; i++) {
30+
printf("%d ", diferentes[i]);
2131
}
2232
printf("\n");
2333

2434
return 0;
2535
}
26-
27-
int removeDuplicates(int arr[], int Size) {
28-
int i, j, k;
29-
for (i = 0; i < Size; i++) {
30-
for (j = i + 1; j < Size; j++) {
31-
if (arr[i] == arr[j]) {
32-
for (k = j; k < Size; k++) {
33-
arr[k] = arr[k + 1];
34-
}
35-
Size--;
36-
j--;
37-
}
38-
}
39-
}
40-
return Size;
41-
}

0 commit comments

Comments
 (0)