Está en la página 1de 5

NUMEROS DUPLICADOS

Ing. José Luis Morales García

Martín Anastacio Cruz


5/7/2018
Diagrama UML
ArregloD
- arreglo[]:int
- nElementos:int
* list[]:int
+ Constructor
+ insertar(valor:int):void
+ imprimirArrreglo():void
* numero(num:int):boolean
+ numDuplicados():void

Código
ArregloD.java
public class ArregloD {
private int[] arreglo;
private int nElementos;
static int[] list;

public ArregloD() {
arreglo = new int[12];
nElementos = 0;
}

public void insertar(int valor) {


arreglo[nElementos] = valor;
nElementos++;//Incrementa el indice
}

public void imprimirArreglo() {


System.out.printf("%s%8s\n", "Indice", "Valor");
int i = 0;
for (int aux : arreglo) {
System.out.printf("%5d%8d\n", i, aux);
i++;
}
}//fin de imprimir arreglo

static boolean numero(int num) {


for (int i = 0; i < list.length; i++) {
if (list[i] == num) {
return false;
}
}
return true;
}

public void numDuplicados() {


list = new int[arreglo.length];

for (int i = 0; i < arreglo.length; i++) {


int count = 0;
for (int j = 0; j < arreglo.length; j++) {
if (arreglo[i] == arreglo[j]) {
count++;
if (numero(arreglo[i])) {
list[i] = arreglo[i];
}
}
}
if (list[i] != 0) {
System.out.println(list[i] + " se repite: " + count);
}
}
}
}

PruebaArregloD.java

public static void main(String[] args) {


ArregloD ad = new ArregloD();
//3, 4, 6, 8, 9, 2, 3, 5, 7, 8, 1, 0
ad.insertar(3);
ad.insertar(4);
ad.insertar(6);
ad.insertar(8);
ad.insertar(9);
ad.insertar(2);
ad.insertar(3);
ad.insertar(5);
ad.insertar(7);
ad.insertar(8);
ad.insertar(1);
ad.insertar(0);
ad.imprimirArreglo();
ad.numDuplicados();
}
Pantalla de salida

También podría gustarte